diff --git a/cookbook/helper/recipe_search.py b/cookbook/helper/recipe_search.py index 09daad1bc..aa27c54c8 100644 --- a/cookbook/helper/recipe_search.py +++ b/cookbook/helper/recipe_search.py @@ -74,10 +74,13 @@ class RecipeSearch(): } self._steps = self._params.get('steps', None) self._units = self._params.get('units', None) - # TODO image exists - self._sort_order = self._params.get('sort_order', None) self._internal = str2bool(self._params.get('internal', None)) - self._random = str2bool(self._params.get('random', False)) + self._sort_order = self._params.get('sort_order', None) + if self._sort_order == 'random': + self._random = True + self.sort_order = None + else: + self._random = str2bool(self._params.get('random', False)) self._new = str2bool(self._params.get('new', False)) self._num_recent = int(self._params.get('num_recent', 0)) self._include_children = str2bool( diff --git a/cookbook/static/pdfjs/LICENSE b/cookbook/static/pdfjs/LICENSE new file mode 100644 index 000000000..f433b1a53 --- /dev/null +++ b/cookbook/static/pdfjs/LICENSE @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS diff --git a/cookbook/static/pdfjs/images/findbarButton-next.png b/cookbook/static/pdfjs/images/findbarButton-next.png deleted file mode 100644 index de1d0fc90..000000000 Binary files a/cookbook/static/pdfjs/images/findbarButton-next.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/findbarButton-next@2x.png b/cookbook/static/pdfjs/images/findbarButton-next@2x.png deleted file mode 100644 index 0250307c0..000000000 Binary files a/cookbook/static/pdfjs/images/findbarButton-next@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/findbarButton-previous.png b/cookbook/static/pdfjs/images/findbarButton-previous.png deleted file mode 100644 index bef02743f..000000000 Binary files a/cookbook/static/pdfjs/images/findbarButton-previous.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/findbarButton-previous@2x.png b/cookbook/static/pdfjs/images/findbarButton-previous@2x.png deleted file mode 100644 index 1da6dc949..000000000 Binary files a/cookbook/static/pdfjs/images/findbarButton-previous@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/grab.cur b/cookbook/static/pdfjs/images/grab.cur deleted file mode 100644 index db7ad5aed..000000000 Binary files a/cookbook/static/pdfjs/images/grab.cur and /dev/null differ diff --git a/cookbook/static/pdfjs/images/grabbing.cur b/cookbook/static/pdfjs/images/grabbing.cur deleted file mode 100644 index e0dfd04e4..000000000 Binary files a/cookbook/static/pdfjs/images/grabbing.cur and /dev/null differ diff --git a/cookbook/static/pdfjs/images/loading-small.png b/cookbook/static/pdfjs/images/loading-small.png deleted file mode 100644 index 8831a8058..000000000 Binary files a/cookbook/static/pdfjs/images/loading-small.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/loading-small@2x.png b/cookbook/static/pdfjs/images/loading-small@2x.png deleted file mode 100644 index b25b4452a..000000000 Binary files a/cookbook/static/pdfjs/images/loading-small@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties.png deleted file mode 100644 index 40925e25a..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties@2x.png deleted file mode 100644 index adb240eaa..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-documentProperties@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage.png deleted file mode 100644 index e68846aa5..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage@2x.png deleted file mode 100644 index 3ad8af517..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-firstPage@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool.png deleted file mode 100644 index cb85a841b..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool@2x.png deleted file mode 100644 index 5c13f77ff..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-handTool@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage.png deleted file mode 100644 index be763e0c4..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage@2x.png deleted file mode 100644 index 8570984f2..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-lastPage@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw.png deleted file mode 100644 index 675d6da2c..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw@2x.png deleted file mode 100644 index b9e743122..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCcw@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw.png deleted file mode 100644 index e1c759888..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw@2x.png deleted file mode 100644 index cb257b41c..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-rotateCw@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal.png deleted file mode 100644 index cb702fc4d..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal@2x.png deleted file mode 100644 index 7f05289bb..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollHorizontal@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical.png deleted file mode 100644 index 0b8427a16..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical@2x.png deleted file mode 100644 index 72ab55ebf..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollVertical@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped.png deleted file mode 100644 index 165fc8bc0..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped@2x.png deleted file mode 100644 index 424614119..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-scrollWrapped@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool.png deleted file mode 100644 index 25520a6fe..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool@2x.png deleted file mode 100644 index a58aaef4f..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-selectTool@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven.png deleted file mode 100644 index 3fa07e703..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven@2x.png deleted file mode 100644 index 32e5033d7..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadEven@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone.png deleted file mode 100644 index 161147354..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone@2x.png deleted file mode 100644 index 8e51cf3b7..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadNone@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd.png deleted file mode 100644 index 5126313a1..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd@2x.png b/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd@2x.png deleted file mode 100644 index 5996b74db..000000000 Binary files a/cookbook/static/pdfjs/images/secondaryToolbarButton-spreadOdd@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/shadow.png b/cookbook/static/pdfjs/images/shadow.png deleted file mode 100644 index 31d3bdb14..000000000 Binary files a/cookbook/static/pdfjs/images/shadow.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/texture.png b/cookbook/static/pdfjs/images/texture.png deleted file mode 100644 index 12bae83a9..000000000 Binary files a/cookbook/static/pdfjs/images/texture.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-bookmark.png b/cookbook/static/pdfjs/images/toolbarButton-bookmark.png deleted file mode 100644 index a187be6c9..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-bookmark.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-bookmark@2x.png b/cookbook/static/pdfjs/images/toolbarButton-bookmark@2x.png deleted file mode 100644 index 4efbaa675..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-bookmark@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-download.png b/cookbook/static/pdfjs/images/toolbarButton-download.png deleted file mode 100644 index eaab35f09..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-download.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-download@2x.png b/cookbook/static/pdfjs/images/toolbarButton-download@2x.png deleted file mode 100644 index 896face45..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-download@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-menuArrows.png b/cookbook/static/pdfjs/images/toolbarButton-menuArrows.png deleted file mode 100644 index e50ca4eee..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-menuArrows.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-menuArrows@2x.png b/cookbook/static/pdfjs/images/toolbarButton-menuArrows@2x.png deleted file mode 100644 index f7570bc0d..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-menuArrows@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-openFile.png b/cookbook/static/pdfjs/images/toolbarButton-openFile.png deleted file mode 100644 index b5cf1bd06..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-openFile.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-openFile@2x.png b/cookbook/static/pdfjs/images/toolbarButton-openFile@2x.png deleted file mode 100644 index 91ab76593..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-openFile@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-pageDown.png b/cookbook/static/pdfjs/images/toolbarButton-pageDown.png deleted file mode 100644 index 8219ecf83..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-pageDown.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-pageDown@2x.png b/cookbook/static/pdfjs/images/toolbarButton-pageDown@2x.png deleted file mode 100644 index 758c01d83..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-pageDown@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-pageUp.png b/cookbook/static/pdfjs/images/toolbarButton-pageUp.png deleted file mode 100644 index fb9daa337..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-pageUp.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-pageUp@2x.png b/cookbook/static/pdfjs/images/toolbarButton-pageUp@2x.png deleted file mode 100644 index a5cfd755b..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-pageUp@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-presentationMode.png b/cookbook/static/pdfjs/images/toolbarButton-presentationMode.png deleted file mode 100644 index 3ac21244d..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-presentationMode.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-presentationMode@2x.png b/cookbook/static/pdfjs/images/toolbarButton-presentationMode@2x.png deleted file mode 100644 index cada9e791..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-presentationMode@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-print.png b/cookbook/static/pdfjs/images/toolbarButton-print.png deleted file mode 100644 index 51275e54b..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-print.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-print@2x.png b/cookbook/static/pdfjs/images/toolbarButton-print@2x.png deleted file mode 100644 index 53d18daf7..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-print@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-search.png b/cookbook/static/pdfjs/images/toolbarButton-search.png deleted file mode 100644 index f9b75579b..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-search.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-search@2x.png b/cookbook/static/pdfjs/images/toolbarButton-search@2x.png deleted file mode 100644 index 456b13324..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-search@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle.png b/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle.png deleted file mode 100644 index 1f90f83da..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle@2x.png b/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle@2x.png deleted file mode 100644 index b066fe5cb..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-secondaryToolbarToggle@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle.png b/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle.png deleted file mode 100644 index 025dc9040..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle@2x.png b/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle@2x.png deleted file mode 100644 index 7f834df94..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-sidebarToggle@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewAttachments.png b/cookbook/static/pdfjs/images/toolbarButton-viewAttachments.png deleted file mode 100644 index fcd0b268a..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewAttachments.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewAttachments@2x.png b/cookbook/static/pdfjs/images/toolbarButton-viewAttachments@2x.png deleted file mode 100644 index 4a5e2b8a3..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewAttachments@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewOutline.png b/cookbook/static/pdfjs/images/toolbarButton-viewOutline.png deleted file mode 100644 index 976365a50..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewOutline.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewOutline@2x.png b/cookbook/static/pdfjs/images/toolbarButton-viewOutline@2x.png deleted file mode 100644 index b6a197fdf..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewOutline@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail.png b/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail.png deleted file mode 100644 index 584ba5588..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail@2x.png b/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail@2x.png deleted file mode 100644 index a0208b413..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-viewThumbnail@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-zoomIn.png b/cookbook/static/pdfjs/images/toolbarButton-zoomIn.png deleted file mode 100644 index 513d081bc..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-zoomIn.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-zoomIn@2x.png b/cookbook/static/pdfjs/images/toolbarButton-zoomIn@2x.png deleted file mode 100644 index d5d49d5ff..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-zoomIn@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-zoomOut.png b/cookbook/static/pdfjs/images/toolbarButton-zoomOut.png deleted file mode 100644 index 156c26b94..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-zoomOut.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/toolbarButton-zoomOut@2x.png b/cookbook/static/pdfjs/images/toolbarButton-zoomOut@2x.png deleted file mode 100644 index 959e1919d..000000000 Binary files a/cookbook/static/pdfjs/images/toolbarButton-zoomOut@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/treeitem-collapsed.png b/cookbook/static/pdfjs/images/treeitem-collapsed.png deleted file mode 100644 index 06d4d3769..000000000 Binary files a/cookbook/static/pdfjs/images/treeitem-collapsed.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/treeitem-collapsed@2x.png b/cookbook/static/pdfjs/images/treeitem-collapsed@2x.png deleted file mode 100644 index eec1e58c1..000000000 Binary files a/cookbook/static/pdfjs/images/treeitem-collapsed@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/treeitem-expanded.png b/cookbook/static/pdfjs/images/treeitem-expanded.png deleted file mode 100644 index c8d557351..000000000 Binary files a/cookbook/static/pdfjs/images/treeitem-expanded.png and /dev/null differ diff --git a/cookbook/static/pdfjs/images/treeitem-expanded@2x.png b/cookbook/static/pdfjs/images/treeitem-expanded@2x.png deleted file mode 100644 index 3b3b6103b..000000000 Binary files a/cookbook/static/pdfjs/images/treeitem-expanded@2x.png and /dev/null differ diff --git a/cookbook/static/pdfjs/locale/ach/viewer.properties b/cookbook/static/pdfjs/locale/ach/viewer.properties deleted file mode 100644 index 57c6a9121..000000000 --- a/cookbook/static/pdfjs/locale/ach/viewer.properties +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pot buk mukato -previous_label=Mukato -next.title=Pot buk malubo -next_label=Malubo - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pot buk -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=pi {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} me {{pagesCount}}) - -zoom_out.title=Jwik Matidi -zoom_out_label=Jwik Matidi -zoom_in.title=Kwot Madit -zoom_in_label=Kwot Madit -zoom.title=Kwoti -presentation_mode.title=Lokke i kit me tyer -presentation_mode_label=Kit me tyer -open_file.title=Yab Pwail -open_file_label=Yab -print.title=Go -print_label=Go -download.title=Gam -download_label=Gam -bookmark.title=Neno ma kombedi (lok onyo yab i dirica manyen) -bookmark_label=Neno ma kombedi - -# Secondary toolbar and context menu -tools.title=Gintic -tools_label=Gintic -first_page.title=Cit i pot buk mukwongo -first_page.label=Cit i pot buk mukwongo -first_page_label=Cit i pot buk mukwongo -last_page.title=Cit i pot buk magiko -last_page.label=Cit i pot buk magiko -last_page_label=Cit i pot buk magiko -page_rotate_cw.title=Wire i tung lacuc -page_rotate_cw.label=Wire i tung lacuc -page_rotate_cw_label=Wire i tung lacuc -page_rotate_ccw.title=Wire i tung lacam -page_rotate_ccw.label=Wire i tung lacam -page_rotate_ccw_label=Wire i tung lacam - -cursor_text_select_tool.title=Cak gitic me yero coc -cursor_text_select_tool_label=Gitic me yero coc -cursor_hand_tool.title=Cak gitic me cing -cursor_hand_tool_label=Gitic cing - - - -# Document properties dialog box -document_properties.title=Jami me gin acoya… -document_properties_label=Jami me gin acoya… -document_properties_file_name=Nying pwail: -document_properties_file_size=Dit pa pwail: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Wiye: -document_properties_author=Ngat mucoyo: -document_properties_subject=Subjek: -document_properties_keywords=Lok mapire tek: -document_properties_creation_date=Nino dwe me cwec: -document_properties_modification_date=Nino dwe me yub: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Lacwec: -document_properties_producer=Layub PDF: -document_properties_version=Kit PDF: -document_properties_page_count=Kwan me pot buk: -document_properties_page_size=Dit pa potbuk: -document_properties_page_size_unit_inches=i -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=atir -document_properties_page_size_orientation_landscape=arii -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Waraga -document_properties_page_size_name_legal=Cik -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=Eyo -document_properties_linearized_no=Pe -document_properties_close=Lor - -print_progress_message=Yubo coc me agoya… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Juki - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Lok gintic ma inget -toggle_sidebar_notification.title=Lok lanyut me nget (wiyewiye tye i gin acoya/attachments) -toggle_sidebar_label=Lok gintic ma inget -document_outline.title=Nyut Wiyewiye me Gin acoya (dii-kiryo me yaro/kano jami weng) -document_outline_label=Pek pa gin acoya -attachments.title=Nyut twec -attachments_label=Twec -thumbs.title=Nyut cal -thumbs_label=Cal -findbar.title=Nong iye gin acoya -findbar_label=Nong - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pot buk {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Cal me pot buk {{page}} - -# Find panel button title and messages -find_input.title=Nong -find_input.placeholder=Nong i dokumen… -find_previous.title=Nong timme pa lok mukato -find_previous_label=Mukato -find_next.title=Nong timme pa lok malubo -find_next_label=Malubo -find_highlight=Wer weng -find_match_case_label=Lok marwate -find_reached_top=Oo iwi gin acoya, omede ki i tere -find_reached_bottom=Oo i agiki me gin acoya, omede ki iwiye -find_not_found=Lok pe ononge - -# Error panel labels -error_more_info=Ngec Mukene -error_less_info=Ngec Manok -error_close=Lor -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Kwena: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Can kikore {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Pwail: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rek: {{line}} -rendering_error=Bal otime i kare me nyuto pot buk. - -# Predefined zoom values -page_scale_width=Lac me iye pot buk -page_scale_fit=Porre me pot buk -page_scale_auto=Kwot pire kene -page_scale_actual=Dite kikome -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Bal -loading_error=Bal otime kun cano PDF. -invalid_file_error=Pwail me PDF ma pe atir onyo obale woko. -missing_file_error=Pwail me PDF tye ka rem. -unexpected_response_error=Lagam mape kigeno pa lapok tic. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Lok angea manok] -password_label=Ket mung me donyo me yabo pwail me PDF man. -password_invalid=Mung me donyo pe atir. Tim ber i tem doki. -password_ok=OK -password_cancel=Juki - -printing_not_supported=Ciko: Layeny ma pe teno goyo liweng. -printing_not_ready=Ciko: PDF pe ocane weng me agoya. -web_fonts_disabled=Kijuko dit pa coc me kakube woko: pe romo tic ki dit pa coc me PDF ma kiketo i kine. -document_colors_not_allowed=Pe ki yee ki gin acoya me PDF me tic ki rangi gi kengi: Kijuko woko “Yee pot buk me yero rangi mamegi kengi” ki i layeny. diff --git a/cookbook/static/pdfjs/locale/af/viewer.properties b/cookbook/static/pdfjs/locale/af/viewer.properties deleted file mode 100644 index 8cf088087..000000000 --- a/cookbook/static/pdfjs/locale/af/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Vorige bladsy -previous_label=Vorige -next.title=Volgende bladsy -next_label=Volgende - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Bladsy -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=van {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} van {{pagesCount}}) - -zoom_out.title=Zoem uit -zoom_out_label=Zoem uit -zoom_in.title=Zoem in -zoom_in_label=Zoem in -zoom.title=Zoem -presentation_mode.title=Wissel na voorleggingsmodus -presentation_mode_label=Voorleggingsmodus -open_file.title=Open lêer -open_file_label=Open -print.title=Druk -print_label=Druk -download.title=Laai af -download_label=Laai af -bookmark.title=Huidige aansig (kopieer of open in nuwe venster) -bookmark_label=Huidige aansig - -# Secondary toolbar and context menu -tools.title=Nutsgoed -tools_label=Nutsgoed -first_page.title=Gaan na eerste bladsy -first_page.label=Gaan na eerste bladsy -first_page_label=Gaan na eerste bladsy -last_page.title=Gaan na laaste bladsy -last_page.label=Gaan na laaste bladsy -last_page_label=Gaan na laaste bladsy -page_rotate_cw.title=Roteer kloksgewys -page_rotate_cw.label=Roteer kloksgewys -page_rotate_cw_label=Roteer kloksgewys -page_rotate_ccw.title=Roteer anti-kloksgewys -page_rotate_ccw.label=Roteer anti-kloksgewys -page_rotate_ccw_label=Roteer anti-kloksgewys - -cursor_text_select_tool.title=Aktiveer gereedskap om teks te merk -cursor_text_select_tool_label=Teksmerkgereedskap -cursor_hand_tool.title=Aktiveer handjie -cursor_hand_tool_label=Handjie - -# Document properties dialog box -document_properties.title=Dokumenteienskappe… -document_properties_label=Dokumenteienskappe… -document_properties_file_name=Lêernaam: -document_properties_file_size=Lêergrootte: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kG ({{size_b}} grepe) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MG ({{size_b}} grepe) -document_properties_title=Titel: -document_properties_author=Outeur: -document_properties_subject=Onderwerp: -document_properties_keywords=Sleutelwoorde: -document_properties_creation_date=Skeppingsdatum: -document_properties_modification_date=Wysigingsdatum: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Skepper: -document_properties_producer=PDF-vervaardiger: -document_properties_version=PDF-weergawe: -document_properties_page_count=Aantal bladsye: -document_properties_close=Sluit - -print_progress_message=Berei tans dokument voor om te druk… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Kanselleer - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Sypaneel aan/af -toggle_sidebar_notification.title=Sypaneel aan/af (dokument bevat skema/aanhegsels) -toggle_sidebar_label=Sypaneel aan/af -document_outline.title=Wys dokumentskema (dubbelklik om alle items oop/toe te vou) -document_outline_label=Dokumentoorsig -attachments.title=Wys aanhegsels -attachments_label=Aanhegsels -thumbs.title=Wys duimnaels -thumbs_label=Duimnaels -findbar.title=Soek in dokument -findbar_label=Vind - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Bladsy {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Duimnael van bladsy {{page}} - -# Find panel button title and messages -find_input.title=Vind -find_input.placeholder=Soek in dokument… -find_previous.title=Vind die vorige voorkoms van die frase -find_previous_label=Vorige -find_next.title=Vind die volgende voorkoms van die frase -find_next_label=Volgende -find_highlight=Verlig almal -find_match_case_label=Kassensitief -find_reached_top=Bokant van dokument is bereik; gaan voort van onder af -find_reached_bottom=Einde van dokument is bereik; gaan voort van bo af -find_not_found=Frase nie gevind nie - -# Error panel labels -error_more_info=Meer inligting -error_less_info=Minder inligting -error_close=Sluit -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (ID: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Boodskap: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stapel: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Lêer: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Lyn: {{line}} -rendering_error='n Fout het voorgekom toe die bladsy weergegee is. - -# Predefined zoom values -page_scale_width=Bladsywydte -page_scale_fit=Pas bladsy -page_scale_auto=Outomatiese zoem -page_scale_actual=Werklike grootte -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fout -loading_error='n Fout het voorgekom met die laai van die PDF. -invalid_file_error=Ongeldige of korrupte PDF-lêer. -missing_file_error=PDF-lêer is weg. -unexpected_response_error=Onverwagse antwoord van bediener. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}-annotasie] -password_label=Gee die wagwoord om dié PDF-lêer mee te open. -password_invalid=Ongeldige wagwoord. Probeer gerus weer. -password_ok=OK -password_cancel=Kanselleer - -printing_not_supported=Waarskuwing: Dié blaaier ondersteun nie drukwerk ten volle nie. -printing_not_ready=Waarskuwing: Die PDF is nog nie volledig gelaai vir drukwerk nie. -web_fonts_disabled=Webfonte is gedeaktiveer: kan nie PDF-fonte wat ingebed is, gebruik nie. -document_colors_not_allowed=PDF-dokumente word nie toegelaat om hul eie kleure te gebruik nie: “Laat bladsye toe om hul eie kleure te kies” is gedeaktiveer in die blaaier. diff --git a/cookbook/static/pdfjs/locale/an/viewer.properties b/cookbook/static/pdfjs/locale/an/viewer.properties deleted file mode 100644 index 35761347a..000000000 --- a/cookbook/static/pdfjs/locale/an/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pachina anterior -previous_label=Anterior -next.title=Pachina siguient -next_label=Siguient - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pachina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Achiquir -zoom_out_label=Achiquir -zoom_in.title=Agrandir -zoom_in_label=Agrandir -zoom.title=Grandaria -presentation_mode.title=Cambear t'o modo de presentación -presentation_mode_label=Modo de presentación -open_file.title=Ubrir o fichero -open_file_label=Ubrir -print.title=Imprentar -print_label=Imprentar -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar u ubrir en una nueva finestra) -bookmark_label=Anvista actual - -# Secondary toolbar and context menu -tools.title=Ferramientas -tools_label=Ferramientas -first_page.title=Ir ta la primer pachina -first_page.label=Ir ta la primer pachina -first_page_label=Ir ta la primer pachina -last_page.title=Ir ta la zaguer pachina -last_page.label=Ir ta la zaguera pachina -last_page_label=Ir ta la zaguer pachina -page_rotate_cw.title=Chirar enta la dreita -page_rotate_cw.label=Chirar enta la dreita -page_rotate_cw_label=Chira enta la dreita -page_rotate_ccw.title=Chirar enta la zurda -page_rotate_ccw.label=Chirar en sentiu antihorario -page_rotate_ccw_label=Chirar enta la zurda - -cursor_text_select_tool.title=Activar la ferramienta de selección de texto -cursor_text_select_tool_label=Ferramienta de selección de texto -cursor_hand_tool.title=Activar la ferramienta man -cursor_hand_tool_label=Ferramienta man - -# Document properties dialog box -document_properties.title=Propiedatz d'o documento... -document_properties_label=Propiedatz d'o documento... -document_properties_file_name=Nombre de fichero: -document_properties_file_size=Grandaria d'o fichero: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titol: -document_properties_author=Autor: -document_properties_subject=Afer: -document_properties_keywords=Parolas clau: -document_properties_creation_date=Calendata de creyación: -document_properties_modification_date=Calendata de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creyador: -document_properties_producer=Creyador de PDF: -document_properties_version=Versión de PDF: -document_properties_page_count=Numero de pachinas: -document_properties_close=Zarrar - -print_progress_message=Se ye preparando la documentación pa imprentar… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Amostrar u amagar a barra lateral -toggle_sidebar_notification.title=Cambiar barra lateral (lo documento contiene esquema/adchuntos) -toggle_sidebar_label=Amostrar a barra lateral -document_outline.title=Amostrar esquema d'o documento (fer doble clic pa expandir/compactar totz los items) -document_outline_label=Esquema d'o documento -attachments.title=Amostrar os adchuntos -attachments_label=Adchuntos -thumbs.title=Amostrar as miniaturas -thumbs_label=Miniaturas -findbar.title=Trobar en o documento -findbar_label=Trobar - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pachina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura d'a pachina {{page}} - -# Find panel button title and messages -find_input.title=Trobar -find_input.placeholder=Trobar en o documento… -find_previous.title=Trobar l'anterior coincidencia d'a frase -find_previous_label=Anterior -find_next.title=Trobar a siguient coincidencia d'a frase -find_next_label=Siguient -find_highlight=Resaltar-lo tot -find_match_case_label=Coincidencia de mayusclas/minusclas -find_reached_top=S'ha plegau a l'inicio d'o documento, se contina dende baixo -find_reached_bottom=S'ha plegau a la fin d'o documento, se contina dende alto -find_not_found=No s'ha trobau a frase - -# Error panel labels -error_more_info=Mas información -error_less_info=Menos información -error_close=Zarrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensache: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fichero: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linia: {{line}} -rendering_error=Ha ocurriu una error en renderizar a pachina. - -# Predefined zoom values -page_scale_width=Amplaria d'a pachina -page_scale_fit=Achuste d'a pachina -page_scale_auto=Grandaria automatica -page_scale_actual=Grandaria actual -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=S'ha produciu una error en cargar o PDF. -invalid_file_error=O PDF no ye valido u ye estorbau. -missing_file_error=No i ha fichero PDF. -unexpected_response_error=Respuesta a lo servicio inasperada. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotación {{type}}] -password_label=Introduzca a clau ta ubrir iste fichero PDF. -password_invalid=Clau invalida. Torna a intentar-lo. -password_ok=Acceptar -password_cancel=Cancelar - -printing_not_supported=Pare cuenta: Iste navegador no maneya totalment as impresions. -printing_not_ready=Aviso: Encara no se ha cargau completament o PDF ta imprentar-lo. -web_fonts_disabled=As fuents web son desactivadas: no se puet incrustar fichers PDF. -document_colors_not_allowed=Los documentos PDF no pueden fer servir las suyas propias colors: 'Permitir que as pachinas triguen as suyas propias colors' ye desactivau en o navegador. diff --git a/cookbook/static/pdfjs/locale/ar/viewer.properties b/cookbook/static/pdfjs/locale/ar/viewer.properties deleted file mode 100644 index b42ba74c2..000000000 --- a/cookbook/static/pdfjs/locale/ar/viewer.properties +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=الصفحة السابقة -previous_label=السابقة -next.title=الصفحة التالية -next_label=التالية - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=صفحة -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=من {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} من {{pagesCount}}) - -zoom_out.title=بعّد -zoom_out_label=بعّد -zoom_in.title=قرّب -zoom_in_label=قرّب -zoom.title=التقريب -presentation_mode.title=انتقل لوضع العرض التقديمي -presentation_mode_label=وضع العرض التقديمي -open_file.title=افتح ملفًا -open_file_label=افتح -print.title=اطبع -print_label=اطبع -download.title=نزّل -download_label=نزّل -bookmark.title=المنظور الحالي (انسخ أو افتح في نافذة جديدة) -bookmark_label=المنظور الحالي - -# Secondary toolbar and context menu -tools.title=الأدوات -tools_label=الأدوات -first_page.title=اذهب إلى الصفحة الأولى -first_page.label=اذهب إلى الصفحة الأولى -first_page_label=اذهب إلى الصفحة الأولى -last_page.title=اذهب إلى الصفحة الأخيرة -last_page.label=اذهب إلى الصفحة الأخيرة -last_page_label=اذهب إلى الصفحة الأخيرة -page_rotate_cw.title=أدر باتجاه عقارب الساعة -page_rotate_cw.label=أدر باتجاه عقارب الساعة -page_rotate_cw_label=أدر باتجاه عقارب الساعة -page_rotate_ccw.title=أدر بعكس اتجاه عقارب الساعة -page_rotate_ccw.label=أدر بعكس اتجاه عقارب الساعة -page_rotate_ccw_label=أدر بعكس اتجاه عقارب الساعة - -cursor_text_select_tool.title=فعّل أداة اختيار النص -cursor_text_select_tool_label=أداة اختيار النص -cursor_hand_tool.title=فعّل أداة اليد -cursor_hand_tool_label=أداة اليد - -scroll_vertical.title=استخدم التمرير الرأسي -scroll_vertical_label=التمرير الرأسي -scroll_horizontal.title=استخدم التمرير الأفقي -scroll_horizontal_label=التمرير الأفقي -scroll_wrapped.title=استخدم التمرير الملتف -scroll_wrapped_label=التمرير الملتف - -spread_none.title=لا تدمج هوامش الصفحات مع بعضها البعض -spread_none_label=بلا هوامش -spread_odd.title=ادمج هوامش الصفحات الفردية -spread_odd_label=هوامش الصفحات الفردية -spread_even.title=ادمج هوامش الصفحات الزوجية -spread_even_label=هوامش الصفحات الزوجية - -# Document properties dialog box -document_properties.title=خصائص المستند… -document_properties_label=خصائص المستند… -document_properties_file_name=اسم الملف: -document_properties_file_size=حجم الملف: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} ك.بايت ({{size_b}} بايت) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} م.بايت ({{size_b}} بايت) -document_properties_title=العنوان: -document_properties_author=المؤلف: -document_properties_subject=الموضوع: -document_properties_keywords=الكلمات الأساسية: -document_properties_creation_date=تاريخ الإنشاء: -document_properties_modification_date=تاريخ التعديل: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}، {{time}} -document_properties_creator=المنشئ: -document_properties_producer=منتج PDF: -document_properties_version=إصدارة PDF: -document_properties_page_count=عدد الصفحات: -document_properties_page_size=مقاس الورقة: -document_properties_page_size_unit_inches=بوصة -document_properties_page_size_unit_millimeters=ملم -document_properties_page_size_orientation_portrait=طوليّ -document_properties_page_size_orientation_landscape=عرضيّ -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=خطاب -document_properties_page_size_name_legal=قانونيّ -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string=‏{{width}} × ‏{{height}} ‏{{unit}} (‏{{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string=‏{{width}} × ‏{{height}} ‏{{unit}} (‏{{name}}، {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=العرض السريع عبر الوِب: -document_properties_linearized_yes=نعم -document_properties_linearized_no=لا -document_properties_close=أغلق - -print_progress_message=يُحضّر المستند للطباعة… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}٪ -print_progress_close=ألغِ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=بدّل ظهور الشريط الجانبي -toggle_sidebar_notification.title=بدّل ظهور الشريط الجانبي (يحتوي المستند على مخطط أو مرفقات) -toggle_sidebar_label=بدّل ظهور الشريط الجانبي -document_outline.title=اعرض فهرس المستند (نقر مزدوج لتمديد أو تقليص كل العناصر) -document_outline_label=مخطط المستند -attachments.title=اعرض المرفقات -attachments_label=المُرفقات -thumbs.title=اعرض مُصغرات -thumbs_label=مُصغّرات -findbar.title=ابحث في المستند -findbar_label=ابحث - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=صفحة {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=مصغّرة صفحة {{page}} - -# Find panel button title and messages -find_input.title=ابحث -find_input.placeholder=ابحث في المستند… -find_previous.title=ابحث عن التّواجد السّابق للعبارة -find_previous_label=السابق -find_next.title=ابحث عن التّواجد التّالي للعبارة -find_next_label=التالي -find_highlight=أبرِز الكل -find_match_case_label=طابق حالة الأحرف -find_entire_word_label=كلمات كاملة -find_reached_top=تابعت من الأسفل بعدما وصلت إلى بداية المستند -find_reached_bottom=تابعت من الأعلى بعدما وصلت إلى نهاية المستند -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} من أصل مطابقة واحدة -find_match_count[two]={{current}} من أصل مطابقتين -find_match_count[few]={{current}} من أصل {{total}} مطابقات -find_match_count[many]={{current}} من أصل {{total}} مطابقة -find_match_count[other]={{current}} من أصل {{total}} مطابقة -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=فقط -find_match_count_limit[one]=أكثر من مطابقة واحدة -find_match_count_limit[two]=أكثر من مطابقتين -find_match_count_limit[few]=أكثر من {{limit}} مطابقات -find_match_count_limit[many]=أكثر من {{limit}} مطابقة -find_match_count_limit[other]=أكثر من {{limit}} مطابقة -find_not_found=لا وجود للعبارة - -# Error panel labels -error_more_info=معلومات أكثر -error_less_info=معلومات أقل -error_close=أغلق -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=‏PDF.js ن{{version}} ‏(بناء: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=الرسالة: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=الرصّة: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=الملف: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=السطر: {{line}} -rendering_error=حدث خطأ أثناء عرض الصفحة. - -# Predefined zoom values -page_scale_width=عرض الصفحة -page_scale_fit=ملائمة الصفحة -page_scale_auto=تقريب تلقائي -page_scale_actual=الحجم الفعلي -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}٪ - -# Loading indicator messages -loading_error_indicator=عطل -loading_error=حدث عطل أثناء تحميل ملف PDF. -invalid_file_error=ملف PDF تالف أو غير صحيح. -missing_file_error=ملف PDF غير موجود. -unexpected_response_error=استجابة خادوم غير متوقعة. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}، {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[تعليق {{type}}] -password_label=أدخل لكلمة السر لفتح هذا الملف. -password_invalid=كلمة سر خطأ. من فضلك أعد المحاولة. -password_ok=حسنا -password_cancel=ألغِ - -printing_not_supported=تحذير: لا يدعم هذا المتصفح الطباعة بشكل كامل. -printing_not_ready=تحذير: ملف PDF لم يُحمّل كاملًا للطباعة. -web_fonts_disabled=خطوط الوب مُعطّلة: تعذّر استخدام خطوط PDF المُضمّنة. -document_colors_not_allowed=ليس مسموحًا لملفات PDF باستخدام ألوانها الخاصة: خيار ”اسمح للصفحات باختيار ألوانها الخاصة“ ليس مُفعّلًا في المتصفح. diff --git a/cookbook/static/pdfjs/locale/ast/viewer.properties b/cookbook/static/pdfjs/locale/ast/viewer.properties deleted file mode 100644 index db66a5675..000000000 --- a/cookbook/static/pdfjs/locale/ast/viewer.properties +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Páxina anterior -previous_label=Anterior -next.title=Páxina siguiente -next_label=Siguiente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Páxina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reducir -zoom_out_label=Reducir -zoom_in.title=Aumentar -zoom_in_label=Aumentar -zoom.title=Tamañu -open_file.title=Abrir ficheru -open_file_label=Abrir -print.title=Imprentar -print_label=Imprentar -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar o abrir nuna nueva ventana) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Ferramientes -tools_label=Ferramientes -first_page.title=Dir a la primer páxina -first_page.label=Dir a la primer páxina -first_page_label=Dir a la primer páxina -last_page.title=Dir a la postrer páxina -last_page.label=Dir a la cabera páxina -last_page_label=Dir a la postrer páxina -page_rotate_cw.title=Xirar en sen horariu -page_rotate_cw_label=Xirar en sen horariu -page_rotate_ccw.title=Xirar en sen antihorariu -page_rotate_ccw_label=Xirar en sen antihorariu - - -scroll_vertical_label=Desplazamientu vertical -scroll_horizontal_label=Desplazamientu horizontal - - -# Document properties dialog box -document_properties.title=Propiedaes del documentu… -document_properties_label=Propiedaes del documentu… -document_properties_file_name=Nome de ficheru: -document_properties_file_size=Tamañu de ficheru: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Títulu: -document_properties_author=Autor: -document_properties_subject=Asuntu: -document_properties_keywords=Pallabres clave: -document_properties_creation_date=Data de creación: -document_properties_modification_date=Data de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=Productor PDF: -document_properties_version=Versión PDF: -document_properties_page_count=Númberu de páxines: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=Sí -document_properties_linearized_no=Non -document_properties_close=Zarrar - -print_progress_message=Tresnando documentu pa imprentar… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Encaboxar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Camudar barra llateral -toggle_sidebar_label=Camudar barra llateral -document_outline.title=Amosar esquema del documentu (duble clic pa espander/contrayer tolos elementos) -document_outline_label=Esquema del documentu -attachments.title=Amosar axuntos -attachments_label=Axuntos -thumbs.title=Amosar miniatures -thumbs_label=Miniatures -findbar.title=Guetar nel documentu -findbar_label=Guetar - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Páxina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de la páxina {{page}} - -# Find panel button title and messages -find_input.title=Guetar -find_input.placeholder=Guetar nel documentu… -find_previous.title=Alcontrar l'anterior apaición de la fras -find_previous_label=Anterior -find_next.title=Alcontrar la siguiente apaición d'esta fras -find_next_label=Siguiente -find_highlight=Remarcar toos -find_match_case_label=Coincidencia de mayús./minús. -find_entire_word_label=Pallabres enteres -find_reached_top=Algamóse'l principiu del documentu, siguir dende'l final -find_reached_bottom=Algamóse'l final del documentu, siguir dende'l principiu -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_not_found=Frase non atopada - -# Error panel labels -error_more_info=Más información -error_less_info=Menos información -error_close=Zarrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaxe: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ficheru: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Llinia: {{line}} -rendering_error=Hebo un fallu al renderizar la páxina. - -# Predefined zoom values -page_scale_width=Anchor de la páxina -page_scale_fit=Axuste de la páxina -page_scale_auto=Tamañu automáticu -page_scale_actual=Tamañu actual -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fallu -loading_error=Hebo un fallu al cargar el PDF. -invalid_file_error=Ficheru PDF inválidu o corruptu. -missing_file_error=Nun hai ficheru PDF. -unexpected_response_error=Rempuesta inesperada del sirvidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotación {{type}}] -password_label=Introduz la contraseña p'abrir esti ficheru PDF -password_invalid=Contraseña non válida. Vuelvi a intentalo. -password_ok=Aceutar -password_cancel=Encaboxar - -printing_not_supported=Alvertencia: La imprentación entá nun ta sofitada dafechu nesti restolador. -printing_not_ready=Avisu: Esti PDF nun se cargó completamente pa poder imprentase. -web_fonts_disabled=Les fontes web tán desactivaes: ye imposible usar les fontes PDF embebíes. -document_colors_not_allowed=Los documentos PDF nun tienen permisu pa usar les sos colores: «Permitir que les páxines escueyan les sos colores» ta desactivao nel restolador. diff --git a/cookbook/static/pdfjs/locale/az/viewer.properties b/cookbook/static/pdfjs/locale/az/viewer.properties deleted file mode 100644 index 2c27d1246..000000000 --- a/cookbook/static/pdfjs/locale/az/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Əvvəlki səhifə -previous_label=Əvvəlkini tap -next.title=Növbəti səhifə -next_label=İrəli - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Səhifə -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=Uzaqlaş -zoom_out_label=Uzaqlaş -zoom_in.title=Yaxınlaş -zoom_in_label=Yaxınlaş -zoom.title=Yaxınlaşdırma -presentation_mode.title=Təqdimat Rejiminə Keç -presentation_mode_label=Təqdimat Rejimi -open_file.title=Fayl Aç -open_file_label=Aç -print.title=Yazdır -print_label=Yazdır -download.title=Yüklə -download_label=Yüklə -bookmark.title=Hazırkı görünüş (köçür və ya yeni pəncərədə aç) -bookmark_label=Hazırkı görünüş - -# Secondary toolbar and context menu -tools.title=Alətlər -tools_label=Alətlər -first_page.title=İlk Səhifəyə get -first_page.label=İlk Səhifəyə get -first_page_label=İlk Səhifəyə get -last_page.title=Son Səhifəyə get -last_page.label=Son Səhifəyə get -last_page_label=Son Səhifəyə get -page_rotate_cw.title=Saat İstiqamətində Fırlat -page_rotate_cw.label=Saat İstiqamətində Fırlat -page_rotate_cw_label=Saat İstiqamətində Fırlat -page_rotate_ccw.title=Saat İstiqamətinin Əksinə Fırlat -page_rotate_ccw.label=Saat İstiqamətinin Əksinə Fırlat -page_rotate_ccw_label=Saat İstiqamətinin Əksinə Fırlat - -cursor_text_select_tool.title=Yazı seçmə alətini aktivləşdir -cursor_text_select_tool_label=Yazı seçmə aləti -cursor_hand_tool.title=Əl alətini aktivləşdir -cursor_hand_tool_label=Əl aləti - -scroll_vertical.title=Şaquli sürüşdürmə işlət -scroll_vertical_label=Şaquli sürüşdürmə -scroll_horizontal.title=Üfüqi sürüşdürmə işlət -scroll_horizontal_label=Üfüqi sürüşdürmə -scroll_wrapped.title=Bükülü sürüşdürmə işlət -scroll_wrapped_label=Bükülü sürüşdürmə - -spread_none.title=Yan-yana birləşdirilmiş səhifələri işlətmə -spread_none_label=Birləşdirmə -spread_odd.title=Yan-yana birləşdirilmiş səhifələri tək nömrəli səhifələrdən başlat -spread_odd_label=Tək nömrəli -spread_even.title=Yan-yana birləşdirilmiş səhifələri cüt nömrəli səhifələrdən başlat -spread_even_label=Cüt nömrəli - -# Document properties dialog box -document_properties.title=Sənəd xüsusiyyətləri… -document_properties_label=Sənəd xüsusiyyətləri… -document_properties_file_name=Fayl adı: -document_properties_file_size=Fayl ölçüsü: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bayt) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bayt) -document_properties_title=Başlık: -document_properties_author=Müəllif: -document_properties_subject=Mövzu: -document_properties_keywords=Açar sözlər: -document_properties_creation_date=Yaradılış Tarixi : -document_properties_modification_date=Dəyişdirilmə Tarixi : -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Yaradan: -document_properties_producer=PDF yaradıcısı: -document_properties_version=PDF versiyası: -document_properties_page_count=Səhifə sayı: -document_properties_page_size=Səhifə Ölçüsü: -document_properties_page_size_unit_inches=inç -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portret -document_properties_page_size_orientation_landscape=albom -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Məktub -document_properties_page_size_name_legal=Hüquqi -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Bəli -document_properties_linearized_no=Xeyr -document_properties_close=Qapat - -print_progress_message=Sənəd çap üçün hazırlanır… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Ləğv et - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Yan Paneli Aç/Bağla -toggle_sidebar_notification.title=Yan paneli çevir (sənəddə icmal/bağlama var) -toggle_sidebar_label=Yan Paneli Aç/Bağla -document_outline.title=Sənədin eskizini göstər (bütün bəndləri açmaq/yığmaq üçün iki dəfə klikləyin) -document_outline_label=Sənəd strukturu -attachments.title=Bağlamaları göstər -attachments_label=Bağlamalar -thumbs.title=Kiçik şəkilləri göstər -thumbs_label=Kiçik şəkillər -findbar.title=Sənəddə Tap -findbar_label=Tap - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Səhifə {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Səhifə{{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} səhifəsinin kiçik vəziyyəti - -# Find panel button title and messages -find_input.title=Tap -find_input.placeholder=Sənəddə tap… -find_previous.title=Bir öncəki uyğun gələn sözü tapır -find_previous_label=Geri -find_next.title=Bir sonrakı uyğun gələn sözü tapır -find_next_label=İrəli -find_highlight=İşarələ -find_match_case_label=Böyük/kiçik hərfə həssaslıq -find_entire_word_label=Tam sözlər -find_reached_top=Sənədin yuxarısına çatdı, aşağıdan davam edir -find_reached_bottom=Sənədin sonuna çatdı, yuxarıdan davam edir -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} / {{total}} uyğunluq -find_match_count[two]={{current}} / {{total}} uyğunluq -find_match_count[few]={{current}} / {{total}} uyğunluq -find_match_count[many]={{current}} / {{total}} uyğunluq -find_match_count[other]={{current}} / {{total}} uyğunluq -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}}-dan çox uyğunluq -find_match_count_limit[one]={{limit}}-dən çox uyğunluq -find_match_count_limit[two]={{limit}}-dən çox uyğunluq -find_match_count_limit[few]={{limit}} uyğunluqdan daha çox -find_match_count_limit[many]={{limit}} uyğunluqdan daha çox -find_match_count_limit[other]={{limit}} uyğunluqdan daha çox -find_not_found=Uyğunlaşma tapılmadı - -# Error panel labels -error_more_info=Daha çox məlumati -error_less_info=Daha az məlumat -error_close=Qapat -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (yığma: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=İsmarıc: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stek: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fayl: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Sətir: {{line}} -rendering_error=Səhifə göstərilərkən səhv yarandı. - -# Predefined zoom values -page_scale_width=Səhifə genişliyi -page_scale_fit=Səhifəni sığdır -page_scale_auto=Avtomatik yaxınlaşdır -page_scale_actual=Hazırkı Həcm -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Səhv -loading_error=PDF yüklenərkən bir səhv yarandı. -invalid_file_error=Səhv və ya zədələnmiş olmuş PDF fayl. -missing_file_error=PDF fayl yoxdur. -unexpected_response_error=Gözlənilməz server cavabı. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotasiyası] -password_label=Bu PDF faylı açmaq üçün parolu daxil edin. -password_invalid=Parol səhvdir. Bir daha yoxlayın. -password_ok=Tamam -password_cancel=Ləğv et - -printing_not_supported=Xəbərdarlıq: Çap bu səyyah tərəfindən tam olaraq dəstəklənmir. -printing_not_ready=Xəbərdarlıq: PDF çap üçün tam yüklənməyib. -web_fonts_disabled=Web Şriftlər söndürülüb: yerləşdirilmiş PDF şriftlərini istifadə etmək mümkün deyil. -document_colors_not_allowed=PDF sənədlərə öz rənglərini işlətməyə icazə verilmir: “Səhifələrə öz rənglərini istifadə etməyə icazə ver”mə səyyahda söndürülüb. diff --git a/cookbook/static/pdfjs/locale/be/viewer.properties b/cookbook/static/pdfjs/locale/be/viewer.properties deleted file mode 100644 index 67cd0126e..000000000 --- a/cookbook/static/pdfjs/locale/be/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Папярэдняя старонка -previous_label=Папярэдняя -next.title=Наступная старонка -next_label=Наступная - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Старонка -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=з {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} з {{pagesCount}}) - -zoom_out.title=Паменшыць -zoom_out_label=Паменшыць -zoom_in.title=Павялічыць -zoom_in_label=Павялічыць -zoom.title=Павялічэнне тэксту -presentation_mode.title=Пераключыцца ў рэжым паказу -presentation_mode_label=Рэжым паказу -open_file.title=Адкрыць файл -open_file_label=Адкрыць -print.title=Друкаваць -print_label=Друкаваць -download.title=Сцягнуць -download_label=Сцягнуць -bookmark.title=Цяперашняя праява (скапіяваць або адчыніць у новым акне) -bookmark_label=Цяперашняя праява - -# Secondary toolbar and context menu -tools.title=Прылады -tools_label=Прылады -first_page.title=Перайсці на першую старонку -first_page.label=Перайсці на першую старонку -first_page_label=Перайсці на першую старонку -last_page.title=Перайсці на апошнюю старонку -last_page.label=Перайсці на апошнюю старонку -last_page_label=Перайсці на апошнюю старонку -page_rotate_cw.title=Павярнуць па сонцу -page_rotate_cw.label=Павярнуць па сонцу -page_rotate_cw_label=Павярнуць па сонцу -page_rotate_ccw.title=Павярнуць супраць сонца -page_rotate_ccw.label=Павярнуць супраць сонца -page_rotate_ccw_label=Павярнуць супраць сонца - -cursor_text_select_tool.title=Уключыць прыладу выбару тэксту -cursor_text_select_tool_label=Прылада выбару тэксту -cursor_hand_tool.title=Уключыць ручную прыладу -cursor_hand_tool_label=Ручная прылада - -scroll_vertical.title=Ужываць вертыкальную пракрутку -scroll_vertical_label=Вертыкальная пракрутка -scroll_horizontal.title=Ужываць гарызантальную пракрутку -scroll_horizontal_label=Гарызантальная пракрутка -scroll_wrapped.title=Ужываць маштабавальную пракрутку -scroll_wrapped_label=Маштабавальная пракрутка - -spread_none.title=Не выкарыстоўваць разгорнутыя старонкі -spread_none_label=Без разгорнутых старонак -spread_odd.title=Разгорнутыя старонкі пачынаючы з няцотных нумароў -spread_odd_label=Няцотныя старонкі злева -spread_even.title=Разгорнутыя старонкі пачынаючы з цотных нумароў -spread_even_label=Цотныя старонкі злева - -# Document properties dialog box -document_properties.title=Уласцівасці дакумента… -document_properties_label=Уласцівасці дакумента… -document_properties_file_name=Назва файла: -document_properties_file_size=Памер файла: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} КБ ({{size_b}} байт) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} МБ ({{size_b}} байт) -document_properties_title=Загаловак: -document_properties_author=Аўтар: -document_properties_subject=Тэма: -document_properties_keywords=Ключавыя словы: -document_properties_creation_date=Дата стварэння: -document_properties_modification_date=Дата змянення: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Стваральнік: -document_properties_producer=Вырабнік PDF: -document_properties_version=Версія PDF: -document_properties_page_count=Колькасць старонак: -document_properties_page_size=Памер старонкі: -document_properties_page_size_unit_inches=цаляў -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=кніжная -document_properties_page_size_orientation_landscape=альбомная -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Хуткі прагляд у Інтэрнэце: -document_properties_linearized_yes=Так -document_properties_linearized_no=Не -document_properties_close=Закрыць - -print_progress_message=Падрыхтоўка дакумента да друку… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Скасаваць - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Паказаць/схаваць бакавую панэль -toggle_sidebar_notification.title=Паказаць/схаваць бакавую панэль (дакумент мае змест/укладанні) -toggle_sidebar_label=Паказаць/схаваць бакавую панэль -document_outline.title=Паказаць структуру дакумента (двайная пстрычка, каб разгарнуць /згарнуць усе элементы) -document_outline_label=Структура дакумента -attachments.title=Паказаць далучэнні -attachments_label=Далучэнні -thumbs.title=Паказ мініяцюр -thumbs_label=Мініяцюры -findbar.title=Пошук у дакуменце -findbar_label=Знайсці - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Старонка {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Старонка {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Мініяцюра старонкі {{page}} - -# Find panel button title and messages -find_input.title=Шукаць -find_input.placeholder=Шукаць у дакуменце… -find_previous.title=Знайсці папярэдні выпадак выразу -find_previous_label=Папярэдні -find_next.title=Знайсці наступны выпадак выразу -find_next_label=Наступны -find_highlight=Падфарбаваць усе -find_match_case_label=Адрозніваць вялікія/малыя літары -find_entire_word_label=Словы цалкам -find_reached_top=Дасягнуты пачатак дакумента, працяг з канца -find_reached_bottom=Дасягнуты канец дакумента, працяг з пачатку -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} з {{total}} супадзення -find_match_count[two]={{current}} з {{total}} супадзенняў -find_match_count[few]={{current}} з {{total}} супадзенняў -find_match_count[many]={{current}} з {{total}} супадзенняў -find_match_count[other]={{current}} з {{total}} супадзенняў -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Больш за {{limit}} супадзенняў -find_match_count_limit[one]=Больш за {{limit}} супадзенне -find_match_count_limit[two]=Больш за {{limit}} супадзенняў -find_match_count_limit[few]=Больш за {{limit}} супадзенняў -find_match_count_limit[many]=Больш за {{limit}} супадзенняў -find_match_count_limit[other]=Больш за {{limit}} супадзенняў -find_not_found=Выраз не знойдзены - -# Error panel labels -error_more_info=Падрабязней -error_less_info=Сцісла -error_close=Закрыць -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js в{{version}} (зборка: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Паведамленне: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стос: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Файл: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Радок: {{line}} -rendering_error=Здарылася памылка падчас адлюстравання старонкі. - -# Predefined zoom values -page_scale_width=Шырыня старонкі -page_scale_fit=Уцісненне старонкі -page_scale_auto=Аўтаматычнае павелічэнне -page_scale_actual=Сапраўдны памер -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Памылка -loading_error=Здарылася памылка падчас загрузкі PDF. -invalid_file_error=Няспраўны або пашкоджаны файл PDF. -missing_file_error=Адсутны файл PDF. -unexpected_response_error=Нечаканы адказ сервера. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Увядзіце пароль, каб адкрыць гэты файл PDF. -password_invalid=Нядзейсны пароль. Паспрабуйце зноў. -password_ok=Добра -password_cancel=Скасаваць - -printing_not_supported=Папярэджанне: друк не падтрымліваецца цалкам гэтым браўзерам. -printing_not_ready=Увага: PDF не сцягнуты цалкам для друкавання. -web_fonts_disabled=Шрыфты Сеціва забаронены: немагчыма ўжываць укладзеныя шрыфты PDF. -document_colors_not_allowed=PDF-дакументам не дазволена выкарыстоўваць свае колеры: у браўзеры адключаны параметр "Дазволіць вэб-сайтам выкарыстоўваць свае колеры". diff --git a/cookbook/static/pdfjs/locale/bg/viewer.properties b/cookbook/static/pdfjs/locale/bg/viewer.properties deleted file mode 100644 index 713b1138d..000000000 --- a/cookbook/static/pdfjs/locale/bg/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Предишна страница -previous_label=Предишна -next.title=Следваща страница -next_label=Следваща - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Страница -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=от {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} от {{pagesCount}}) - -zoom_out.title=Намаляване -zoom_out_label=Намаляване -zoom_in.title=Увеличаване -zoom_in_label=Увеличаване -zoom.title=Мащабиране -presentation_mode.title=Превключване към режим на представяне -presentation_mode_label=Режим на представяне -open_file.title=Отваряне на файл -open_file_label=Отваряне -print.title=Отпечатване -print_label=Отпечатване -download.title=Изтегляне -download_label=Изтегляне -bookmark.title=Текущ изглед (копиране или отваряне в нов прозорец) -bookmark_label=Текущ изглед - -# Secondary toolbar and context menu -tools.title=Инструменти -tools_label=Инструменти -first_page.title=Към първата страница -first_page.label=Към първата страница -first_page_label=Към първата страница -last_page.title=Към последната страница -last_page.label=Към последната страница -last_page_label=Към последната страница -page_rotate_cw.title=Завъртане по час. стрелка -page_rotate_cw.label=Завъртане по часовниковата стрелка -page_rotate_cw_label=Завъртане по часовниковата стрелка -page_rotate_ccw.title=Завъртане обратно на час. стрелка -page_rotate_ccw.label=Завъртане обратно на часовниковата стрелка -page_rotate_ccw_label=Завъртане обратно на часовниковата стрелка - -cursor_text_select_tool.title=Включване на инструмента за избор на текст -cursor_text_select_tool_label=Инструмент за избор на текст -cursor_hand_tool.title=Включване на инструмента ръка -cursor_hand_tool_label=Инструмент ръка - -scroll_vertical.title=Използване на вертикално плъзгане -scroll_vertical_label=Вертикално плъзгане -scroll_horizontal.title=Използване на хоризонтално -scroll_horizontal_label=Хоризонтално плъзгане -scroll_wrapped.title=Използване на мащабируемо плъзгане -scroll_wrapped_label=Мащабируемо плъзгане - -spread_none.title=Режимът на сдвояване е изключен -spread_none_label=Без сдвояване -spread_odd.title=Сдвояване, започвайки от нечетните страници -spread_odd_label=Нечетните отляво -spread_even.title=Сдвояване, започвайки от четните страници -spread_even_label=Четните отляво - -# Document properties dialog box -document_properties.title=Свойства на документа… -document_properties_label=Свойства на документа… -document_properties_file_name=Име на файл: -document_properties_file_size=Големина на файл: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} КБ ({{size_b}} байта) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} МБ ({{size_b}} байта) -document_properties_title=Заглавие: -document_properties_author=Автор: -document_properties_subject=Тема: -document_properties_keywords=Ключови думи: -document_properties_creation_date=Дата на създаване: -document_properties_modification_date=Дата на промяна: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Създател: -document_properties_producer=PDF произведен от: -document_properties_version=Издание на PDF: -document_properties_page_count=Брой страници: -document_properties_page_size=Размер на страницата: -document_properties_page_size_unit_inches=инч -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=портрет -document_properties_page_size_orientation_landscape=пейзаж -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Правни въпроси -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Бърз преглед: -document_properties_linearized_yes=Да -document_properties_linearized_no=Не -document_properties_close=Затваряне - -print_progress_message=Подготвяне на документа за отпечатване… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Отказ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Превключване на страничната лента -toggle_sidebar_notification.title=Превключване на страничната лента (документи със структура/прикачени файлове) -toggle_sidebar_label=Превключване на страничната лента -document_outline.title=Показване на структурата на документа (двукратно щракване за свиване/разгъване на всичко) -document_outline_label=Структура на документа -attachments.title=Показване на притурките -attachments_label=Притурки -thumbs.title=Показване на миниатюрите -thumbs_label=Миниатюри -findbar.title=Намиране в документа -findbar_label=Търсене - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Страница {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Миниатюра на страница {{page}} - -# Find panel button title and messages -find_input.title=Търсене -find_input.placeholder=Търсене в документа… -find_previous.title=Намиране на предишно съвпадение на фразата -find_previous_label=Предишна -find_next.title=Намиране на следващо съвпадение на фразата -find_next_label=Следваща -find_highlight=Открояване на всички -find_match_case_label=Съвпадение на регистъра -find_entire_word_label=Цели думи -find_reached_top=Достигнато е началото на документа, продължаване от края -find_reached_bottom=Достигнат е краят на документа, продължаване от началото -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} от {{total}} съвпадение -find_match_count[two]={{current}} от {{total}} съвпадения -find_match_count[few]={{current}} от {{total}} съвпадения -find_match_count[many]={{current}} от {{total}} съвпадения -find_match_count[other]={{current}} от {{total}} съвпадения -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Повече от {{limit}} съвпадения -find_match_count_limit[one]=Повече от {{limit}} съвпадение -find_match_count_limit[two]=Повече от {{limit}} съвпадения -find_match_count_limit[few]=Повече от {{limit}} съвпадения -find_match_count_limit[many]=Повече от {{limit}} съвпадения -find_match_count_limit[other]=Повече от {{limit}} съвпадения -find_not_found=Фразата не е намерена - -# Error panel labels -error_more_info=Повече информация -error_less_info=По-малко информация -error_close=Затваряне -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=Издание на PDF.js {{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Съобщение: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стек: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Файл: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Ред: {{line}} -rendering_error=Грешка при изчертаване на страницата. - -# Predefined zoom values -page_scale_width=Ширина на страницата -page_scale_fit=Вместване в страницата -page_scale_auto=Автоматично мащабиране -page_scale_actual=Действителен размер -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Грешка -loading_error=Получи се грешка при зареждане на PDF-а. -invalid_file_error=Невалиден или повреден PDF файл. -missing_file_error=Липсващ PDF файл. -unexpected_response_error=Неочакван отговор от сървъра. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Анотация {{type}}] -password_label=Въведете парола за отваряне на този PDF файл. -password_invalid=Невалидна парола. Моля, опитайте отново. -password_ok=Добре -password_cancel=Отказ - -printing_not_supported=Внимание: Този четец няма пълна поддръжка на отпечатване. -printing_not_ready=Внимание: Този PDF файл не е напълно зареден за печат. -web_fonts_disabled=Уеб-шрифтовете са забранени: разрешаване на използването на вградените PDF шрифтове. -document_colors_not_allowed=На документите от вид PDF не е разрешено да използват собствени цветове: „Разрешаване на страниците да избират собствени цветове“ е изключено в четеца. diff --git a/cookbook/static/pdfjs/locale/bn/viewer.properties b/cookbook/static/pdfjs/locale/bn/viewer.properties deleted file mode 100644 index 52fec2c35..000000000 --- a/cookbook/static/pdfjs/locale/bn/viewer.properties +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=পূর্ববর্তী পাতা -previous_label=পূর্ববর্তী -next.title=পরবর্তী পাতা -next_label=পরবর্তী - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=পাতা -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} এর -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} এর {{pageNumber}}) - -zoom_out.title=ছোট আকারে প্রদর্শন -zoom_out_label=ছোট আকারে প্রদর্শন -zoom_in.title=বড় আকারে প্রদর্শন -zoom_in_label=বড় আকারে প্রদর্শন -zoom.title=বড় আকারে প্রদর্শন -presentation_mode.title=উপস্থাপনা মোডে স্যুইচ করুন -presentation_mode_label=উপস্থাপনা মোড -open_file.title=ফাইল খুলুন -open_file_label=খুলুন -print.title=মুদ্রণ -print_label=মুদ্রণ -download.title=ডাউনলোড -download_label=ডাউনলোড -bookmark.title=বর্তমান অবস্থা (অনুলিপি অথবা নতুন উইন্ডো তে খুলুন) -bookmark_label=বর্তমান অবস্থা - -# Secondary toolbar and context menu -tools.title=টুল -tools_label=টুল -first_page.title=প্রথম পাতায় যাও -first_page.label=প্রথম পাতায় যাও -first_page_label=প্রথম পাতায় যাও -last_page.title=শেষ পাতায় যাও -last_page.label=শেষ পাতায় যাও -last_page_label=শেষ পাতায় যাও -page_rotate_cw.title=ঘড়ির কাঁটার দিকে ঘোরাও -page_rotate_cw.label=ঘড়ির কাঁটার দিকে ঘোরাও -page_rotate_cw_label=ঘড়ির কাঁটার দিকে ঘোরাও -page_rotate_ccw.title=ঘড়ির কাঁটার বিপরীতে ঘোরাও -page_rotate_ccw.label=ঘড়ির কাঁটার বিপরীতে ঘোরাও -page_rotate_ccw_label=ঘড়ির কাঁটার বিপরীতে ঘোরাও - -cursor_text_select_tool.title=লেখা নির্বাচক টুল সক্রিয় করুন -cursor_text_select_tool_label=লেখা নির্বাচক টুল -cursor_hand_tool.title=হ্যান্ড টুল সক্রিয় করুন -cursor_hand_tool_label=হ্যান্ড টুল - -scroll_vertical.title=উলম্ব স্ক্রলিং ব্যবহার করুন -scroll_vertical_label=উলম্ব স্ক্রলিং -scroll_horizontal.title=অনুভূমিক স্ক্রলিং ব্যবহার করুন -scroll_horizontal_label=অনুভূমিক স্ক্রলিং -scroll_wrapped.title=Wrapped স্ক্রোলিং ব্যবহার করুন -scroll_wrapped_label=Wrapped স্ক্রোলিং - -spread_none.title=পেজ স্প্রেডগুলোতে যোগদান করবেন না -spread_none_label=Spreads নেই -spread_odd_label=বিজোড় Spreads -spread_even_label=জোড় Spreads - -# Document properties dialog box -document_properties.title=নথি বৈশিষ্ট্য… -document_properties_label=নথি বৈশিষ্ট্য… -document_properties_file_name=ফাইলের নাম: -document_properties_file_size=ফাইলের আকার: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} কেবি ({{size_b}} বাইট) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} এমবি ({{size_b}} বাইট) -document_properties_title=শিরোনাম: -document_properties_author=লেখক: -document_properties_subject=বিষয়: -document_properties_keywords=কীওয়ার্ড: -document_properties_creation_date=তৈরির তারিখ: -document_properties_modification_date=পরিবর্তনের তারিখ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=প্রস্তুতকারক: -document_properties_producer=পিডিএফ প্রস্তুতকারক: -document_properties_version=পিডিএফ সংষ্করণ: -document_properties_page_count=মোট পাতা: -document_properties_page_size=পাতার সাইজ: -document_properties_page_size_unit_inches=এর মধ্যে -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=উলম্ব -document_properties_page_size_orientation_landscape=অনুভূমিক -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=লেটার -document_properties_page_size_name_legal=লীগাল -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=হ্যাঁ -document_properties_linearized_no=না -document_properties_close=বন্ধ - -print_progress_message=মুদ্রণের জন্য নথি প্রস্তুত করা হচ্ছে… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=বাতিল - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=সাইডবার টগল করুন -toggle_sidebar_notification.title=সাইডবার টগল (নথিতে আউটলাইন/এটাচমেন্ট রয়েছে) -toggle_sidebar_label=সাইডবার টগল করুন -document_outline.title=নথির আউটলাইন দেখাও (সব আইটেম প্রসারিত/সঙ্কুচিত করতে ডবল ক্লিক করুন) -document_outline_label=নথির রূপরেখা -attachments.title=সংযুক্তি দেখাও -attachments_label=সংযুক্তি -thumbs.title=থাম্বনেইল সমূহ প্রদর্শন করুন -thumbs_label=থাম্বনেইল সমূহ -findbar.title=নথির মধ্যে খুঁজুন -findbar_label=খুঁজুন - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=পাতা {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=পাতা {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} পাতার থাম্বনেইল - -# Find panel button title and messages -find_input.title=খুঁজুন -find_input.placeholder=নথির মধ্যে খুঁজুন… -find_previous.title=বাক্যাংশের পূর্ববর্তী উপস্থিতি অনুসন্ধান -find_previous_label=পূর্ববর্তী -find_next.title=বাক্যাংশের পরবর্তী উপস্থিতি অনুসন্ধান -find_next_label=পরবর্তী -find_highlight=সব হাইলাইট করা হবে -find_match_case_label=অক্ষরের ছাঁদ মেলানো -find_entire_word_label=সম্পূর্ণ শব্দ -find_reached_top=পাতার শুরুতে পৌছে গেছে, নীচ থেকে আরম্ভ করা হয়েছে -find_reached_bottom=পাতার শেষে পৌছে গেছে, উপর থেকে আরম্ভ করা হয়েছে -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} এর {{current}} মিল -find_match_count[two]={{total}} এর {{current}} মিল -find_match_count[few]={{total}} এর {{current}} মিল -find_match_count[many]={{total}} এর {{current}} মিল -find_match_count[other]={{total}} এর {{current}} মিল -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} এর বেশি মিল -find_match_count_limit[one]={{limit}} এর বেশি মিল -find_match_count_limit[two]={{limit}} এর বেশি মিল -find_match_count_limit[few]={{limit}} এর বেশি মিল -find_match_count_limit[many]={{limit}} এর বেশি মিল -find_match_count_limit[other]={{limit}} এর বেশি মিল -find_not_found=বাক্যাংশ পাওয়া যায়নি - -# Error panel labels -error_more_info=আরও তথ্য -error_less_info=কম তথ্য -error_close=বন্ধ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=বার্তা: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=নথি: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=লাইন: {{line}} -rendering_error=পাতা উপস্থাপনার সময় ত্রুটি দেখা দিয়েছে। - -# Predefined zoom values -page_scale_width=পাতার প্রস্থ -page_scale_fit=পাতা ফিট করুন -page_scale_auto=স্বয়ংক্রিয় জুম -page_scale_actual=প্রকৃত আকার -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=ত্রুটি -loading_error=পিডিএফ লোড করার সময় ত্রুটি দেখা দিয়েছে। -invalid_file_error=অকার্যকর অথবা ক্ষতিগ্রস্ত পিডিএফ ফাইল। -missing_file_error=নিখোঁজ PDF ফাইল। -unexpected_response_error=অপ্রত্যাশীত সার্ভার প্রতিক্রিয়া। - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} টীকা] -password_label=পিডিএফ ফাইলটি ওপেন করতে পাসওয়ার্ড দিন। -password_invalid=ভুল পাসওয়ার্ড। অনুগ্রহ করে আবার চেষ্টা করুন। -password_ok=ঠিক আছে -password_cancel=বাতিল - -printing_not_supported=সতর্কতা: এই ব্রাউজারে মুদ্রণ সম্পূর্ণভাবে সমর্থিত নয়। -printing_not_ready=সতর্কীকরণ: পিডিএফটি মুদ্রণের জন্য সম্পূর্ণ লোড হয়নি। -web_fonts_disabled=ওয়েব ফন্ট নিষ্ক্রিয়: সংযুক্ত পিডিএফ ফন্ট ব্যবহার করা যাচ্ছে না। -document_colors_not_allowed=পিডিএফ ডকুমেন্টকে তাদের নিজস্ব রঙ ব্যবহারে অনুমতি নেই: 'পাতা তাদের নিজেস্ব রঙ নির্বাচন করতে অনুমতি দিন' এই ব্রাউজারে নিষ্ক্রিয় রয়েছে। diff --git a/cookbook/static/pdfjs/locale/bo/viewer.properties b/cookbook/static/pdfjs/locale/bo/viewer.properties deleted file mode 100644 index d35c453dd..000000000 --- a/cookbook/static/pdfjs/locale/bo/viewer.properties +++ /dev/null @@ -1,245 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=དྲ་ངོས་སྔོན་མ -previous_label=སྔོན་མ -next.title=དྲ་ངོས་རྗེས་མ -next_label=རྗེས་མ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ཤོག་ངོས -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=of {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Zoom Out -zoom_out_label=Zoom Out -zoom_in.title=Zoom In -zoom_in_label=Zoom In -zoom.title=Zoom -presentation_mode.title=Switch to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Open File -open_file_label=Open -print.title=Print -print_label=Print -download.title=Download -download_label=Download -bookmark.title=Current view (copy or open in new window) -bookmark_label=Current View - -# Secondary toolbar and context menu -tools.title=Tools -tools_label=Tools -first_page.title=Go to First Page -first_page.label=Go to First Page -first_page_label=Go to First Page -last_page.title=Go to Last Page -last_page.label=Go to Last Page -last_page_label=Go to Last Page -page_rotate_cw.title=Rotate Clockwise -page_rotate_cw.label=Rotate Clockwise -page_rotate_cw_label=Rotate Clockwise -page_rotate_ccw.title=Rotate Counterclockwise -page_rotate_ccw.label=Rotate Counterclockwise -page_rotate_ccw_label=Rotate Counterclockwise - -cursor_text_select_tool.title=Enable Text Selection Tool -cursor_text_select_tool_label=Text Selection Tool -cursor_hand_tool.title=Enable Hand Tool -cursor_hand_tool_label=Hand Tool - -scroll_vertical.title=Use Vertical Scrolling -scroll_vertical_label=Vertical Scrolling -scroll_horizontal.title=Use Horizontal Scrolling -scroll_horizontal_label=Horizontal Scrolling -scroll_wrapped.title=Use Wrapped Scrolling -scroll_wrapped_label=Wrapped Scrolling - -spread_none.title=Do not join page spreads -spread_none_label=No Spreads -spread_odd.title=Join page spreads starting with odd-numbered pages -spread_odd_label=Odd Spreads -spread_even.title=Join page spreads starting with even-numbered pages -spread_even_label=Even Spreads - -# Document properties dialog box -document_properties.title=Document Properties… -document_properties_label=Document Properties… -document_properties_file_name=File name: -document_properties_file_size=File size: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Title: -document_properties_author=Author: -document_properties_subject=Subject: -document_properties_keywords=Keywords: -document_properties_creation_date=Creation Date: -document_properties_modification_date=Modification Date: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=PDF Producer: -document_properties_version=PDF Version: -document_properties_page_count=Page Count: -document_properties_page_size=Page Size: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=landscape -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Yes -document_properties_linearized_no=No -document_properties_close=Close - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancel - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggle Sidebar -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Toggle Sidebar -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Document Outline -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Show Thumbnails -thumbs_label=Thumbnails -findbar.title=Find in Document -findbar_label=Find - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Page {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail of Page {{page}} - -# Find panel button title and messages -find_input.title=Find -find_input.placeholder=Find in document… -find_previous.title=Find the previous occurrence of the phrase -find_previous_label=Previous -find_next.title=Find the next occurrence of the phrase -find_next_label=Next -find_highlight=Highlight all -find_match_case_label=Match case -find_entire_word_label=Whole words -find_reached_top=Reached top of document, continued from bottom -find_reached_bottom=Reached end of document, continued from top -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} of {{total}} match -find_match_count[two]={{current}} of {{total}} matches -find_match_count[few]={{current}} of {{total}} matches -find_match_count[many]={{current}} of {{total}} matches -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=More than {{limit}} matches -find_match_count_limit[one]=More than {{limit}} match -find_match_count_limit[two]=More than {{limit}} matches -find_match_count_limit[few]=More than {{limit}} matches -find_match_count_limit[many]=More than {{limit}} matches -find_match_count_limit[other]=More than {{limit}} matches -find_not_found=Phrase not found - -# Error panel labels -error_more_info=More Information -error_less_info=Less Information -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Line: {{line}} -rendering_error=An error occurred while rendering the page. - -# Predefined zoom values -page_scale_width=Page Width -page_scale_fit=Page Fit -page_scale_auto=Automatic Zoom -page_scale_actual=Actual Size -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=An error occurred while loading the PDF. -invalid_file_error=Invalid or corrupted PDF file. -missing_file_error=Missing PDF file. -unexpected_response_error=Unexpected server response. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Enter the password to open this PDF file. -password_invalid=Invalid password. Please try again. -password_ok=OK -password_cancel=Cancel - -printing_not_supported=Warning: Printing is not fully supported by this browser. -printing_not_ready=Warning: The PDF is not fully loaded for printing. -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. -document_colors_not_allowed=PDF documents are not allowed to use their own colors: “Allow pages to choose their own colors” is deactivated in the browser. diff --git a/cookbook/static/pdfjs/locale/br/viewer.properties b/cookbook/static/pdfjs/locale/br/viewer.properties deleted file mode 100644 index 14c2a5e4f..000000000 --- a/cookbook/static/pdfjs/locale/br/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pajenn a-raok -previous_label=A-raok -next.title=Pajenn war-lerc'h -next_label=War-lerc'h - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pajenn -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=eus {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} war {{pagesCount}}) - -zoom_out.title=Zoum bihanaat -zoom_out_label=Zoum bihanaat -zoom_in.title=Zoum brasaat -zoom_in_label=Zoum brasaat -zoom.title=Zoum -presentation_mode.title=Trec'haoliñ etrezek ar mod kinnigadenn -presentation_mode_label=Mod kinnigadenn -open_file.title=Digeriñ ur restr -open_file_label=Digeriñ ur restr -print.title=Moullañ -print_label=Moullañ -download.title=Pellgargañ -download_label=Pellgargañ -bookmark.title=Gwel bremanel (eilañ pe zigeriñ e-barzh ur prenestr nevez) -bookmark_label=Gwel bremanel - -# Secondary toolbar and context menu -tools.title=Ostilhoù -tools_label=Ostilhoù -first_page.title=Mont d'ar bajenn gentañ -first_page.label=Mont d'ar bajenn gentañ -first_page_label=Mont d'ar bajenn gentañ -last_page.title=Mont d'ar bajenn diwezhañ -last_page.label=Mont d'ar bajenn diwezhañ -last_page_label=Mont d'ar bajenn diwezhañ -page_rotate_cw.title=C'hwelañ gant roud ar bizied -page_rotate_cw.label=C'hwelañ gant roud ar bizied -page_rotate_cw_label=C'hwelañ gant roud ar bizied -page_rotate_ccw.title=C'hwelañ gant roud gin ar bizied -page_rotate_ccw.label=C'hwelañ gant roud gin ar bizied -page_rotate_ccw_label=C'hwelañ gant roud gin ar bizied - -cursor_text_select_tool.title=Gweredekaat an ostilh diuzañ testenn -cursor_text_select_tool_label=Ostilh diuzañ testenn -cursor_hand_tool.title=Gweredekaat an ostilh dorn -cursor_hand_tool_label=Ostilh dorn - -scroll_vertical.title=Arverañ an dibunañ a-blom -scroll_vertical_label=Dibunañ a-serzh -scroll_horizontal.title=Arverañ an dibunañ a-blaen -scroll_horizontal_label=Dibunañ a-blaen -scroll_wrapped.title=Arverañ an dibunañ paket -scroll_wrapped_label=Dibunañ paket - -spread_none.title=Chom hep stagañ ar skignadurioù -spread_none_label=Skignadenn ebet -spread_odd.title=Lakaat ar pajennadoù en ur gregiñ gant ar pajennoù ampar -spread_odd_label=Pajennoù ampar -spread_even.title=Lakaat ar pajennadoù en ur gregiñ gant ar pajennoù par -spread_even_label=Pajennoù par - -# Document properties dialog box -document_properties.title=Perzhioù an teul… -document_properties_label=Perzhioù an teul… -document_properties_file_name=Anv restr : -document_properties_file_size=Ment ar restr : -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} Ke ({{size_b}} eizhbit) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} Me ({{size_b}} eizhbit) -document_properties_title=Titl : -document_properties_author=Aozer : -document_properties_subject=Danvez : -document_properties_keywords=Gerioù-alc'hwez : -document_properties_creation_date=Deiziad krouiñ : -document_properties_modification_date=Deiziad kemmañ : -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Krouer : -document_properties_producer=Kenderc'her PDF : -document_properties_version=Handelv PDF : -document_properties_page_count=Niver a bajennoù : -document_properties_page_size=Ment ar bajenn: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=poltred -document_properties_page_size_orientation_landscape=gweledva -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Lizher -document_properties_page_size_name_legal=Lezennel -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Gwel Web Herrek: -document_properties_linearized_yes=Ya -document_properties_linearized_no=Ket -document_properties_close=Serriñ - -print_progress_message=O prientiñ an teul evit moullañ... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Nullañ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Diskouez/kuzhat ar varrenn gostez -toggle_sidebar_notification.title=Trec'haoliñ ar verrenn-gostez (ur steuñv pe stagadennoù a zo en teul) -toggle_sidebar_label=Diskouez/kuzhat ar varrenn gostez -document_outline.title=Diskouez steuñv an teul (daouglikit evit brasaat/bihanaat an holl elfennoù) -document_outline_label=Sinedoù an teuliad -attachments.title=Diskouez ar c'henstagadurioù -attachments_label=Kenstagadurioù -thumbs.title=Diskouez ar melvennoù -thumbs_label=Melvennoù -findbar.title=Klask e-barzh an teuliad -findbar_label=Klask - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pajenn {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pajenn {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Melvenn ar bajenn {{page}} - -# Find panel button title and messages -find_input.title=Klask -find_input.placeholder=Klask e-barzh an teuliad -find_previous.title=Kavout an tamm frazenn kent o klotañ ganti -find_previous_label=Kent -find_next.title=Kavout an tamm frazenn war-lerc'h o klotañ ganti -find_next_label=War-lerc'h -find_highlight=Usskediñ pep tra -find_match_case_label=Teurel evezh ouzh ar pennlizherennoù -find_entire_word_label=Gerioù a-bezh -find_reached_top=Tizhet eo bet derou ar bajenn, kenderc'hel diouzh an diaz -find_reached_bottom=Tizhet eo bet dibenn ar bajenn, kenderc'hel diouzh ar c'hrec'h -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=Klotadenn {{current}} war {{total}} -find_match_count[two]=Klotadenn {{current}} war {{total}} -find_match_count[few]=Klotadenn {{current}} war {{total}} -find_match_count[many]=Klotadenn {{current}} war {{total}} -find_match_count[other]=Klotadenn {{current}} war {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Muioc'h eget {{limit}} a glotadennoù -find_match_count_limit[one]=Muioc'h eget {{limit}} a glotadennoù -find_match_count_limit[two]=Muioc'h eget {{limit}} a glotadennoù -find_match_count_limit[few]=Muioc'h eget {{limit}} a glotadennoù -find_match_count_limit[many]=Muioc'h eget {{limit}} a glotadennoù -find_match_count_limit[other]=Muioc'h eget {{limit}} a glotadennoù -find_not_found=N'haller ket kavout ar frazenn - -# Error panel labels -error_more_info=Muioc'h a ditouroù -error_less_info=Nebeutoc'h a ditouroù -error_close=Serriñ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js handelv {{version}} (kempunadur : {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Kemennadenn : {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Torn : {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Restr : {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linenn : {{line}} -rendering_error=Degouezhet ez eus bet ur fazi e-pad skrammañ ar bajennad. - -# Predefined zoom values -page_scale_width=Led ar bajenn -page_scale_fit=Pajenn a-bezh -page_scale_auto=Zoum emgefreek -page_scale_actual=Ment wir -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fazi -loading_error=Degouezhet ez eus bet ur fazi e-pad kargañ ar PDF. -invalid_file_error=Restr PDF didalvoudek pe kontronet. -missing_file_error=Restr PDF o vankout. -unexpected_response_error=Respont dic'hortoz a-berzh an dafariad - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Notennañ] -password_label=Enankit ar ger-tremen evit digeriñ ar restr PDF-mañ. -password_invalid=Ger-tremen didalvoudek. Klaskit en-dro mar plij. -password_ok=Mat eo -password_cancel=Nullañ - -printing_not_supported=Kemenn : N'eo ket skoret penn-da-benn ar moullañ gant ar merdeer-mañ. -printing_not_ready=Kemenn : N'hall ket bezañ moullet ar restr PDF rak n'eo ket karget penn-da-benn. -web_fonts_disabled=Diweredekaet eo an nodrezhoù web : n'haller ket arverañ an nodrezhoù PDF enframmet. -document_colors_not_allowed=N'eo ket aotreet an teuliadoù PDF da arverañ o livioù dezho : diweredekaet eo “Aotren ar pajennoù da zibab o livioù dezho” e-barzh ar merdeer. diff --git a/cookbook/static/pdfjs/locale/brx/viewer.properties b/cookbook/static/pdfjs/locale/brx/viewer.properties deleted file mode 100644 index 234bca1fe..000000000 --- a/cookbook/static/pdfjs/locale/brx/viewer.properties +++ /dev/null @@ -1,211 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=आगोलनि बिलाइ -previous_label=आगोलनि -next.title=उननि बिलाइ -next_label=उननि - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=बिलाइ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} नि -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} नि {{pageNumber}}) - -zoom_out.title=फिसायै जुम खालाम -zoom_out_label=फिसायै जुम खालाम -zoom_in.title=गेदेरै जुम खालाम -zoom_in_label=गेदेरै जुम खालाम -zoom.title=जुम खालाम -presentation_mode.title=दिन्थिफुंनाय म'डआव थां -presentation_mode_label=दिन्थिफुंनाय म'ड -open_file.title=फाइलखौ खेव -open_file_label=खेव -print.title=साफाय -print_label=साफाय -download.title=डाउनल'ड खालाम -download_label=डाउनल'ड खालाम -bookmark.title=दानि नुथाय (गोदान उइन्ड'आव कपि खालाम एबा खेव) -bookmark_label=दानि नुथाय - -# Secondary toolbar and context menu -tools.title=टुल -tools_label=टुल -first_page.title=गिबि बिलाइआव थां -first_page.label=गिबि बिलाइआव थां -first_page_label=गिबि बिलाइआव थां -last_page.title=जोबथा बिलाइआव थां -last_page.label=जोबथा बिलाइआव थां -last_page_label=जोबथा बिलाइआव थां -page_rotate_cw.title=घरि गिदिंनाय फार्से फिदिं -page_rotate_cw.label=घरि गिदिंनाय फार्से फिदिं -page_rotate_cw_label=घरि गिदिंनाय फार्से फिदिं -page_rotate_ccw.title=घरि गिदिंनाय उल्था फार्से फिदिं -page_rotate_ccw.label=घरि गिदिंनाय उल्था फार्से फिदिं -page_rotate_ccw_label=घरि गिदिंनाय उल्था फार्से फिदिं - - - - -# Document properties dialog box -document_properties.title=फोरमान बिलाइनि आखुथाय... -document_properties_label=फोरमान बिलाइनि आखुथाय... -document_properties_file_name=फाइलनि मुं: -document_properties_file_size=फाइलनि महर: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} बाइट) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} बाइट) -document_properties_title=बिमुं: -document_properties_author=लिरगिरि: -document_properties_subject=आयदा: -document_properties_keywords=गाहाय सोदोब: -document_properties_creation_date=सोरजिनाय अक्ट': -document_properties_modification_date=सुद्रायनाय अक्ट': -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=सोरजिग्रा: -document_properties_producer=PDF दिहुनग्रा: -document_properties_version=PDF बिसान: -document_properties_page_count=बिलाइनि हिसाब: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=प'र्ट्रेट -document_properties_page_size_orientation_landscape=लेण्डस्केप -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=लायजाम -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=नंगौ -document_properties_linearized_no=नङा -document_properties_close=बन्द खालाम - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=नेवसि - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=टग्गल साइडबार -toggle_sidebar_label=टग्गल साइडबार -document_outline_label=फोरमान बिलाइ सिमा हांखो -attachments.title=नांजाब होनायखौ दिन्थि -attachments_label=नांजाब होनाय -thumbs.title=थामनेइलखौ दिन्थि -thumbs_label=थामनेइल -findbar.title=फोरमान बिलाइआव नागिरना दिहुन -findbar_label=नायगिरना दिहुन - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=बिलाइ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=बिलाइ {{page}} नि थामनेइल - -# Find panel button title and messages -find_input.title=नायगिरना दिहुन -find_input.placeholder=फोरमान बिलाइआव नागिरना दिहुन... -find_previous.title=बाथ्रा खोन्दोबनि सिगांनि नुजाथिनायखौ नागिर -find_previous_label=आगोलनि -find_next.title=बाथ्रा खोन्दोबनि उननि नुजाथिनायखौ नागिर -find_next_label=उननि -find_highlight=गासैखौबो हाइलाइट खालाम -find_match_case_label=गोरोबनाय केस -find_reached_top=थालो निफ्राय जागायनानै फोरमान बिलाइनि बिजौआव सौहैबाय -find_reached_bottom=बिजौ निफ्राय जागायनानै फोरमान बिलाइनि बिजौआव सौहैबाय -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_not_found=बाथ्रा खोन्दोब मोनाखै - -# Error panel labels -error_more_info=गोबां फोरमायथिहोग्रा -error_less_info=खम फोरमायथिहोग्रा -error_close=बन्द खालाम -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=खौरां: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=स्टेक: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=फाइल: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=सारि: {{line}} -rendering_error=बिलाइखौ राव सोलायनाय समाव मोनसे गोरोन्थि जादों। - -# Predefined zoom values -page_scale_width=बिलाइनि गुवार -page_scale_fit=बिलाइ गोरोबनाय -page_scale_auto=गावनोगाव जुम -page_scale_actual=थार महर -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=गोरोन्थि -loading_error=PDF ल'ड खालामनाय समाव मोनसे गोरोन्थि जाबाय। -invalid_file_error=बाहायजायै एबा गाज्रि जानाय PDF फाइल -missing_file_error=गोमानाय PDF फाइल -unexpected_response_error=मिजिंथियै सार्भार फिननाय। - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} सोदोब बेखेवनाय] -password_label=बे PDF फाइलखौ खेवनो पासवार्ड हाबहो। -password_invalid=बाहायजायै पासवार्ड। अननानै फिन नाजा। -password_ok=OK -password_cancel=नेवसि - -printing_not_supported=सांग्रांथि: साफायनाया बे ब्राउजारजों आबुङै हेफाजाब होजाया। -printing_not_ready=सांग्रांथि: PDF खौ साफायनायनि थाखाय फुरायै ल'ड खालामाखै। -web_fonts_disabled=वेब फन्टखौ लोरबां खालामबाय: अरजाबहोनाय PDF फन्टखौ बाहायनो हायाखै। -document_colors_not_allowed=PDF फोरमान बिलाइखौ बिसोरनि निजि गाब बाहायनो गनायथि होनाय जाया: 'बिसोरनि निजि गाब बासिखनो बिलाइखौ गनायथि हो'-खौ ब्राउजारआव लोरबां खालामनाय जायो। diff --git a/cookbook/static/pdfjs/locale/bs/viewer.properties b/cookbook/static/pdfjs/locale/bs/viewer.properties deleted file mode 100644 index 6c2122b82..000000000 --- a/cookbook/static/pdfjs/locale/bs/viewer.properties +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Prethodna strana -previous_label=Prethodna -next.title=Sljedeća strna -next_label=Sljedeća - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Strana -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=od {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} od {{pagesCount}}) - -zoom_out.title=Umanji -zoom_out_label=Umanji -zoom_in.title=Uvećaj -zoom_in_label=Uvećaj -zoom.title=Uvećanje -presentation_mode.title=Prebaci se u prezentacijski režim -presentation_mode_label=Prezentacijski režim -open_file.title=Otvori fajl -open_file_label=Otvori -print.title=Štampaj -print_label=Štampaj -download.title=Preuzmi -download_label=Preuzmi -bookmark.title=Trenutni prikaz (kopiraj ili otvori u novom prozoru) -bookmark_label=Trenutni prikaz - -# Secondary toolbar and context menu -tools.title=Alati -tools_label=Alati -first_page.title=Idi na prvu stranu -first_page.label=Idi na prvu stranu -first_page_label=Idi na prvu stranu -last_page.title=Idi na zadnju stranu -last_page.label=Idi na zadnju stranu -last_page_label=Idi na zadnju stranu -page_rotate_cw.title=Rotiraj u smjeru kazaljke na satu -page_rotate_cw.label=Rotiraj u smjeru kazaljke na satu -page_rotate_cw_label=Rotiraj u smjeru kazaljke na satu -page_rotate_ccw.title=Rotiraj suprotno smjeru kazaljke na satu -page_rotate_ccw.label=Rotiraj suprotno smjeru kazaljke na satu -page_rotate_ccw_label=Rotiraj suprotno smjeru kazaljke na satu - -cursor_text_select_tool.title=Omogući alat za označavanje teksta -cursor_text_select_tool_label=Alat za označavanje teksta -cursor_hand_tool.title=Omogući ručni alat -cursor_hand_tool_label=Ručni alat - -# Document properties dialog box -document_properties.title=Svojstva dokumenta... -document_properties_label=Svojstva dokumenta... -document_properties_file_name=Naziv fajla: -document_properties_file_size=Veličina fajla: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajta) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajta) -document_properties_title=Naslov: -document_properties_author=Autor: -document_properties_subject=Predmet: -document_properties_keywords=Ključne riječi: -document_properties_creation_date=Datum kreiranja: -document_properties_modification_date=Datum promjene: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Kreator: -document_properties_producer=PDF stvaratelj: -document_properties_version=PDF verzija: -document_properties_page_count=Broj stranica: -document_properties_page_size=Veličina stranice: -document_properties_page_size_unit_inches=u -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=uspravno -document_properties_page_size_orientation_landscape=vodoravno -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Pismo -document_properties_page_size_name_legal=Pravni -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -document_properties_close=Zatvori - -print_progress_message=Pripremam dokument za štampu… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Otkaži - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Uključi/isključi bočnu traku -toggle_sidebar_notification.title=Uključi/isključi sidebar (dokument sadrži outline/priloge) -toggle_sidebar_label=Uključi/isključi bočnu traku -document_outline.title=Prikaži outline dokumenta (dvoklik za skupljanje/širenje svih stavki) -document_outline_label=Konture dokumenta -attachments.title=Prikaži priloge -attachments_label=Prilozi -thumbs.title=Prikaži thumbnailove -thumbs_label=Thumbnailovi -findbar.title=Pronađi u dokumentu -findbar_label=Pronađi - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Strana {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail strane {{page}} - -# Find panel button title and messages -find_input.title=Pronađi -find_input.placeholder=Pronađi u dokumentu… -find_previous.title=Pronađi prethodno pojavljivanje fraze -find_previous_label=Prethodno -find_next.title=Pronađi sljedeće pojavljivanje fraze -find_next_label=Sljedeće -find_highlight=Označi sve -find_match_case_label=Osjetljivost na karaktere -find_reached_top=Dostigao sam vrh dokumenta, nastavljam sa dna -find_reached_bottom=Dostigao sam kraj dokumenta, nastavljam sa vrha -find_not_found=Fraza nije pronađena - -# Error panel labels -error_more_info=Više informacija -error_less_info=Manje informacija -error_close=Zatvori -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Poruka: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fajl: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linija: {{line}} -rendering_error=Došlo je do greške prilikom renderiranja strane. - -# Predefined zoom values -page_scale_width=Širina strane -page_scale_fit=Uklopi stranu -page_scale_auto=Automatsko uvećanje -page_scale_actual=Stvarna veličina -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Greška -loading_error=Došlo je do greške prilikom učitavanja PDF-a. -invalid_file_error=Neispravan ili oštećen PDF fajl. -missing_file_error=Nedostaje PDF fajl. -unexpected_response_error=Neočekivani odgovor servera. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} pribilješka] -password_label=Upišite lozinku da biste otvorili ovaj PDF fajl. -password_invalid=Pogrešna lozinka. Pokušajte ponovo. -password_ok=OK -password_cancel=Otkaži - -printing_not_supported=Upozorenje: Štampanje nije u potpunosti podržano u ovom browseru. -printing_not_ready=Upozorenje: PDF nije u potpunosti učitan za štampanje. -web_fonts_disabled=Web fontovi su onemogućeni: nemoguće koristiti ubačene PDF fontove. -document_colors_not_allowed=PDF dokumentima nije dozvoljeno da koriste vlastite boje: 'Dozvoli stranicama da izaberu vlastite boje' je deaktivirano u browseru. diff --git a/cookbook/static/pdfjs/locale/ca/viewer.properties b/cookbook/static/pdfjs/locale/ca/viewer.properties deleted file mode 100644 index 924637aaf..000000000 --- a/cookbook/static/pdfjs/locale/ca/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pàgina anterior -previous_label=Anterior -next.title=Pàgina següent -next_label=Següent - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pàgina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Redueix -zoom_out_label=Redueix -zoom_in.title=Amplia -zoom_in_label=Amplia -zoom.title=Escala -presentation_mode.title=Canvia al mode de presentació -presentation_mode_label=Mode de presentació -open_file.title=Obre el fitxer -open_file_label=Obre -print.title=Imprimeix -print_label=Imprimeix -download.title=Baixa -download_label=Baixa -bookmark.title=Vista actual (copia o obre en una finestra nova) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Eines -tools_label=Eines -first_page.title=Vés a la primera pàgina -first_page.label=Vés a la primera pàgina -first_page_label=Vés a la primera pàgina -last_page.title=Vés a l'última pàgina -last_page.label=Vés a l'última pàgina -last_page_label=Vés a l'última pàgina -page_rotate_cw.title=Gira cap a la dreta -page_rotate_cw.label=Gira cap a la dreta -page_rotate_cw_label=Gira cap a la dreta -page_rotate_ccw.title=Gira cap a l'esquerra -page_rotate_ccw.label=Gira cap a l'esquerra -page_rotate_ccw_label=Gira cap a l'esquerra - -cursor_text_select_tool.title=Habilita l'eina de selecció de text -cursor_text_select_tool_label=Eina de selecció de text -cursor_hand_tool.title=Habilita l'eina de mà -cursor_hand_tool_label=Eina de mà - -scroll_vertical.title=Utilitza el desplaçament vertical -scroll_vertical_label=Desplaçament vertical -scroll_horizontal.title=Utilitza el desplaçament horitzontal -scroll_horizontal_label=Desplaçament horitzontal -scroll_wrapped.title=Activa el desplaçament continu -scroll_wrapped_label=Desplaçament continu - -spread_none.title=No agrupis les pàgines de dues en dues -spread_none_label=Una sola pàgina -spread_odd.title=Mostra dues pàgines començant per les pàgines de numeració senar -spread_odd_label=Doble pàgina (senar) -spread_even.title=Mostra dues pàgines començant per les pàgines de numeració parell -spread_even_label=Doble pàgina (parell) - -# Document properties dialog box -document_properties.title=Propietats del document… -document_properties_label=Propietats del document… -document_properties_file_name=Nom del fitxer: -document_properties_file_size=Mida del fitxer: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Títol: -document_properties_author=Autor: -document_properties_subject=Assumpte: -document_properties_keywords=Paraules clau: -document_properties_creation_date=Data de creació: -document_properties_modification_date=Data de modificació: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=Generador de PDF: -document_properties_version=Versió de PDF: -document_properties_page_count=Nombre de pàgines: -document_properties_page_size=Mida de la pàgina: -document_properties_page_size_unit_inches=polzades -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=apaïsat -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista web ràpida: -document_properties_linearized_yes=Sí -document_properties_linearized_no=No -document_properties_close=Tanca - -print_progress_message=S'està preparant la impressió del document… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancel·la - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Mostra/amaga la barra lateral -toggle_sidebar_notification.title=Mostra/amaga la barra lateral (el document conté un esquema o adjuncions) -toggle_sidebar_label=Mostra/amaga la barra lateral -document_outline.title=Mostra l'esquema del document (doble clic per ampliar/reduir tots els elements) -document_outline_label=Contorn del document -attachments.title=Mostra les adjuncions -attachments_label=Adjuncions -thumbs.title=Mostra les miniatures -thumbs_label=Miniatures -findbar.title=Cerca al document -findbar_label=Cerca - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pàgina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pàgina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de la pàgina {{page}} - -# Find panel button title and messages -find_input.title=Cerca -find_input.placeholder=Cerca al document… -find_previous.title=Cerca l'anterior coincidència de l'expressió -find_previous_label=Anterior -find_next.title=Cerca la següent coincidència de l'expressió -find_next_label=Següent -find_highlight=Ressalta-ho tot -find_match_case_label=Distingeix entre majúscules i minúscules -find_entire_word_label=Paraules senceres -find_reached_top=S'ha arribat al principi del document, es continua pel final -find_reached_bottom=S'ha arribat al final del document, es continua pel principi -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidència -find_match_count[two]={{current}} de {{total}} coincidències -find_match_count[few]={{current}} de {{total}} coincidències -find_match_count[many]={{current}} de {{total}} coincidències -find_match_count[other]={{current}} de {{total}} coincidències -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Més de {{limit}} coincidències -find_match_count_limit[one]=Més d'{{limit}} coincidència -find_match_count_limit[two]=Més de {{limit}} coincidències -find_match_count_limit[few]=Més de {{limit}} coincidències -find_match_count_limit[many]=Més de {{limit}} coincidències -find_match_count_limit[other]=Més de {{limit}} coincidències -find_not_found=No s'ha trobat l'expressió - -# Error panel labels -error_more_info=Més informació -error_less_info=Menys informació -error_close=Tanca -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (muntatge: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Missatge: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fitxer: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Línia: {{line}} -rendering_error=S'ha produït un error mentre es renderitzava la pàgina. - -# Predefined zoom values -page_scale_width=Amplària de la pàgina -page_scale_fit=Ajusta la pàgina -page_scale_auto=Zoom automàtic -page_scale_actual=Mida real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=S'ha produït un error en carregar el PDF. -invalid_file_error=El fitxer PDF no és vàlid o està malmès. -missing_file_error=Falta el fitxer PDF. -unexpected_response_error=Resposta inesperada del servidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotació {{type}}] -password_label=Introduïu la contrasenya per obrir aquest fitxer PDF. -password_invalid=La contrasenya no és vàlida. Torneu-ho a provar. -password_ok=D'acord -password_cancel=Cancel·la - -printing_not_supported=Avís: la impressió no és plenament funcional en aquest navegador. -printing_not_ready=Atenció: el PDF no s'ha acabat de carregar per imprimir-lo. -web_fonts_disabled=Els tipus de lletra web estan desactivats: no es poden utilitzar els tipus de lletra incrustats al PDF. -document_colors_not_allowed=Els documents PDF no poden usar els seus colors propis: «Permet a les pàgines triar els colors propis» es troba desactivat al navegador. diff --git a/cookbook/static/pdfjs/locale/cak/viewer.properties b/cookbook/static/pdfjs/locale/cak/viewer.properties deleted file mode 100644 index c105d8252..000000000 --- a/cookbook/static/pdfjs/locale/cak/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Jun kan ruxaq -previous_label=Chuwäch -next.title=Jun chik ruxaq -next_label=Jun chik - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Ruxaq -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=richin {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} richin {{pagesCount}}) - -zoom_out.title=Tich'utinirisäx -zoom_out_label=Tich'utinirisäx -zoom_in.title=Tinimirisäx -zoom_in_label=Tinimirisäx -zoom.title=Sum -presentation_mode.title=Tijal ri rub'anikil niwachin -presentation_mode_label=Pa rub'eyal niwachin -open_file.title=Tijaq yakb'äl -open_file_label=Tijaq -print.title=Titz'ajb'äx -print_label=Titz'ajb'äx -download.title=Tiqasäx -download_label=Tiqasäx -bookmark.title=Rutz'etik wakami (tiwachib'ëx o tijaq pa jun k'ak'a' tzuwäch) -bookmark_label=Rutzub'al wakami - -# Secondary toolbar and context menu -tools.title=Samajib'äl -tools_label=Samajib'äl -first_page.title=Tib'e pa nab'ey ruxaq -first_page.label=Tib'e pa nab'ey ruxaq -first_page_label=Tib'e pa nab'ey ruxaq -last_page.title=Tib'e pa ruk'isib'äl ruxaq -last_page.label=Tib'e pa ruk'isib'äl ruxaq -last_page_label=Tib'e pa ruk'isib'äl ruxaq -page_rotate_cw.title=Tisutïx pan ajkiq'a' -page_rotate_cw.label=Tisutïx pan ajkiq'a' -page_rotate_cw_label=Tisutïx pan ajkiq'a' -page_rotate_ccw.title=Tisutïx pan ajxokon -page_rotate_ccw.label=Tisutïx pan ajxokon -page_rotate_ccw_label=Tisutïx pan ajxokon - -cursor_text_select_tool.title=Titzij ri rusamajib'al Rucha'ik Rucholajem Tzij -cursor_text_select_tool_label=Rusamajib'al Rucha'ik Rucholajem Tzij -cursor_hand_tool.title=Titzij ri q'ab'aj samajib'äl -cursor_hand_tool_label=Q'ab'aj Samajib'äl - -scroll_vertical.title=Tokisäx Pa'äl Q'axanem -scroll_vertical_label=Pa'äl Q'axanem -scroll_horizontal.title=Tokisäx Kotz'öl Q'axanem -scroll_horizontal_label=Kotz'öl Q'axanem -scroll_wrapped.title=Tokisäx Tzub'aj Q'axanem -scroll_wrapped_label=Tzub'aj Q'axanem - -spread_none.title=Man ketun taq ruxaq pa rub'eyal wuj -spread_none_label=Majun Rub'eyal -spread_odd.title=Ke'atunu' ri taq ruxaq rik'in natikirisaj rik'in jun man k'ulaj ta rajilab'al -spread_odd_label=Man K'ulaj Ta Rub'eyal -spread_even.title=Ke'atunu' ri taq ruxaq rik'in natikirisaj rik'in jun k'ulaj rajilab'al -spread_even_label=K'ulaj Rub'eyal - -# Document properties dialog box -document_properties.title=Taq richinil wuj… -document_properties_label=Taq richinil wuj… -document_properties_file_name=Rub'i' yakb'äl: -document_properties_file_size=Runimilem yakb'äl: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=B'i'aj: -document_properties_author=B'anel: -document_properties_subject=Taqikil: -document_properties_keywords=Kixe'el taq tzij: -document_properties_creation_date=Ruq'ijul xtz'uk: -document_properties_modification_date=Ruq'ijul xjalwachïx: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Q'inonel: -document_properties_producer=PDF b'anöy: -document_properties_version=PDF ruwäch: -document_properties_page_count=Jarupe' ruxaq: -document_properties_page_size=Runimilem ri Ruxaq: -document_properties_page_size_unit_inches=pa -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=rupalem -document_properties_page_size_orientation_landscape=rukotz'olem -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Loman wuj -document_properties_page_size_name_legal=Nïm wuj -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Anin Rutz'etik Ajk'amaya'l: -document_properties_linearized_yes=Ja' -document_properties_linearized_no=Mani -document_properties_close=Titz'apïx - -print_progress_message=Ruchojmirisaxik wuj richin nitz'ajb'äx… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Tiq'at - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Tijal ri ajxikin kajtz'ik -toggle_sidebar_notification.title=Tik'ex ri ajxikin yuqkajtz'ik (ri wuj eruk'wan taq ruchi'/taqoj taq yakb'äl) -toggle_sidebar_label=Tijal ri ajxikin kajtz'ik -document_outline.title=Tik'ut pe ruch'akulal wuj (kamul-pitz'oj richin nirik'/nich'utinirisäx ronojel ruch'akulal) -document_outline_label=Ruch'akulal wuj -attachments.title=Kek'ut pe ri taq taqoj -attachments_label=Taq taqoj -thumbs.title=Kek'ut pe taq ch'utiq -thumbs_label=Koköj -findbar.title=Tikanöx chupam ri wuj -findbar_label=Tikanöx - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Ruxaq {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Ruxaq {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Ruch'utinirisaxik ruxaq {{page}} - -# Find panel button title and messages -find_input.title=Tikanöx -find_input.placeholder=Tikanöx pa wuj… -find_previous.title=Tib'an b'enam pa ri jun kan q'aptzij xilitäj -find_previous_label=Jun kan -find_next.title=Tib'e pa ri jun chik pajtzij xilitäj -find_next_label=Jun chik -find_highlight=Tiya' retal ronojel -find_match_case_label=Tuk'äm ri' kik'in taq nimatz'ib' chuqa' taq ch'utitz'ib' -find_entire_word_label=Tz'aqät taq tzij -find_reached_top=Xb'eq'i' ri rutikirib'al wuj, xtikanöx k'a pa ruk'isib'äl -find_reached_bottom=Xb'eq'i' ri ruk'isib'äl wuj, xtikanöx pa rutikirib'al -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} richin {{total}} nuk'äm ri' -find_match_count[two]={{current}} richin {{total}} nikik'äm ki' -find_match_count[few]={{current}} richin {{total}} nikik'äm ki' -find_match_count[many]={{current}} richin {{total}} nikik'äm ki' -find_match_count[other]={{current}} richin {{total}} nikik'äm ki' -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=K'ïy chi re {{limit}} nikik'äm ki' -find_match_count_limit[one]=K'ïy chi re {{limit}} nuk'äm ri' -find_match_count_limit[two]=K'ïy chi re {{limit}} nikik'äm ki' -find_match_count_limit[few]=K'ïy chi re {{limit}} nikik'äm ki' -find_match_count_limit[many]=K'ïy chi re {{limit}} nikik'äm ki' -find_match_count_limit[other]=K'ïy chi re {{limit}} nikik'äm ki' -find_not_found=Man xilitäj ta ri pajtzij - -# Error panel labels -error_more_info=Ch'aqa' chik rutzijol -error_less_info=Jub'a' ok rutzijol -error_close=Titz'apïx -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Uqxa'n: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Tzub'aj: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Yakb'äl: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=B'ey: {{line}} -rendering_error=Xk'ulwachitäj jun sachoj toq ninuk'wachij ri ruxaq. - -# Predefined zoom values -page_scale_width=Ruwa ruxaq -page_scale_fit=Tinuk' ruxaq -page_scale_auto=Yonil chi nimilem -page_scale_actual=Runimilem -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Sachoj -loading_error=\u0020Xk'ulwachitäj jun sach'oj toq xnuk'ux ri PDF . -invalid_file_error=Man oke ta o yujtajinäq ri PDF yakb'äl. -missing_file_error=Man xilitäj ta ri PDF yakb'äl. -unexpected_response_error=Man oyob'en ta tz'olin rutzij ruk'u'x samaj. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Tz'ib'anïk] -password_label=Tatz'ib'aj ri ewan tzij richin najäq re yakb'äl re' pa PDF. -password_invalid=Man okel ta ri ewan tzij: Tatojtob'ej chik. -password_ok=Ütz -password_cancel=Tiq'at - -printing_not_supported=Rutzijol k'ayewal: Ri rutz'ajb'axik man koch'el ta ronojel pa re okik'amaya'l re'. -printing_not_ready=Rutzijol k'ayewal: Ri PDF man xusamajij ta ronojel richin nitz'ajb'äx. -web_fonts_disabled=E chupül ri taq ajk'amaya'l tz'ib': man tikirel ta nokisäx ri taq tz'ib' PDF pa ch'ikenïk -document_colors_not_allowed=Ri taq wuj pa PDF man ya'on ta q'ij chi ke richin nikokisaj ri taq kib'onil: “Tiya' q'ij chi ke ri taq ruxaq chi kekicha' ri taq kib'onil” chupun pa ri awokik'amaya'l. diff --git a/cookbook/static/pdfjs/locale/cs/viewer.properties b/cookbook/static/pdfjs/locale/cs/viewer.properties deleted file mode 100644 index 6310f637c..000000000 --- a/cookbook/static/pdfjs/locale/cs/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Přejde na předchozí stránku -previous_label=Předchozí -next.title=Přejde na následující stránku -next_label=Další - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Stránka -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=z {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} z {{pagesCount}}) - -zoom_out.title=Zmenší velikost -zoom_out_label=Zmenšit -zoom_in.title=Zvětší velikost -zoom_in_label=Zvětšit -zoom.title=Nastaví velikost -presentation_mode.title=Přepne do režimu prezentace -presentation_mode_label=Režim prezentace -open_file.title=Otevře soubor -open_file_label=Otevřít -print.title=Vytiskne dokument -print_label=Vytisknout -download.title=Stáhne dokument -download_label=Stáhnout -bookmark.title=Současný pohled (kopírovat nebo otevřít v novém okně) -bookmark_label=Současný pohled - -# Secondary toolbar and context menu -tools.title=Nástroje -tools_label=Nástroje -first_page.title=Přejde na první stránku -first_page.label=Přejít na první stránku -first_page_label=Přejít na první stránku -last_page.title=Přejde na poslední stránku -last_page.label=Přejít na poslední stránku -last_page_label=Přejít na poslední stránku -page_rotate_cw.title=Otočí po směru hodin -page_rotate_cw.label=Otočit po směru hodin -page_rotate_cw_label=Otočit po směru hodin -page_rotate_ccw.title=Otočí proti směru hodin -page_rotate_ccw.label=Otočit proti směru hodin -page_rotate_ccw_label=Otočit proti směru hodin - -cursor_text_select_tool.title=Povolí výběr textu -cursor_text_select_tool_label=Výběr textu -cursor_hand_tool.title=Povolí nástroj ručička -cursor_hand_tool_label=Nástroj ručička - -scroll_vertical.title=Použít svislé posouvání -scroll_vertical_label=Svislé posouvání -scroll_horizontal.title=Použít vodorovné posouvání -scroll_horizontal_label=Vodorovné posouvání -scroll_wrapped.title=Použít postupné posouvání -scroll_wrapped_label=Postupné posouvání - -spread_none.title=Nesdružovat stránky -spread_none_label=Žádné sdružení -spread_odd.title=Sdruží stránky s umístěním lichých vlevo -spread_odd_label=Sdružení stránek (liché vlevo) -spread_even.title=Sdruží stránky s umístěním sudých vlevo -spread_even_label=Sdružení stránek (sudé vlevo) - -# Document properties dialog box -document_properties.title=Vlastnosti dokumentu… -document_properties_label=Vlastnosti dokumentu… -document_properties_file_name=Název souboru: -document_properties_file_size=Velikost souboru: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajtů) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtů) -document_properties_title=Název stránky: -document_properties_author=Autor: -document_properties_subject=Předmět: -document_properties_keywords=Klíčová slova: -document_properties_creation_date=Datum vytvoření: -document_properties_modification_date=Datum úpravy: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Vytvořil: -document_properties_producer=Tvůrce PDF: -document_properties_version=Verze PDF: -document_properties_page_count=Počet stránek: -document_properties_page_size=Velikost stránky: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=na výšku -document_properties_page_size_orientation_landscape=na šířku -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Dopis -document_properties_page_size_name_legal=Právní dokument -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Rychlé zobrazování z webu: -document_properties_linearized_yes=Ano -document_properties_linearized_no=Ne -document_properties_close=Zavřít - -print_progress_message=Příprava dokumentu pro tisk… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Zrušit - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Postranní lišta -toggle_sidebar_notification.title=Přepne postranní lištu (dokument obsahuje osnovu/přílohy) -toggle_sidebar_label=Postranní lišta -document_outline.title=Zobrazí osnovu dokumentu (dvojité klepnutí rozbalí/sbalí všechny položky) -document_outline_label=Osnova dokumentu -attachments.title=Zobrazí přílohy -attachments_label=Přílohy -thumbs.title=Zobrazí náhledy -thumbs_label=Náhledy -findbar.title=Najde v dokumentu -findbar_label=Najít - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Strana {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Strana {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Náhled strany {{page}} - -# Find panel button title and messages -find_input.title=Najít -find_input.placeholder=Najít v dokumentu… -find_previous.title=Najde předchozí výskyt hledaného textu -find_previous_label=Předchozí -find_next.title=Najde další výskyt hledaného textu -find_next_label=Další -find_highlight=Zvýraznit -find_match_case_label=Rozlišovat velikost -find_entire_word_label=Celá slova -find_reached_top=Dosažen začátek dokumentu, pokračuje se od konce -find_reached_bottom=Dosažen konec dokumentu, pokračuje se od začátku -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}}. z {{total}} výskytu -find_match_count[two]={{current}}. z {{total}} výskytů -find_match_count[few]={{current}}. z {{total}} výskytů -find_match_count[many]={{current}}. z {{total}} výskytů -find_match_count[other]={{current}}. z {{total}} výskytů -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Více než {{limit}} výskytů -find_match_count_limit[one]=Více než {{limit}} výskyt -find_match_count_limit[two]=Více než {{limit}} výskyty -find_match_count_limit[few]=Více než {{limit}} výskyty -find_match_count_limit[many]=Více než {{limit}} výskytů -find_match_count_limit[other]=Více než {{limit}} výskytů -find_not_found=Hledaný text nenalezen - -# Error panel labels -error_more_info=Více informací -error_less_info=Méně informací -error_close=Zavřít -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (sestavení: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Zpráva: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Zásobník: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Soubor: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Řádek: {{line}} -rendering_error=Při vykreslování stránky nastala chyba. - -# Predefined zoom values -page_scale_width=Podle šířky -page_scale_fit=Podle výšky -page_scale_auto=Automatická velikost -page_scale_actual=Skutečná velikost -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Chyba -loading_error=Při nahrávání PDF nastala chyba. -invalid_file_error=Neplatný nebo chybný soubor PDF. -missing_file_error=Chybí soubor PDF. -unexpected_response_error=Neočekávaná odpověď serveru. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotace typu {{type}}] -password_label=Pro otevření PDF souboru vložte heslo. -password_invalid=Neplatné heslo. Zkuste to znovu. -password_ok=OK -password_cancel=Zrušit - -printing_not_supported=Upozornění: Tisk není v tomto prohlížeči plně podporován. -printing_not_ready=Upozornění: Dokument PDF není kompletně načten. -web_fonts_disabled=Webová písma jsou zakázána, proto není možné použít vložená písma PDF. -document_colors_not_allowed=PDF dokumenty nemají povoleno používat vlastní barvy: volba 'Povolit stránkám používat vlastní barvy' je v prohlížeči deaktivována. diff --git a/cookbook/static/pdfjs/locale/cy/viewer.properties b/cookbook/static/pdfjs/locale/cy/viewer.properties deleted file mode 100644 index dc4fb2ea4..000000000 --- a/cookbook/static/pdfjs/locale/cy/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Tudalen Flaenorol -previous_label=Blaenorol -next.title=Tudalen Nesaf -next_label=Nesaf - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Tudalen -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=o {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} o {{pagesCount}}) - -zoom_out.title=Chwyddo Allan -zoom_out_label=Chwyddo Allan -zoom_in.title=Chwyddo Mewn -zoom_in_label=Chwyddo Mewn -zoom.title=Chwyddo -presentation_mode.title=Newid i'r Modd Cyflwyno -presentation_mode_label=Modd Cyflwyno -open_file.title=Agor Ffeil -open_file_label=Agor -print.title=Argraffu -print_label=Argraffu -download.title=Llwyth -download_label=Llwytho i Lawr -bookmark.title=Golwg cyfredol (copïo neu agor ffenestr newydd) -bookmark_label=Golwg Gyfredol - -# Secondary toolbar and context menu -tools.title=Offer -tools_label=Offer -first_page.title=Mynd i'r Dudalen Gyntaf -first_page.label=Mynd i'r Dudalen Gyntaf -first_page_label=Mynd i'r Dudalen Gyntaf -last_page.title=Mynd i'r Dudalen Olaf -last_page.label=Mynd i'r Dudalen Olaf -last_page_label=Mynd i'r Dudalen Olaf -page_rotate_cw.title=Cylchdroi Clocwedd -page_rotate_cw.label=Cylchdroi Clocwedd -page_rotate_cw_label=Cylchdroi Clocwedd -page_rotate_ccw.title=Cylchdroi Gwrthglocwedd -page_rotate_ccw.label=Cylchdroi Gwrthglocwedd -page_rotate_ccw_label=Cylchdroi Gwrthglocwedd - -cursor_text_select_tool.title=Galluogi Dewis Offeryn Testun -cursor_text_select_tool_label=Offeryn Dewis Testun -cursor_hand_tool.title=Galluogi Offeryn Llaw -cursor_hand_tool_label=Offeryn Llaw - -scroll_vertical.title=Defnyddio Sgrolio Fertigol -scroll_vertical_label=Sgrolio Fertigol -scroll_horizontal.title=Defnyddio Sgrolio Fertigol -scroll_horizontal_label=Sgrolio Fertigol -scroll_wrapped.title=Defnyddio Sgrolio Amlapio -scroll_wrapped_label=Sgrolio Amlapio - -spread_none.title=Peidio uno taeniadau canol -spread_none_label=Dim Taeniadau -spread_odd.title=Uno taeniadau tudalen yn cychwyn gyda thudalennau odrif -spread_odd_label=Taeniadau Odrifau -spread_even.title=Uno taeniadau tudalen yn cychwyn gyda thudalennau eilrif -spread_even_label=Taeniadau Eilrif - -# Document properties dialog box -document_properties.title=Priodweddau Dogfen… -document_properties_label=Priodweddau Dogfen… -document_properties_file_name=Enw ffeil: -document_properties_file_size=Maint ffeil: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} beit) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} beit) -document_properties_title=Teitl: -document_properties_author=Awdur: -document_properties_subject=Pwnc: -document_properties_keywords=Allweddair: -document_properties_creation_date=Dyddiad Creu: -document_properties_modification_date=Dyddiad Addasu: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Crewr: -document_properties_producer=Cynhyrchydd PDF: -document_properties_version=Fersiwn PDF: -document_properties_page_count=Cyfrif Tudalen: -document_properties_page_size=Maint Tudalen: -document_properties_page_size_unit_inches=o fewn -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portread -document_properties_page_size_orientation_landscape=tirlun -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Llythyr -document_properties_page_size_name_legal=Cyfreithiol -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Golwg Gwe Cyflym: -document_properties_linearized_yes=Iawn -document_properties_linearized_no=Na -document_properties_close=Cau - -print_progress_message=Paratoi dogfen ar gyfer ei hargraffu… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Diddymu - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toglo'r Bar Ochr -toggle_sidebar_notification.title=Toglo'r Bar Ochr (mae'r ddogfen yn cynnwys outline/attachments) -toggle_sidebar_label=Toglo'r Bar Ochr -document_outline.title=Dangos Amlinell Dogfen (clic dwbl i ymestyn/cau pob eitem) -document_outline_label=Amlinelliad Dogfen -attachments.title=Dangos Atodiadau -attachments_label=Atodiadau -thumbs.title=Dangos Lluniau Bach -thumbs_label=Lluniau Bach -findbar.title=Canfod yn y Ddogfen -findbar_label=Canfod - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Tudalen {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Tudalen {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Llun Bach Tudalen {{page}} - -# Find panel button title and messages -find_input.title=Canfod -find_input.placeholder=Canfod yn y ddogfen… -find_previous.title=Canfod enghraifft flaenorol o'r ymadrodd -find_previous_label=Blaenorol -find_next.title=Canfod enghraifft nesaf yr ymadrodd -find_next_label=Nesaf -find_highlight=Amlygu popeth -find_match_case_label=Cydweddu maint -find_entire_word_label=Geiriau cyfan -find_reached_top=Wedi cyrraedd brig y dudalen, parhau o'r gwaelod -find_reached_bottom=Wedi cyrraedd diwedd y dudalen, parhau o'r brig -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} o {{total}} cydweddiad -find_match_count[two]={{current}} o {{total}} cydweddiad -find_match_count[few]={{current}} o {{total}} cydweddiad -find_match_count[many]={{current}} o {{total}} cydweddiad -find_match_count[other]={{current}} o {{total}} cydweddiad -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mwy na {{limit}} cydweddiad -find_match_count_limit[one]=Mwy na {{limit}} cydweddiad -find_match_count_limit[two]=Mwy na {{limit}} cydweddiad -find_match_count_limit[few]=Mwy na {{limit}} cydweddiad -find_match_count_limit[many]=Mwy na {{limit}} cydweddiad -find_match_count_limit[other]=Mwy na {{limit}} cydweddiad -find_not_found=Heb ganfod ymadrodd - -# Error panel labels -error_more_info=Rhagor o Wybodaeth -error_less_info=Llai o wybodaeth -error_close=Cau -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Neges: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stac: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ffeil: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Llinell: {{line}} -rendering_error=Digwyddodd gwall wrth adeiladu'r dudalen. - -# Predefined zoom values -page_scale_width=Lled Tudalen -page_scale_fit=Ffit Tudalen -page_scale_auto=Chwyddo Awtomatig -page_scale_actual=Maint Gwirioneddol -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Gwall -loading_error=Digwyddodd gwall wrth lwytho'r PDF. -invalid_file_error=Ffeil PDF annilys neu llwgr. -missing_file_error=Ffeil PDF coll. -unexpected_response_error=Ymateb annisgwyl gan y gweinydd. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anodiad {{type}} ] -password_label=Rhowch gyfrinair i agor y PDF. -password_invalid=Cyfrinair annilys. Ceisiwch eto. -password_ok=Iawn -password_cancel=Diddymu - -printing_not_supported=Rhybudd: Nid yw argraffu yn cael ei gynnal yn llawn gan y porwr. -printing_not_ready=Rhybudd: Nid yw'r PDF wedi ei lwytho'n llawn ar gyfer argraffu. -web_fonts_disabled=Ffontiau gwe wedi eu hanalluogi: methu defnyddio ffontiau PDF mewnblanedig. -document_colors_not_allowed=Nid oes caniatâd i ddogfennau PDF i ddefnyddio eu lliwiau eu hunain: Mae “Caniatáu i dudalennau ddefnyddio eu lliwiau eu hunain” wedi ei atal yn y porwr. diff --git a/cookbook/static/pdfjs/locale/da/viewer.properties b/cookbook/static/pdfjs/locale/da/viewer.properties deleted file mode 100644 index 4f05fd980..000000000 --- a/cookbook/static/pdfjs/locale/da/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Forrige side -previous_label=Forrige -next.title=Næste side -next_label=Næste - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Side -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=af {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} af {{pagesCount}}) - -zoom_out.title=Zoom ud -zoom_out_label=Zoom ud -zoom_in.title=Zoom ind -zoom_in_label=Zoom ind -zoom.title=Zoom -print.title=Udskriv -print_label=Udskriv -presentation_mode.title=Skift til fuldskærmsvisning -presentation_mode_label=Fuldskærmsvisning -open_file.title=Åbn fil -open_file_label=Åbn -download.title=Hent -download_label=Hent -bookmark.title=Aktuel visning (kopier eller åbn i et nyt vindue) -bookmark_label=Aktuel visning - -# Secondary toolbar and context menu -tools.title=Funktioner -tools_label=Funktioner -first_page.title=Gå til første side -first_page.label=Gå til første side -first_page_label=Gå til første side -last_page.title=Gå til sidste side -last_page.label=Gå til sidste side -last_page_label=Gå til sidste side -page_rotate_cw.title=Roter med uret -page_rotate_cw.label=Roter med uret -page_rotate_cw_label=Roter med uret -page_rotate_ccw.title=Roter mod uret -page_rotate_ccw.label=Roter mod uret -page_rotate_ccw_label=Roter mod uret - -cursor_text_select_tool.title=Aktiver markeringsværktøj -cursor_text_select_tool_label=Markeringsværktøj -cursor_hand_tool.title=Aktiver håndværktøj -cursor_hand_tool_label=Håndværktøj - -scroll_vertical.title=Brug vertikal scrolling -scroll_vertical_label=Vertikal scrolling -scroll_horizontal.title=Brug horisontal scrolling -scroll_horizontal_label=Horisontal scrolling -scroll_wrapped.title=Brug ombrudt scrolling -scroll_wrapped_label=Ombrudt scrolling - -spread_none.title=Vis enkeltsider -spread_none_label=Enkeltsider -spread_odd.title=Vis opslag med ulige sidenumre til venstre -spread_odd_label=Opslag med forside -spread_even.title=Vis opslag med lige sidenumre til venstre -spread_even_label=Opslag uden forside - -# Document properties dialog box -document_properties.title=Dokumentegenskaber… -document_properties_label=Dokumentegenskaber… -document_properties_file_name=Filnavn: -document_properties_file_size=Filstørrelse: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titel: -document_properties_author=Forfatter: -document_properties_subject=Emne: -document_properties_keywords=Nøgleord: -document_properties_creation_date=Oprettet: -document_properties_modification_date=Redigeret: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Program: -document_properties_producer=PDF-producent: -document_properties_version=PDF-version: -document_properties_page_count=Antal sider: -document_properties_page_size=Sidestørrelse: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=stående -document_properties_page_size_orientation_landscape=liggende -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Hurtig web-visning: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nej -document_properties_close=Luk - -print_progress_message=Forbereder dokument til udskrivning… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Annuller - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Slå sidepanel til eller fra -toggle_sidebar_notification.title=Slå sidepanel til eller fra (dokumentet indeholder disposition/vedhæftede filer) -toggle_sidebar_label=Slå sidepanel til eller fra -document_outline.title=Vis dokumentets disposition (dobbeltklik for at vise/skjule alle elementer) -document_outline_label=Dokument-disposition -attachments.title=Vis vedhæftede filer -attachments_label=Vedhæftede filer -thumbs.title=Vis miniaturer -thumbs_label=Miniaturer -findbar.title=Find i dokument -findbar_label=Find - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Side {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Side {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniature af side {{page}} - -# Find panel button title and messages -find_input.title=Find -find_input.placeholder=Find i dokument… -find_previous.title=Find den forrige forekomst -find_previous_label=Forrige -find_next.title=Find den næste forekomst -find_next_label=Næste -find_highlight=Fremhæv alle -find_match_case_label=Forskel på store og små bogstaver -find_entire_word_label=Hele ord -find_reached_top=Toppen af siden blev nået, fortsatte fra bunden -find_reached_bottom=Bunden af siden blev nået, fortsatte fra toppen -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} af {{total}} forekomst -find_match_count[two]={{current}} af {{total}} forekomster -find_match_count[few]={{current}} af {{total}} forekomster -find_match_count[many]={{current}} af {{total}} forekomster -find_match_count[other]={{current}} af {{total}} forekomster -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mere end {{limit}} forekomster -find_match_count_limit[one]=Mere end {{limit}} forekomst -find_match_count_limit[two]=Mere end {{limit}} forekomster -find_match_count_limit[few]=Mere end {{limit}} forekomster -find_match_count_limit[many]=Mere end {{limit}} forekomster -find_match_count_limit[other]=Mere end {{limit}} forekomster -find_not_found=Der blev ikke fundet noget - -# Error panel labels -error_more_info=Mere information -error_less_info=Mindre information -error_close=Luk -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Fejlmeddelelse: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fil: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linje: {{line}} -rendering_error=Der opstod en fejl ved generering af siden. - -# Predefined zoom values -page_scale_width=Sidebredde -page_scale_fit=Tilpas til side -page_scale_auto=Automatisk zoom -page_scale_actual=Faktisk størrelse -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fejl -loading_error=Der opstod en fejl ved indlæsning af PDF-filen. -invalid_file_error=PDF-filen er ugyldig eller ødelagt. -missing_file_error=Manglende PDF-fil. -unexpected_response_error=Uventet svar fra serveren. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}kommentar] -password_label=Angiv adgangskode til at åbne denne PDF-fil. -password_invalid=Ugyldig adgangskode. Prøv igen. -password_ok=OK -password_cancel=Fortryd - -printing_not_supported=Advarsel: Udskrivning er ikke fuldt understøttet af browseren. -printing_not_ready=Advarsel: PDF-filen er ikke fuldt indlæst til udskrivning. -web_fonts_disabled=Webskrifttyper er deaktiverede. De indlejrede skrifttyper i PDF-filen kan ikke anvendes. -document_colors_not_allowed=PDF-dokumenter må ikke bruge deres egne farver: 'Tillad sider at vælge deres egne farver' er deaktiveret i browseren. diff --git a/cookbook/static/pdfjs/locale/de/viewer.properties b/cookbook/static/pdfjs/locale/de/viewer.properties deleted file mode 100644 index 84240bb20..000000000 --- a/cookbook/static/pdfjs/locale/de/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Eine Seite zurück -previous_label=Zurück -next.title=Eine Seite vor -next_label=Vor - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Seite -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=von {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} von {{pagesCount}}) - -zoom_out.title=Verkleinern -zoom_out_label=Verkleinern -zoom_in.title=Vergrößern -zoom_in_label=Vergrößern -zoom.title=Zoom -presentation_mode.title=In Präsentationsmodus wechseln -presentation_mode_label=Präsentationsmodus -open_file.title=Datei öffnen -open_file_label=Öffnen -print.title=Drucken -print_label=Drucken -download.title=Dokument speichern -download_label=Speichern -bookmark.title=Aktuelle Ansicht (zum Kopieren oder Öffnen in einem neuen Fenster) -bookmark_label=Aktuelle Ansicht - -# Secondary toolbar and context menu -tools.title=Werkzeuge -tools_label=Werkzeuge -first_page.title=Erste Seite anzeigen -first_page.label=Erste Seite anzeigen -first_page_label=Erste Seite anzeigen -last_page.title=Letzte Seite anzeigen -last_page.label=Letzte Seite anzeigen -last_page_label=Letzte Seite anzeigen -page_rotate_cw.title=Im Uhrzeigersinn drehen -page_rotate_cw.label=Im Uhrzeigersinn drehen -page_rotate_cw_label=Im Uhrzeigersinn drehen -page_rotate_ccw.title=Gegen Uhrzeigersinn drehen -page_rotate_ccw.label=Gegen Uhrzeigersinn drehen -page_rotate_ccw_label=Gegen Uhrzeigersinn drehen - -cursor_text_select_tool.title=Textauswahl-Werkzeug aktivieren -cursor_text_select_tool_label=Textauswahl-Werkzeug -cursor_hand_tool.title=Hand-Werkzeug aktivieren -cursor_hand_tool_label=Hand-Werkzeug - -scroll_vertical.title=Seiten übereinander anordnen -scroll_vertical_label=Vertikale Seitenanordnung -scroll_horizontal.title=Seiten nebeneinander anordnen -scroll_horizontal_label=Horizontale Seitenanordnung -scroll_wrapped.title=Seiten neben- und übereinander anordnen, anhängig vom Platz -scroll_wrapped_label=Kombinierte Seitenanordnung - -spread_none.title=Seiten nicht nebeneinander anzeigen -spread_none_label=Einzelne Seiten -spread_odd.title=Jeweils eine ungerade und eine gerade Seite nebeneinander anzeigen -spread_odd_label=Ungerade + gerade Seite -spread_even.title=Jeweils eine gerade und eine ungerade Seite nebeneinander anzeigen -spread_even_label=Gerade + ungerade Seite - -# Document properties dialog box -document_properties.title=Dokumenteigenschaften -document_properties_label=Dokumenteigenschaften… -document_properties_file_name=Dateiname: -document_properties_file_size=Dateigröße: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} Bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} Bytes) -document_properties_title=Titel: -document_properties_author=Autor: -document_properties_subject=Thema: -document_properties_keywords=Stichwörter: -document_properties_creation_date=Erstelldatum: -document_properties_modification_date=Bearbeitungsdatum: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} {{time}} -document_properties_creator=Anwendung: -document_properties_producer=PDF erstellt mit: -document_properties_version=PDF-Version: -document_properties_page_count=Seitenzahl: -document_properties_page_size=Seitengröße: -document_properties_page_size_unit_inches=Zoll -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=Hochformat -document_properties_page_size_orientation_landscape=Querformat -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Schnelle Webanzeige: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nein -document_properties_close=Schließen - -print_progress_message=Dokument wird für Drucken vorbereitet… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Abbrechen - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Sidebar umschalten -toggle_sidebar_notification.title=Sidebar umschalten (Dokument enthält Dokumentstruktur/Anhänge) -toggle_sidebar_label=Sidebar umschalten -document_outline.title=Dokumentstruktur anzeigen (Doppelklicken, um alle Einträge aus- bzw. einzuklappen) -document_outline_label=Dokumentstruktur -attachments.title=Anhänge anzeigen -attachments_label=Anhänge -thumbs.title=Miniaturansichten anzeigen -thumbs_label=Miniaturansichten -findbar.title=Dokument durchsuchen -findbar_label=Suchen - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Seite {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Seite {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniaturansicht von Seite {{page}} - -# Find panel button title and messages -find_input.title=Suchen -find_input.placeholder=Im Dokument suchen… -find_previous.title=Vorheriges Vorkommen des Suchbegriffs finden -find_previous_label=Zurück -find_next.title=Nächstes Vorkommen des Suchbegriffs finden -find_next_label=Weiter -find_highlight=Alle hervorheben -find_match_case_label=Groß-/Kleinschreibung beachten -find_entire_word_label=Ganze Wörter -find_reached_top=Anfang des Dokuments erreicht, fahre am Ende fort -find_reached_bottom=Ende des Dokuments erreicht, fahre am Anfang fort -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} von {{total}} Übereinstimmung -find_match_count[two]={{current}} von {{total}} Übereinstimmungen -find_match_count[few]={{current}} von {{total}} Übereinstimmungen -find_match_count[many]={{current}} von {{total}} Übereinstimmungen -find_match_count[other]={{current}} von {{total}} Übereinstimmungen -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mehr als {{limit}} Übereinstimmungen -find_match_count_limit[one]=Mehr als {{limit}} Übereinstimmung -find_match_count_limit[two]=Mehr als {{limit}} Übereinstimmungen -find_match_count_limit[few]=Mehr als {{limit}} Übereinstimmungen -find_match_count_limit[many]=Mehr als {{limit}} Übereinstimmungen -find_match_count_limit[other]=Mehr als {{limit}} Übereinstimmungen -find_not_found=Suchbegriff nicht gefunden - -# Error panel labels -error_more_info=Mehr Informationen -error_less_info=Weniger Informationen -error_close=Schließen -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js Version {{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Nachricht: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Aufrufliste: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Datei: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Zeile: {{line}} -rendering_error=Beim Darstellen der Seite trat ein Fehler auf. - -# Predefined zoom values -page_scale_width=Seitenbreite -page_scale_fit=Seitengröße -page_scale_auto=Automatischer Zoom -page_scale_actual=Originalgröße -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Fehler -loading_error=Beim Laden der PDF-Datei trat ein Fehler auf. -invalid_file_error=Ungültige oder beschädigte PDF-Datei -missing_file_error=Fehlende PDF-Datei -unexpected_response_error=Unerwartete Antwort des Servers - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anlage: {{type}}] -password_label=Geben Sie zum Öffnen der PDF-Datei deren Passwort ein. -password_invalid=Falsches Passwort. Bitte versuchen Sie es erneut. -password_ok=OK -password_cancel=Abbrechen - -printing_not_supported=Warnung: Die Drucken-Funktion wird durch diesen Browser nicht vollständig unterstützt. -printing_not_ready=Warnung: Die PDF-Datei ist nicht vollständig geladen, dies ist für das Drucken aber empfohlen. -web_fonts_disabled=Web-Schriftarten sind deaktiviert: Eingebettete PDF-Schriftarten konnten nicht geladen werden. -document_colors_not_allowed=PDF-Dokumenten ist es nicht erlaubt, ihre eigenen Farben zu verwenden: 'Seiten das Verwenden von eigenen Farben erlauben' ist im Browser deaktiviert. diff --git a/cookbook/static/pdfjs/locale/dsb/viewer.properties b/cookbook/static/pdfjs/locale/dsb/viewer.properties deleted file mode 100644 index eb567ecb6..000000000 --- a/cookbook/static/pdfjs/locale/dsb/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pjerwjejšny bok -previous_label=Slědk -next.title=Pśiducy bok -next_label=Dalej - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Bok -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=z {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} z {{pagesCount}}) - -zoom_out.title=Pómjeńšyś -zoom_out_label=Pómjeńšyś -zoom_in.title=Pówětšyś -zoom_in_label=Pówětšyś -zoom.title=Skalěrowanje -presentation_mode.title=Do prezentaciskego modusa pśejś -presentation_mode_label=Prezentaciski modus -open_file.title=Dataju wócyniś -open_file_label=Wócyniś -print.title=Śišćaś -print_label=Śišćaś -download.title=Ześěgnuś -download_label=Ześěgnuś -bookmark.title=Aktualny naglěd (kopěrowaś abo w nowem woknje wócyniś) -bookmark_label=Aktualny naglěd - -# Secondary toolbar and context menu -tools.title=Rědy -tools_label=Rědy -first_page.title=K prědnemu bokoju -first_page.label=K prědnemu bokoju -first_page_label=K prědnemu bokoju -last_page.title=K slědnemu bokoju -last_page.label=K slědnemu bokoju -last_page_label=K slědnemu bokoju -page_rotate_cw.title=Wobwjertnuś ako špěra źo -page_rotate_cw.label=Wobwjertnuś ako špěra źo -page_rotate_cw_label=Wobwjertnuś ako špěra źo -page_rotate_ccw.title=Wobwjertnuś nawopaki ako špěra źo -page_rotate_ccw.label=Wobwjertnuś nawopaki ako špěra źo -page_rotate_ccw_label=Wobwjertnuś nawopaki ako špěra źo - -cursor_text_select_tool.title=Rěd za wuběranje teksta zmóžniś -cursor_text_select_tool_label=Rěd za wuběranje teksta -cursor_hand_tool.title=Rucny rěd zmóžniś -cursor_hand_tool_label=Rucny rěd - -scroll_vertical.title=Wertikalne suwanje wužywaś -scroll_vertical_label=Wertikalnje suwanje -scroll_horizontal.title=Horicontalne suwanje wužywaś -scroll_horizontal_label=Horicontalne suwanje -scroll_wrapped.title=Pózlažke suwanje wužywaś -scroll_wrapped_label=Pózlažke suwanje - -spread_none.title=Boki njezwězaś -spread_none_label=Žeden dwójny bok -spread_odd.title=Boki zachopinajucy z njerownymi bokami zwězaś -spread_odd_label=Njerowne boki -spread_even.title=Boki zachopinajucy z rownymi bokami zwězaś -spread_even_label=Rowne boki - -# Document properties dialog box -document_properties.title=Dokumentowe kakosći… -document_properties_label=Dokumentowe kakosći… -document_properties_file_name=Mě dataje: -document_properties_file_size=Wjelikosć dataje: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajtow) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtow) -document_properties_title=Titel: -document_properties_author=Awtor: -document_properties_subject=Tema: -document_properties_keywords=Klucowe słowa: -document_properties_creation_date=Datum napóranja: -document_properties_modification_date=Datum změny: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Awtor: -document_properties_producer=PDF-gótowaŕ: -document_properties_version=PDF-wersija: -document_properties_page_count=Licba bokow: -document_properties_page_size=Wjelikosć boka: -document_properties_page_size_unit_inches=col -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=wusoki format -document_properties_page_size_orientation_landscape=prěcny format -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Jo -document_properties_linearized_no=Ně -document_properties_close=Zacyniś - -print_progress_message=Dokument pśigótujo se za śišćanje… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Pśetergnuś - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Bócnicu pokazaś/schowaś -toggle_sidebar_notification.title=Bocnicu pśešaltowaś (dokument wopśimujo pśeglěd/pśipiski) -toggle_sidebar_label=Bócnicu pokazaś/schowaś -document_outline.title=Dokumentowe naraźenje pokazaś (dwójne kliknjenje, aby se wšykne zapiski pokazali/schowali) -document_outline_label=Dokumentowa struktura -attachments.title=Pśidanki pokazaś -attachments_label=Pśidanki -thumbs.title=Miniatury pokazaś -thumbs_label=Miniatury -findbar.title=W dokumenśe pytaś -findbar_label=Pytaś - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Bok {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Bok {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura boka {{page}} - -# Find panel button title and messages -find_input.title=Pytaś -find_input.placeholder=W dokumenśe pytaś… -find_previous.title=Pjerwjejšne wustupowanje pytańskego wuraza pytaś -find_previous_label=Slědk -find_next.title=Pśidujuce wustupowanje pytańskego wuraza pytaś -find_next_label=Dalej -find_highlight=Wšykne wuzwignuś -find_match_case_label=Na wjelikopisanje źiwaś -find_entire_word_label=Cełe słowa -find_reached_top=Zachopjeńk dokumenta dostany, pókšacujo se z kóńcom -find_reached_bottom=Kóńc dokumenta dostany, pókšacujo se ze zachopjeńkom -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} z {{total}} wótpowědnika -find_match_count[two]={{current}} z {{total}} wótpowědnikowu -find_match_count[few]={{current}} z {{total}} wótpowědnikow -find_match_count[many]={{current}} z {{total}} wótpowědnikow -find_match_count[other]={{current}} z {{total}} wótpowědnikow -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Wěcej ako {{limit}} wótpowědnikow -find_match_count_limit[one]=Wěcej ako {{limit}} wótpowědnik -find_match_count_limit[two]=Wěcej ako {{limit}} wótpowědnika -find_match_count_limit[few]=Wěcej ako {{limit}} wótpowědniki -find_match_count_limit[many]=Wěcej ako {{limit}} wótpowědnikow -find_match_count_limit[other]=Wěcej ako {{limit}} wótpowědnikow -find_not_found=Pytański wuraz njejo se namakał - -# Error panel labels -error_more_info=Wěcej informacijow -error_less_info=Mjenjej informacijow -error_close=Zacyniś -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Powěźenka: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Lisćina zawołanjow: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Dataja: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Smužka: {{line}} -rendering_error=Pśi zwobraznjanju boka jo zmólka nastała. - -# Predefined zoom values -page_scale_width=Šyrokosć boka -page_scale_fit=Wjelikosć boka -page_scale_auto=Awtomatiske skalěrowanje -page_scale_actual=Aktualna wjelikosć -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Zmólka -loading_error=Pśi zacytowanju PDF jo zmólka nastała. -invalid_file_error=Njepłaśiwa abo wobškóźona PDF-dataja. -missing_file_error=Felujuca PDF-dataja. -unexpected_response_error=Njewócakane serwerowe wótegrono. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Typ pśipiskow: {{type}}] -password_label=Zapódajśo gronidło, aby PDF-dataju wócynił. -password_invalid=Njepłaśiwe gronidło. Pšosym wopytajśo hyšći raz. -password_ok=W pórěźe -password_cancel=Pśetergnuś - -printing_not_supported=Warnowanje: Śišćanje njepódpěra se połnje pśez toś ten wobglědowak. -printing_not_ready=Warnowanje: PDF njejo se za śišćanje dopołnje zacytał. -web_fonts_disabled=Webpisma su znjemóžnjone: njejo móžno, zasajźone PDF-pisma wužywaś. -document_colors_not_allowed=PDF-dokumenty njesměju swóje barwy wužywaś: 'Bokam dowóliś, swóje barwy wužywaś' jo we wobglědowaku znjemóžnjone. diff --git a/cookbook/static/pdfjs/locale/el/viewer.properties b/cookbook/static/pdfjs/locale/el/viewer.properties deleted file mode 100644 index d7a6abc10..000000000 --- a/cookbook/static/pdfjs/locale/el/viewer.properties +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Προηγούμενη σελίδα -previous_label=Προηγούμενη -next.title=Επόμενη σελίδα -next_label=Επόμενη - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Σελίδα -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=από {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} από {{pagesCount}}) - -zoom_out.title=Σμίκρυνση -zoom_out_label=Σμίκρυνση -zoom_in.title=Μεγέθυνση -zoom_in_label=Μεγέθυνση -zoom.title=Ζουμ -presentation_mode.title=Εναλλαγή σε λειτουργία παρουσίασης -presentation_mode_label=Λειτουργία παρουσίασης -open_file.title=Άνοιγμα αρχείου -open_file_label=Άνοιγμα -print.title=Εκτύπωση -print_label=Εκτύπωση -download.title=Λήψη -download_label=Λήψη -bookmark.title=Τρέχουσα προβολή (αντιγραφή ή άνοιγμα σε νέο παράθυρο) -bookmark_label=Τρέχουσα προβολή - -# Secondary toolbar and context menu -tools.title=Εργαλεία -tools_label=Εργαλεία -first_page.title=Μετάβαση στην πρώτη σελίδα -first_page.label=Μετάβαση στην πρώτη σελίδα -first_page_label=Μετάβαση στην πρώτη σελίδα -last_page.title=Μετάβαση στην τελευταία σελίδα -last_page.label=Μετάβαση στην τελευταία σελίδα -last_page_label=Μετάβαση στην τελευταία σελίδα -page_rotate_cw.title=Δεξιόστροφη περιστροφή -page_rotate_cw.label=Δεξιόστροφη περιστροφή -page_rotate_cw_label=Δεξιόστροφη περιστροφή -page_rotate_ccw.title=Αριστερόστροφη περιστροφή -page_rotate_ccw.label=Αριστερόστροφη περιστροφή -page_rotate_ccw_label=Αριστερόστροφη περιστροφή - -cursor_text_select_tool.title=Ενεργοποίηση εργαλείου επιλογής κειμένου -cursor_text_select_tool_label=Εργαλείο επιλογής κειμένου -cursor_hand_tool.title=Ενεργοποίηση εργαλείου χεριού -cursor_hand_tool_label=Εργαλείο χεριού - -scroll_vertical.title=Χρήση κάθετης κύλισης -scroll_vertical_label=Κάθετη κύλιση -scroll_horizontal.title=Χρήση οριζόντιας κύλισης -scroll_horizontal_label=Οριζόντια κύλιση -scroll_wrapped.title=Χρήση κυκλικής κύλισης -scroll_wrapped_label=Κυκλική κύλιση - -spread_none.title=Να μην γίνει σύνδεση επεκτάσεων σελίδων -spread_none_label=Χωρίς επεκτάσεις -spread_odd.title=Σύνδεση επεκτάσεων σελίδων ξεκινώντας από τις μονές σελίδες -spread_odd_label=Μονές επεκτάσεις -spread_even.title=Σύνδεση επεκτάσεων σελίδων ξεκινώντας από τις ζυγές σελίδες -spread_even_label=Ζυγές επεκτάσεις - -# Document properties dialog box -document_properties.title=Ιδιότητες εγγράφου… -document_properties_label=Ιδιότητες εγγράφου… -document_properties_file_name=Όνομα αρχείου: -document_properties_file_size=Μέγεθος αρχείου: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Τίτλος: -document_properties_author=Συγγραφέας: -document_properties_subject=Θέμα: -document_properties_keywords=Λέξεις κλειδιά: -document_properties_creation_date=Ημερομηνία δημιουργίας: -document_properties_modification_date=Ημερομηνία τροποποίησης: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Δημιουργός: -document_properties_producer=Παραγωγός PDF: -document_properties_version=Έκδοση PDF: -document_properties_page_count=Αριθμός σελίδων: -document_properties_page_size=Μέγεθος σελίδας: -document_properties_page_size_unit_inches=ίντσες -document_properties_page_size_unit_millimeters=χιλιοστά -document_properties_page_size_orientation_portrait=κατακόρυφα -document_properties_page_size_orientation_landscape=οριζόντια -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Επιστολή -document_properties_page_size_name_legal=Τύπου Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Ταχεία προβολή ιστού: -document_properties_linearized_yes=Ναι -document_properties_linearized_no=Όχι -document_properties_close=Κλείσιμο - -print_progress_message=Προετοιμασία του εγγράφου για εκτύπωση… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Άκυρο - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=(Απ)ενεργοποίηση πλευρικής στήλης -toggle_sidebar_notification.title=(Απ)ενεργοποίηση πλευρικής στήλης (το έγγραφο περιέχει περίγραμμα/συνημμένα) -toggle_sidebar_label=(Απ)ενεργοποίηση πλευρικής στήλης -document_outline.title=Εμφάνιση διάρθρωσης εγγράφου (διπλό κλικ για ανάπτυξη/σύμπτυξη όλων των στοιχείων) -document_outline_label=Διάρθρωση εγγράφου -attachments.title=Προβολή συνημμένων -attachments_label=Συνημμένα -thumbs.title=Προβολή μικρογραφιών -thumbs_label=Μικρογραφίες -findbar.title=Εύρεση στο έγγραφο -findbar_label=Εύρεση - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Σελίδα {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Μικρογραφία της σελίδας {{page}} - -# Find panel button title and messages -find_input.title=Εύρεση -find_input.placeholder=Εύρεση στο έγγραφο… -find_previous.title=Εύρεση της προηγούμενης εμφάνισης της φράσης -find_previous_label=Προηγούμενο -find_next.title=Εύρεση της επόμενης εμφάνισης της φράσης -find_next_label=Επόμενο -find_highlight=Επισήμανση όλων -find_match_case_label=Ταίριασμα χαρακτήρα -find_entire_word_label=Ολόκληρες λέξεις -find_reached_top=Έλευση στην αρχή του εγγράφου, συνέχεια από το τέλος -find_reached_bottom=Έλευση στο τέλος του εγγράφου, συνέχεια από την αρχή -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} από {{total}} αντιστοιχία -find_match_count[two]={{current}} από {{total}} αντιστοιχίες -find_match_count[few]={{current}} από {{total}} αντιστοιχίες -find_match_count[many]={{current}} από {{total}} αντιστοιχίες -find_match_count[other]={{current}} από {{total}} αντιστοιχίες -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Περισσότερες από {{limit}} αντιστοιχίες -find_match_count_limit[one]=Περισσότερες από {{limit}} αντιστοιχία -find_match_count_limit[two]=Περισσότερες από {{limit}} αντιστοιχίες -find_match_count_limit[few]=Περισσότερες από {{limit}} αντιστοιχίες -find_match_count_limit[many]=Περισσότερες από {{limit}} αντιστοιχίες -find_match_count_limit[other]=Περισσότερες από {{limit}} αντιστοιχίες -find_not_found=Η φράση δεν βρέθηκε - -# Error panel labels -error_more_info=Περισσότερες πληροφορίες -error_less_info=Λιγότερες πληροφορίες -error_close=Κλείσιμο -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Μήνυμα: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Στοίβα: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Αρχείο: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Γραμμή: {{line}} -rendering_error=Προέκυψε σφάλμα κατά την ανάλυση της σελίδας. - -# Predefined zoom values -page_scale_width=Πλάτος σελίδας -page_scale_fit=Μέγεθος σελίδας -page_scale_auto=Αυτόματο ζουμ -page_scale_actual=Πραγματικό μέγεθος -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Σφάλμα -loading_error=Προέκυψε ένα σφάλμα κατά τη φόρτωση του PDF. -invalid_file_error=Μη έγκυρο ή κατεστραμμένο αρχείο PDF. -missing_file_error=Λείπει αρχείο PDF. -unexpected_response_error=Μη αναμενόμενη απόκριση από το διακομιστή. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Σχόλιο] -password_label=Εισαγωγή κωδικού για το άνοιγμα του PDF αρχείου. -password_invalid=Μη έγκυρος κωδικός. Προσπαθείστε ξανά. -password_ok=ΟΚ -password_cancel=Ακύρωση - -printing_not_supported=Προειδοποίηση: Η εκτύπωση δεν υποστηρίζεται πλήρως από αυτόν τον περιηγητή. -printing_not_ready=Προειδοποίηση: Το PDF δεν φορτώθηκε πλήρως για εκτύπωση. -web_fonts_disabled=Οι γραμματοσειρές Web απενεργοποιημένες: αδυναμία χρήσης των ενσωματωμένων γραμματοσειρών PDF. -document_colors_not_allowed=Στα PDF έγγραφα δεν επιτρέπεται να χρησιμοποιούν τα δικά τους χρώματα: Το “Να επιτρέπεται στις σελίδες να επιλέγουν τα δικά τους χρώματα” είναι απενεργοποιημένο στον περιηγητή. diff --git a/cookbook/static/pdfjs/locale/en-CA/viewer.properties b/cookbook/static/pdfjs/locale/en-CA/viewer.properties deleted file mode 100644 index df7a68774..000000000 --- a/cookbook/static/pdfjs/locale/en-CA/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Previous Page -previous_label=Previous -next.title=Next Page -next_label=Next - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Page -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=of {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Zoom Out -zoom_out_label=Zoom Out -zoom_in.title=Zoom In -zoom_in_label=Zoom In -zoom.title=Zoom -presentation_mode.title=Switch to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Open File -open_file_label=Open -print.title=Print -print_label=Print -download.title=Download -download_label=Download -bookmark.title=Current view (copy or open in new window) -bookmark_label=Current View - -# Secondary toolbar and context menu -tools.title=Tools -tools_label=Tools -first_page.title=Go to First Page -first_page.label=Go to First Page -first_page_label=Go to First Page -last_page.title=Go to Last Page -last_page.label=Go to Last Page -last_page_label=Go to Last Page -page_rotate_cw.title=Rotate Clockwise -page_rotate_cw.label=Rotate Clockwise -page_rotate_cw_label=Rotate Clockwise -page_rotate_ccw.title=Rotate Anti-Clockwise -page_rotate_ccw.label=Rotate Anti-Clockwise -page_rotate_ccw_label=Rotate Anti-Clockwise - -cursor_text_select_tool.title=Enable Text Selection Tool -cursor_text_select_tool_label=Text Selection Tool -cursor_hand_tool.title=Enable Hand Tool -cursor_hand_tool_label=Hand Tool - -scroll_vertical.title=Use Vertical Scrolling -scroll_vertical_label=Vertical Scrolling -scroll_horizontal.title=Use Horizontal Scrolling -scroll_horizontal_label=Horizontal Scrolling -scroll_wrapped.title=Use Wrapped Scrolling -scroll_wrapped_label=Wrapped Scrolling - -spread_none.title=Do not join page spreads -spread_none_label=No Spreads -spread_odd.title=Join page spreads starting with odd-numbered pages -spread_odd_label=Odd Spreads -spread_even.title=Join page spreads starting with even-numbered pages -spread_even_label=Even Spreads - -# Document properties dialog box -document_properties.title=Document Properties… -document_properties_label=Document Properties… -document_properties_file_name=File name: -document_properties_file_size=File size: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Title: -document_properties_author=Author: -document_properties_subject=Subject: -document_properties_keywords=Keywords: -document_properties_creation_date=Creation Date: -document_properties_modification_date=Modification Date: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=PDF Producer: -document_properties_version=PDF Version: -document_properties_page_count=Page Count: -document_properties_page_size=Page Size: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=landscape -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Yes -document_properties_linearized_no=No -document_properties_close=Close - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancel - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggle Sidebar -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Toggle Sidebar -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Document Outline -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Show Thumbnails -thumbs_label=Thumbnails -findbar.title=Find in Document -findbar_label=Find - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Page {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Page {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail of Page {{page}} - -# Find panel button title and messages -find_input.title=Find -find_input.placeholder=Find in document… -find_previous.title=Find the previous occurrence of the phrase -find_previous_label=Previous -find_next.title=Find the next occurrence of the phrase -find_next_label=Next -find_highlight=Highlight all -find_match_case_label=Match case -find_entire_word_label=Whole words -find_reached_top=Reached top of document, continued from bottom -find_reached_bottom=Reached end of document, continued from top -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} of {{total}} match -find_match_count[two]={{current}} of {{total}} matches -find_match_count[few]={{current}} of {{total}} matches -find_match_count[many]={{current}} of {{total}} matches -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=More than {{limit}} matches -find_match_count_limit[one]=More than {{limit}} match -find_match_count_limit[two]=More than {{limit}} matches -find_match_count_limit[few]=More than {{limit}} matches -find_match_count_limit[many]=More than {{limit}} matches -find_match_count_limit[other]=More than {{limit}} matches -find_not_found=Phrase not found - -# Error panel labels -error_more_info=More Information -error_less_info=Less Information -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Line: {{line}} -rendering_error=An error occurred while rendering the page. - -# Predefined zoom values -page_scale_width=Page Width -page_scale_fit=Page Fit -page_scale_auto=Automatic Zoom -page_scale_actual=Actual Size -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=An error occurred while loading the PDF. -invalid_file_error=Invalid or corrupted PDF file. -missing_file_error=Missing PDF file. -unexpected_response_error=Unexpected server response. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Enter the password to open this PDF file. -password_invalid=Invalid password. Please try again. -password_ok=OK -password_cancel=Cancel - -printing_not_supported=Warning: Printing is not fully supported by this browser. -printing_not_ready=Warning: The PDF is not fully loaded for printing. -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. -document_colors_not_allowed=PDF documents are not allowed to use their own colours: “Allow pages to choose their own colours” is deactivated in the browser. diff --git a/cookbook/static/pdfjs/locale/en-GB/viewer.properties b/cookbook/static/pdfjs/locale/en-GB/viewer.properties deleted file mode 100644 index df7a68774..000000000 --- a/cookbook/static/pdfjs/locale/en-GB/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Previous Page -previous_label=Previous -next.title=Next Page -next_label=Next - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Page -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=of {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Zoom Out -zoom_out_label=Zoom Out -zoom_in.title=Zoom In -zoom_in_label=Zoom In -zoom.title=Zoom -presentation_mode.title=Switch to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Open File -open_file_label=Open -print.title=Print -print_label=Print -download.title=Download -download_label=Download -bookmark.title=Current view (copy or open in new window) -bookmark_label=Current View - -# Secondary toolbar and context menu -tools.title=Tools -tools_label=Tools -first_page.title=Go to First Page -first_page.label=Go to First Page -first_page_label=Go to First Page -last_page.title=Go to Last Page -last_page.label=Go to Last Page -last_page_label=Go to Last Page -page_rotate_cw.title=Rotate Clockwise -page_rotate_cw.label=Rotate Clockwise -page_rotate_cw_label=Rotate Clockwise -page_rotate_ccw.title=Rotate Anti-Clockwise -page_rotate_ccw.label=Rotate Anti-Clockwise -page_rotate_ccw_label=Rotate Anti-Clockwise - -cursor_text_select_tool.title=Enable Text Selection Tool -cursor_text_select_tool_label=Text Selection Tool -cursor_hand_tool.title=Enable Hand Tool -cursor_hand_tool_label=Hand Tool - -scroll_vertical.title=Use Vertical Scrolling -scroll_vertical_label=Vertical Scrolling -scroll_horizontal.title=Use Horizontal Scrolling -scroll_horizontal_label=Horizontal Scrolling -scroll_wrapped.title=Use Wrapped Scrolling -scroll_wrapped_label=Wrapped Scrolling - -spread_none.title=Do not join page spreads -spread_none_label=No Spreads -spread_odd.title=Join page spreads starting with odd-numbered pages -spread_odd_label=Odd Spreads -spread_even.title=Join page spreads starting with even-numbered pages -spread_even_label=Even Spreads - -# Document properties dialog box -document_properties.title=Document Properties… -document_properties_label=Document Properties… -document_properties_file_name=File name: -document_properties_file_size=File size: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Title: -document_properties_author=Author: -document_properties_subject=Subject: -document_properties_keywords=Keywords: -document_properties_creation_date=Creation Date: -document_properties_modification_date=Modification Date: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=PDF Producer: -document_properties_version=PDF Version: -document_properties_page_count=Page Count: -document_properties_page_size=Page Size: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=landscape -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Yes -document_properties_linearized_no=No -document_properties_close=Close - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancel - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggle Sidebar -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Toggle Sidebar -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Document Outline -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Show Thumbnails -thumbs_label=Thumbnails -findbar.title=Find in Document -findbar_label=Find - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Page {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Page {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail of Page {{page}} - -# Find panel button title and messages -find_input.title=Find -find_input.placeholder=Find in document… -find_previous.title=Find the previous occurrence of the phrase -find_previous_label=Previous -find_next.title=Find the next occurrence of the phrase -find_next_label=Next -find_highlight=Highlight all -find_match_case_label=Match case -find_entire_word_label=Whole words -find_reached_top=Reached top of document, continued from bottom -find_reached_bottom=Reached end of document, continued from top -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} of {{total}} match -find_match_count[two]={{current}} of {{total}} matches -find_match_count[few]={{current}} of {{total}} matches -find_match_count[many]={{current}} of {{total}} matches -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=More than {{limit}} matches -find_match_count_limit[one]=More than {{limit}} match -find_match_count_limit[two]=More than {{limit}} matches -find_match_count_limit[few]=More than {{limit}} matches -find_match_count_limit[many]=More than {{limit}} matches -find_match_count_limit[other]=More than {{limit}} matches -find_not_found=Phrase not found - -# Error panel labels -error_more_info=More Information -error_less_info=Less Information -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Line: {{line}} -rendering_error=An error occurred while rendering the page. - -# Predefined zoom values -page_scale_width=Page Width -page_scale_fit=Page Fit -page_scale_auto=Automatic Zoom -page_scale_actual=Actual Size -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=An error occurred while loading the PDF. -invalid_file_error=Invalid or corrupted PDF file. -missing_file_error=Missing PDF file. -unexpected_response_error=Unexpected server response. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Enter the password to open this PDF file. -password_invalid=Invalid password. Please try again. -password_ok=OK -password_cancel=Cancel - -printing_not_supported=Warning: Printing is not fully supported by this browser. -printing_not_ready=Warning: The PDF is not fully loaded for printing. -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. -document_colors_not_allowed=PDF documents are not allowed to use their own colours: “Allow pages to choose their own colours” is deactivated in the browser. diff --git a/cookbook/static/pdfjs/locale/en-US/viewer.properties b/cookbook/static/pdfjs/locale/en-US/viewer.properties deleted file mode 100644 index 6f7598e3d..000000000 --- a/cookbook/static/pdfjs/locale/en-US/viewer.properties +++ /dev/null @@ -1,247 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Previous Page -previous_label=Previous -next.title=Next Page -next_label=Next - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Page -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=of {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Zoom Out -zoom_out_label=Zoom Out -zoom_in.title=Zoom In -zoom_in_label=Zoom In -zoom.title=Zoom -presentation_mode.title=Switch to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Open File -open_file_label=Open -print.title=Print -print_label=Print -download.title=Download -download_label=Download -bookmark.title=Current view (copy or open in new window) -bookmark_label=Current View - -# Secondary toolbar and context menu -tools.title=Tools -tools_label=Tools -first_page.title=Go to First Page -first_page.label=Go to First Page -first_page_label=Go to First Page -last_page.title=Go to Last Page -last_page.label=Go to Last Page -last_page_label=Go to Last Page -page_rotate_cw.title=Rotate Clockwise -page_rotate_cw.label=Rotate Clockwise -page_rotate_cw_label=Rotate Clockwise -page_rotate_ccw.title=Rotate Counterclockwise -page_rotate_ccw.label=Rotate Counterclockwise -page_rotate_ccw_label=Rotate Counterclockwise - -cursor_text_select_tool.title=Enable Text Selection Tool -cursor_text_select_tool_label=Text Selection Tool -cursor_hand_tool.title=Enable Hand Tool -cursor_hand_tool_label=Hand Tool - -scroll_vertical.title=Use Vertical Scrolling -scroll_vertical_label=Vertical Scrolling -scroll_horizontal.title=Use Horizontal Scrolling -scroll_horizontal_label=Horizontal Scrolling -scroll_wrapped.title=Use Wrapped Scrolling -scroll_wrapped_label=Wrapped Scrolling - -spread_none.title=Do not join page spreads -spread_none_label=No Spreads -spread_odd.title=Join page spreads starting with odd-numbered pages -spread_odd_label=Odd Spreads -spread_even.title=Join page spreads starting with even-numbered pages -spread_even_label=Even Spreads - -# Document properties dialog box -document_properties.title=Document Properties… -document_properties_label=Document Properties… -document_properties_file_name=File name: -document_properties_file_size=File size: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Title: -document_properties_author=Author: -document_properties_subject=Subject: -document_properties_keywords=Keywords: -document_properties_creation_date=Creation Date: -document_properties_modification_date=Modification Date: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=PDF Producer: -document_properties_version=PDF Version: -document_properties_page_count=Page Count: -document_properties_page_size=Page Size: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=landscape -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Yes -document_properties_linearized_no=No -document_properties_close=Close - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancel - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggle Sidebar -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Toggle Sidebar -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Document Outline -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Show Thumbnails -thumbs_label=Thumbnails -findbar.title=Find in Document -findbar_label=Find - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Page {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Page {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail of Page {{page}} - -# Find panel button title and messages -find_input.title=Find -find_input.placeholder=Find in document… -find_previous.title=Find the previous occurrence of the phrase -find_previous_label=Previous -find_next.title=Find the next occurrence of the phrase -find_next_label=Next -find_highlight=Highlight all -find_match_case_label=Match case -find_entire_word_label=Whole words -find_reached_top=Reached top of document, continued from bottom -find_reached_bottom=Reached end of document, continued from top -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} of {{total}} match -find_match_count[two]={{current}} of {{total}} matches -find_match_count[few]={{current}} of {{total}} matches -find_match_count[many]={{current}} of {{total}} matches -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=More than {{limit}} matches -find_match_count_limit[one]=More than {{limit}} match -find_match_count_limit[two]=More than {{limit}} matches -find_match_count_limit[few]=More than {{limit}} matches -find_match_count_limit[many]=More than {{limit}} matches -find_match_count_limit[other]=More than {{limit}} matches -find_not_found=Phrase not found - -# Error panel labels -error_more_info=More Information -error_less_info=Less Information -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Line: {{line}} -rendering_error=An error occurred while rendering the page. - -# Predefined zoom values -page_scale_width=Page Width -page_scale_fit=Page Fit -page_scale_auto=Automatic Zoom -page_scale_actual=Actual Size -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=An error occurred while loading the PDF. -invalid_file_error=Invalid or corrupted PDF file. -missing_file_error=Missing PDF file. -unexpected_response_error=Unexpected server response. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Enter the password to open this PDF file. -password_invalid=Invalid password. Please try again. -password_ok=OK -password_cancel=Cancel - -printing_not_supported=Warning: Printing is not fully supported by this browser. -printing_not_ready=Warning: The PDF is not fully loaded for printing. -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. diff --git a/cookbook/static/pdfjs/locale/eo/viewer.properties b/cookbook/static/pdfjs/locale/eo/viewer.properties deleted file mode 100644 index bca7c4568..000000000 --- a/cookbook/static/pdfjs/locale/eo/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Antaŭa paĝo -previous_label=Malantaŭen -next.title=Venonta paĝo -next_label=Antaŭen - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Paĝo -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=el {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} el {{pagesCount}}) - -zoom_out.title=Malpligrandigi -zoom_out_label=Malpligrandigi -zoom_in.title=Pligrandigi -zoom_in_label=Pligrandigi -zoom.title=Pligrandigilo -presentation_mode.title=Iri al prezenta reĝimo -presentation_mode_label=Prezenta reĝimo -open_file.title=Malfermi dosieron -open_file_label=Malfermi -print.title=Presi -print_label=Presi -download.title=Elŝuti -download_label=Elŝuti -bookmark.title=Nuna vido (kopii aŭ malfermi en nova fenestro) -bookmark_label=Nuna vido - -# Secondary toolbar and context menu -tools.title=Iloj -tools_label=Iloj -first_page.title=Iri al la unua paĝo -first_page.label=Iri al la unua paĝo -first_page_label=Iri al la unua paĝo -last_page.title=Iri al la lasta paĝo -last_page.label=Iri al la lasta paĝo -last_page_label=Iri al la lasta paĝo -page_rotate_cw.title=Rotaciigi dekstrume -page_rotate_cw.label=Rotaciigi dekstrume -page_rotate_cw_label=Rotaciigi dekstrume -page_rotate_ccw.title=Rotaciigi maldekstrume -page_rotate_ccw.label=Rotaciigi maldekstrume -page_rotate_ccw_label=Rotaciigi maldekstrume - -cursor_text_select_tool.title=Aktivigi tekstan elektilon -cursor_text_select_tool_label=Teksta elektilo -cursor_hand_tool.title=Aktivigi ilon de mano -cursor_hand_tool_label=Ilo de mano - -scroll_vertical.title=Uzi vertikalan ŝovadon -scroll_vertical_label=Vertikala ŝovado -scroll_horizontal.title=Uzi horizontalan ŝovadon -scroll_horizontal_label=Horizontala ŝovado -scroll_wrapped.title=Uzi ambaŭdirektan ŝovadon -scroll_wrapped_label=Ambaŭdirekta ŝovado - -spread_none.title=Ne montri paĝojn po du -spread_none_label=Unupaĝa vido -spread_odd.title=Kunigi paĝojn komencante per nepara paĝo -spread_odd_label=Po du paĝoj, neparaj maldekstre -spread_even.title=Kunigi paĝojn komencante per para paĝo -spread_even_label=Po du paĝoj, paraj maldekstre - -# Document properties dialog box -document_properties.title=Atributoj de dokumento… -document_properties_label=Atributoj de dokumento… -document_properties_file_name=Nomo de dosiero: -document_properties_file_size=Grando de dosiero: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KO ({{size_b}} oktetoj) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MO ({{size_b}} oktetoj) -document_properties_title=Titolo: -document_properties_author=Aŭtoro: -document_properties_subject=Temo: -document_properties_keywords=Ŝlosilvorto: -document_properties_creation_date=Dato de kreado: -document_properties_modification_date=Dato de modifo: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Kreinto: -document_properties_producer=Produktinto de PDF: -document_properties_version=Versio de PDF: -document_properties_page_count=Nombro de paĝoj: -document_properties_page_size=Grando de paĝo: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertikala -document_properties_page_size_orientation_landscape=horizontala -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letera -document_properties_page_size_name_legal=Jura -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Rapida tekstaĵa vido: -document_properties_linearized_yes=Jes -document_properties_linearized_no=Ne -document_properties_close=Fermi - -print_progress_message=Preparo de dokumento por presi ĝin … -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Nuligi - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Montri/kaŝi flankan strion -toggle_sidebar_notification.title=Montri/kaŝi flankan strion (la dokumento enhavas konturon/aneksaĵojn) -toggle_sidebar_label=Montri/kaŝi flankan strion -document_outline.title=Montri la konturon de dokumento (alklaku duoble por faldi/malfaldi ĉiujn elementojn) -document_outline_label=Konturo de dokumento -attachments.title=Montri kunsendaĵojn -attachments_label=Kunsendaĵojn -thumbs.title=Montri miniaturojn -thumbs_label=Miniaturoj -findbar.title=Serĉi en dokumento -findbar_label=Serĉi - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Paĝo {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Paĝo {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniaturo de paĝo {{page}} - -# Find panel button title and messages -find_input.title=Serĉi -find_input.placeholder=Serĉi en dokumento… -find_previous.title=Serĉi la antaŭan aperon de la frazo -find_previous_label=Malantaŭen -find_next.title=Serĉi la venontan aperon de la frazo -find_next_label=Antaŭen -find_highlight=Elstarigi ĉiujn -find_match_case_label=Distingi inter majuskloj kaj minuskloj -find_entire_word_label=Tutaj vortoj -find_reached_top=Komenco de la dokumento atingita, daŭrigado ekde la fino -find_reached_bottom=Fino de la dokumento atingita, daŭrigado ekde la komenco -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} el {{total}} kongruo -find_match_count[two]={{current}} el {{total}} kongruoj -find_match_count[few]={{current}} el {{total}} kongruoj -find_match_count[many]={{current}} el {{total}} kongruoj -find_match_count[other]={{current}} el {{total}} kongruoj -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Pli ol {{limit}} kongruoj -find_match_count_limit[one]=Pli ol {{limit}} kongruo -find_match_count_limit[two]=Pli ol {{limit}} kongruoj -find_match_count_limit[few]=Pli ol {{limit}} kongruoj -find_match_count_limit[many]=Pli ol {{limit}} kongruoj -find_match_count_limit[other]=Pli ol {{limit}} kongruoj -find_not_found=Frazo ne trovita - -# Error panel labels -error_more_info=Pli da informo -error_less_info=Malpli da informo -error_close=Fermi -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mesaĝo: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stako: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Dosiero: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linio: {{line}} -rendering_error=Okazis eraro dum la montro de la paĝo. - -# Predefined zoom values -page_scale_width=Larĝo de paĝo -page_scale_fit=Adapti paĝon -page_scale_auto=Aŭtomata skalo -page_scale_actual=Reala grando -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Eraro -loading_error=Okazis eraro dum la ŝargado de la PDF dosiero. -invalid_file_error=Nevalida aŭ difektita PDF dosiero. -missing_file_error=Mankas dosiero PDF. -unexpected_response_error=Neatendita respondo de servilo. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Prinoto: {{type}}] -password_label=Tajpu pasvorton por malfermi tiun ĉi dosieron PDF. -password_invalid=Nevalida pasvorto. Bonvolu provi denove. -password_ok=Akcepti -password_cancel=Nuligi - -printing_not_supported=Averto: tiu ĉi retumilo ne plene subtenas presadon. -printing_not_ready=Averto: la PDF dosiero ne estas plene ŝargita por presado. -web_fonts_disabled=Neaktivaj teksaĵaj tiparoj: ne elbas uzi enmetitajn tiparojn de PDF. -document_colors_not_allowed=PDF dokumentoj ne rajtas uzi siajn proprajn kolorojn: 'Permesi al paĝoj uzi siajn proprajn kolorojn' ne estas aktiva en la retumilo. diff --git a/cookbook/static/pdfjs/locale/es-AR/viewer.properties b/cookbook/static/pdfjs/locale/es-AR/viewer.properties deleted file mode 100644 index 1d22fbad6..000000000 --- a/cookbook/static/pdfjs/locale/es-AR/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Página siguiente -next_label=Siguiente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=( {{pageNumber}} de {{pagesCount}} ) - -zoom_out.title=Alejar -zoom_out_label=Alejar -zoom_in.title=Acercar -zoom_in_label=Acercar -zoom.title=Zoom -presentation_mode.title=Cambiar a modo presentación -presentation_mode_label=Modo presentación -open_file.title=Abrir archivo -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar o abrir en nueva ventana) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Herramientas -tools_label=Herramientas -first_page.title=Ir a primera página -first_page.label=Ir a primera página -first_page_label=Ir a primera página -last_page.title=Ir a última página -last_page.label=Ir a última página -last_page_label=Ir a última página -page_rotate_cw.title=Rotar horario -page_rotate_cw.label=Rotar horario -page_rotate_cw_label=Rotar horario -page_rotate_ccw.title=Rotar antihorario -page_rotate_ccw.label=Rotar antihorario -page_rotate_ccw_label=Rotar antihorario - -cursor_text_select_tool.title=Habilitar herramienta de selección de texto -cursor_text_select_tool_label=Herramienta de selección de texto -cursor_hand_tool.title=Habilitar herramienta mano -cursor_hand_tool_label=Herramienta mano - -scroll_vertical.title=Usar desplazamiento vertical -scroll_vertical_label=Desplazamiento vertical -scroll_horizontal.title=Usar desplazamiento vertical -scroll_horizontal_label=Desplazamiento horizontal -scroll_wrapped.title=Usar desplazamiento encapsulado -scroll_wrapped_label=Desplazamiento encapsulado - -spread_none.title=No unir páginas dobles -spread_none_label=Sin dobles -spread_odd.title=Unir páginas dobles comenzando con las impares -spread_odd_label=Dobles impares -spread_even.title=Unir páginas dobles comenzando con las pares -spread_even_label=Dobles pares - -# Document properties dialog box -document_properties.title=Propiedades del documento… -document_properties_label=Propiedades del documento… -document_properties_file_name=Nombre de archivo: -document_properties_file_size=Tamaño de archovo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Asunto: -document_properties_keywords=Palabras clave: -document_properties_creation_date=Fecha de creación: -document_properties_modification_date=Fecha de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=PDF Productor: -document_properties_version=Versión de PDF: -document_properties_page_count=Cantidad de páginas: -document_properties_page_size=Tamaño de página: -document_properties_page_size_unit_inches=en -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=normal -document_properties_page_size_orientation_landscape=apaisado -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista rápida de la Web: -document_properties_linearized_yes=Sí -document_properties_linearized_no=No -document_properties_close=Cerrar - -print_progress_message=Preparando documento para imprimir… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Alternar barra lateral -toggle_sidebar_notification.title=Intercambiar barra lateral (el documento contiene esquema/adjuntos) -toggle_sidebar_label=Alternar barra lateral -document_outline.title=Mostrar esquema del documento (doble clic para expandir/colapsar todos los ítems) -document_outline_label=Esquema del documento -attachments.title=Mostrar adjuntos -attachments_label=Adjuntos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Buscar en documento -findbar_label=Buscar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de página {{page}} - -# Find panel button title and messages -find_input.title=Buscar -find_input.placeholder=Buscar en documento… -find_previous.title=Buscar la aparición anterior de la frase -find_previous_label=Anterior -find_next.title=Buscar la siguiente aparición de la frase -find_next_label=Siguiente -find_highlight=Resaltar todo -find_match_case_label=Coincidir mayúsculas -find_entire_word_label=Palabras completas -find_reached_top=Inicio de documento alcanzado, continuando desde abajo -find_reached_bottom=Fin de documento alcanzando, continuando desde arriba -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidencias -find_match_count[two]={{current}} de {{total}} coincidencias -find_match_count[few]={{current}} de {{total}} coincidencias -find_match_count[many]={{current}} de {{total}} coincidencias -find_match_count[other]={{current}} de {{total}} coincidencias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Más de {{limit}} coincidencias -find_match_count_limit[one]=Más de {{limit}} coinciden -find_match_count_limit[two]=Más de {{limit}} coincidencias -find_match_count_limit[few]=Más de {{limit}} coincidencias -find_match_count_limit[many]=Más de {{limit}} coincidencias -find_match_count_limit[other]=Más de {{limit}} coincidencias -find_not_found=Frase no encontrada - -# Error panel labels -error_more_info=Más información -error_less_info=Menos información -error_close=Cerrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaje: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Archivo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Línea: {{line}} -rendering_error=Ocurrió un error al dibujar la página. - -# Predefined zoom values -page_scale_width=Ancho de página -page_scale_fit=Ajustar página -page_scale_auto=Zoom automático -page_scale_actual=Tamaño real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Ocurrió un error al cargar el PDF. -invalid_file_error=Archivo PDF no válido o cocrrupto. -missing_file_error=Archivo PDF faltante. -unexpected_response_error=Respuesta del servidor inesperada. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Anotación] -password_label=Ingrese la contraseña para abrir este archivo PDF -password_invalid=Contraseña inválida. Intente nuevamente. -password_ok=Aceptar -password_cancel=Cancelar - -printing_not_supported=Advertencia: La impresión no está totalmente soportada por este navegador. -printing_not_ready=Advertencia: El PDF no está completamente cargado para impresión. -web_fonts_disabled=Tipografía web deshabilitada: no se pueden usar tipos incrustados en PDF. -document_colors_not_allowed=Los documentos PDF no tienen permitido usar sus propios colores: 'Permitir a las páginas elegir sus propios colores' está desactivado en el navegador. diff --git a/cookbook/static/pdfjs/locale/es-CL/viewer.properties b/cookbook/static/pdfjs/locale/es-CL/viewer.properties deleted file mode 100644 index f7f621f59..000000000 --- a/cookbook/static/pdfjs/locale/es-CL/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Página siguiente -next_label=Siguiente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Alejar -zoom_out_label=Alejar -zoom_in.title=Acercar -zoom_in_label=Acercar -zoom.title=Ampliación -presentation_mode.title=Cambiar al modo de presentación -presentation_mode_label=Modo de presentación -open_file.title=Abrir archivo -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar o abrir en nueva ventana) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Herramientas -tools_label=Herramientas -first_page.title=Ir a la primera página -first_page.label=Ir a la primera página -first_page_label=Ir a la primera página -last_page.title=Ir a la última página -last_page.label=Ir a la última página -last_page_label=Ir a la última página -page_rotate_cw.title=Girar a la derecha -page_rotate_cw.label=Girar a la derecha -page_rotate_cw_label=Girar a la derecha -page_rotate_ccw.title=Girar a la izquierda -page_rotate_ccw.label=Girar a la izquierda -page_rotate_ccw_label=Girar a la izquierda - -cursor_text_select_tool.title=Activar la herramienta de selección de texto -cursor_text_select_tool_label=Herramienta de selección de texto -cursor_hand_tool.title=Activar la herramienta de mano -cursor_hand_tool_label=Herramienta de mano - -scroll_vertical.title=Usar desplazamiento vertical -scroll_vertical_label=Desplazamiento vertical -scroll_horizontal.title=Usar desplazamiento horizontal -scroll_horizontal_label=Desplazamiento horizontal -scroll_wrapped.title=Usar desplazamiento en bloque -scroll_wrapped_label=Desplazamiento en bloque - -spread_none.title=No juntar páginas a modo de libro -spread_none_label=Vista de una página -spread_odd.title=Junta las páginas partiendo con una de número impar -spread_odd_label=Vista de libro impar -spread_even.title=Junta las páginas partiendo con una de número par -spread_even_label=Vista de libro par - -# Document properties dialog box -document_properties.title=Propiedades del documento… -document_properties_label=Propiedades del documento… -document_properties_file_name=Nombre de archivo: -document_properties_file_size=Tamaño del archivo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Asunto: -document_properties_keywords=Palabras clave: -document_properties_creation_date=Fecha de creación: -document_properties_modification_date=Fecha de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=Productor del PDF: -document_properties_version=Versión de PDF: -document_properties_page_count=Cantidad de páginas: -document_properties_page_size=Tamaño de la página: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=horizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Oficio -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista rápida en Web: -document_properties_linearized_yes=Sí -document_properties_linearized_no=No -document_properties_close=Cerrar - -print_progress_message=Preparando documento para impresión… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Barra lateral -toggle_sidebar_notification.title=Cambiar barra lateral (índice de contenidos del documento/adjuntos) -toggle_sidebar_label=Mostrar u ocultar la barra lateral -document_outline.title=Mostrar esquema del documento (doble clic para expandir/contraer todos los elementos) -document_outline_label=Esquema del documento -attachments.title=Mostrar adjuntos -attachments_label=Adjuntos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Buscar en el documento -findbar_label=Buscar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de la página {{page}} - -# Find panel button title and messages -find_input.title=Encontrar -find_input.placeholder=Encontrar en el documento… -find_previous.title=Buscar la aparición anterior de la frase -find_previous_label=Previo -find_next.title=Buscar la siguiente aparición de la frase -find_next_label=Siguiente -find_highlight=Destacar todos -find_match_case_label=Coincidir mayús./minús. -find_entire_word_label=Palabras completas -find_reached_top=Se alcanzó el inicio del documento, continuando desde el final -find_reached_bottom=Se alcanzó el final del documento, continuando desde el inicio -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidencia -find_match_count[two]={{current}} de {{total}} coincidencias -find_match_count[few]={{current}} de {{total}} coincidencias -find_match_count[many]={{current}} de {{total}} coincidencias -find_match_count[other]={{current}} de {{total}} coincidencias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Más de {{limit}} coincidencias -find_match_count_limit[one]=Más de {{limit}} coincidencia -find_match_count_limit[two]=Más de {{limit}} coincidencias -find_match_count_limit[few]=Más de {{limit}} coincidencias -find_match_count_limit[many]=Más de {{limit}} coincidencias -find_match_count_limit[other]=Más de {{limit}} coincidencias -find_not_found=Frase no encontrada - -# Error panel labels -error_more_info=Más información -error_less_info=Menos información -error_close=Cerrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (compilación: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaje: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Archivo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Línea: {{line}} -rendering_error=Ha ocurrido un error al renderizar la página. - -# Predefined zoom values -page_scale_width=Ancho de página -page_scale_fit=Ajuste de página -page_scale_auto=Aumento automático -page_scale_actual=Tamaño actual -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Ha ocurrido un error al cargar el PDF. -invalid_file_error=Archivo PDF inválido o corrupto. -missing_file_error=Falta el archivo PDF. -unexpected_response_error=Respuesta del servidor inesperada. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Anotación] -password_label=Ingrese la contraseña para abrir este archivo PDF. -password_invalid=Contraseña inválida. Por favor, vuelve a intentarlo. -password_ok=Aceptar -password_cancel=Cancelar - -printing_not_supported=Advertencia: Imprimir no está soportado completamente por este navegador. -printing_not_ready=Advertencia: El PDF no está completamente cargado para ser impreso. -web_fonts_disabled=Las tipografías web están desactivadas: imposible usar las fuentes PDF embebidas. -document_colors_not_allowed=Los documentos PDF no tienen permitido usar sus propios colores: 'Permitir a las páginas elegir sus propios colores' está desactivado en el navegador. diff --git a/cookbook/static/pdfjs/locale/es-ES/viewer.properties b/cookbook/static/pdfjs/locale/es-ES/viewer.properties deleted file mode 100644 index cef373a1f..000000000 --- a/cookbook/static/pdfjs/locale/es-ES/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Página siguiente -next_label=Siguiente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reducir -zoom_out_label=Reducir -zoom_in.title=Aumentar -zoom_in_label=Aumentar -zoom.title=Tamaño -presentation_mode.title=Cambiar al modo presentación -presentation_mode_label=Modo presentación -open_file.title=Abrir archivo -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar o abrir en una nueva ventana) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Herramientas -tools_label=Herramientas -first_page.title=Ir a la primera página -first_page.label=Ir a la primera página -first_page_label=Ir a la primera página -last_page.title=Ir a la última página -last_page.label=Ir a la última página -last_page_label=Ir a la última página -page_rotate_cw.title=Rotar en sentido horario -page_rotate_cw.label=Rotar en sentido horario -page_rotate_cw_label=Rotar en sentido horario -page_rotate_ccw.title=Rotar en sentido antihorario -page_rotate_ccw.label=Rotar en sentido antihorario -page_rotate_ccw_label=Rotar en sentido antihorario - -cursor_text_select_tool.title=Activar herramienta de selección de texto -cursor_text_select_tool_label=Herramienta de selección de texto -cursor_hand_tool.title=Activar herramienta de mano -cursor_hand_tool_label=Herramienta de mano - -scroll_vertical.title=Usar desplazamiento vertical -scroll_vertical_label=Desplazamiento vertical -scroll_horizontal.title=Usar desplazamiento horizontal -scroll_horizontal_label=Desplazamiento horizontal -scroll_wrapped.title=Usar desplazamiento en bloque -scroll_wrapped_label=Desplazamiento en bloque - -spread_none.title=No juntar páginas en vista de libro -spread_none_label=Vista de libro -spread_odd.title=Juntar las páginas partiendo de una con número impar -spread_odd_label=Vista de libro impar -spread_even.title=Juntar las páginas partiendo de una con número par -spread_even_label=Vista de libro par - -# Document properties dialog box -document_properties.title=Propiedades del documento… -document_properties_label=Propiedades del documento… -document_properties_file_name=Nombre de archivo: -document_properties_file_size=Tamaño de archivo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Asunto: -document_properties_keywords=Palabras clave: -document_properties_creation_date=Fecha de creación: -document_properties_modification_date=Fecha de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=Productor PDF: -document_properties_version=Versión PDF: -document_properties_page_count=Número de páginas: -document_properties_page_size=Tamaño de la página: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=horizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista rápida de la web: -document_properties_linearized_yes=Sí -document_properties_linearized_no=No -document_properties_close=Cerrar - -print_progress_message=Preparando documento para impresión… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Cambiar barra lateral -toggle_sidebar_notification.title=Alternar panel lateral (el documento contiene un esquema o adjuntos) -toggle_sidebar_label=Cambiar barra lateral -document_outline.title=Mostrar resumen del documento (doble clic para expandir/contraer todos los elementos) -document_outline_label=Resumen de documento -attachments.title=Mostrar adjuntos -attachments_label=Adjuntos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Buscar en el documento -findbar_label=Buscar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de la página {{page}} - -# Find panel button title and messages -find_input.title=Buscar -find_input.placeholder=Buscar en el documento… -find_previous.title=Encontrar la anterior aparición de la frase -find_previous_label=Anterior -find_next.title=Encontrar la siguiente aparición de esta frase -find_next_label=Siguiente -find_highlight=Resaltar todos -find_match_case_label=Coincidencia de mayús./minús. -find_entire_word_label=Palabras completas -find_reached_top=Se alcanzó el inicio del documento, se continúa desde el final -find_reached_bottom=Se alcanzó el final del documento, se continúa desde el inicio -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidencia -find_match_count[two]={{current}} de {{total}} coincidencias -find_match_count[few]={{current}} de {{total}} coincidencias -find_match_count[many]={{current}} de {{total}} coincidencias -find_match_count[other]={{current}} de {{total}} coincidencias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Más de {{limit}} coincidencias -find_match_count_limit[one]=Más de {{limit}} coincidencia -find_match_count_limit[two]=Más de {{limit}} coincidencias -find_match_count_limit[few]=Más de {{limit}} coincidencias -find_match_count_limit[many]=Más de {{limit}} coincidencias -find_match_count_limit[other]=Más de {{limit}} coincidencias -find_not_found=Frase no encontrada - -# Error panel labels -error_more_info=Más información -error_less_info=Menos información -error_close=Cerrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaje: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Archivo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Línea: {{line}} -rendering_error=Ocurrió un error al renderizar la página. - -# Predefined zoom values -page_scale_width=Anchura de la página -page_scale_fit=Ajuste de la página -page_scale_auto=Tamaño automático -page_scale_actual=Tamaño real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Ocurrió un error al cargar el PDF. -invalid_file_error=Fichero PDF no válido o corrupto. -missing_file_error=No hay fichero PDF. -unexpected_response_error=Respuesta inesperada del servidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotación {{type}}] -password_label=Introduzca la contraseña para abrir este archivo PDF. -password_invalid=Contraseña no válida. Vuelva a intentarlo. -password_ok=Aceptar -password_cancel=Cancelar - -printing_not_supported=Advertencia: Imprimir no está totalmente soportado por este navegador. -printing_not_ready=Advertencia: Este PDF no se ha cargado completamente para poder imprimirse. -web_fonts_disabled=Las tipografías web están desactivadas: es imposible usar las tipografías PDF embebidas. -document_colors_not_allowed=Los documentos PDF no tienen permitido usar sus propios colores: 'Permitir a las páginas elegir sus propios colores' está desactivado en el navegador. diff --git a/cookbook/static/pdfjs/locale/es-MX/viewer.properties b/cookbook/static/pdfjs/locale/es-MX/viewer.properties deleted file mode 100644 index 88a82826e..000000000 --- a/cookbook/static/pdfjs/locale/es-MX/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Página siguiente -next_label=Siguiente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reducir -zoom_out_label=Reducir -zoom_in.title=Aumentar -zoom_in_label=Aumentar -zoom.title=Zoom -presentation_mode.title=Cambiar al modo presentación -presentation_mode_label=Modo presentación -open_file.title=Abrir archivo -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar o abrir en una nueva ventana) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Herramientas -tools_label=Herramientas -first_page.title=Ir a la primera página -first_page.label=Ir a la primera página -first_page_label=Ir a la primera página -last_page.title=Ir a la última página -last_page.label=Ir a la última página -last_page_label=Ir a la última página -page_rotate_cw.title=Girar a la derecha -page_rotate_cw.label=Girar a la derecha -page_rotate_cw_label=Girar a la derecha -page_rotate_ccw.title=Girar a la izquierda -page_rotate_ccw.label=Girar a la izquierda -page_rotate_ccw_label=Girar a la izquierda - -cursor_text_select_tool.title=Activar la herramienta de selección de texto -cursor_text_select_tool_label=Herramienta de selección de texto -cursor_hand_tool.title=Activar la herramienta de mano -cursor_hand_tool_label=Herramienta de mano - -scroll_vertical.title=Usar desplazamiento vertical -scroll_vertical_label=Desplazamiento vertical -scroll_horizontal.title=Usar desplazamiento horizontal -scroll_horizontal_label=Desplazamiento horizontal -scroll_wrapped.title=Usar desplazamiento encapsulado -scroll_wrapped_label=Desplazamiento encapsulado - -spread_none.title=No unir páginas separadas -spread_none_label=Vista de una página -spread_odd.title=Unir las páginas partiendo con una de número impar -spread_odd_label=Vista de libro impar -spread_even.title=Juntar las páginas partiendo con una de número par -spread_even_label=Vista de libro par - -# Document properties dialog box -document_properties.title=Propiedades del documento… -document_properties_label=Propiedades del documento… -document_properties_file_name=Nombre del archivo: -document_properties_file_size=Tamaño del archivo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Asunto: -document_properties_keywords=Palabras claves: -document_properties_creation_date=Fecha de creación: -document_properties_modification_date=Fecha de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creador: -document_properties_producer=Productor PDF: -document_properties_version=Versión PDF: -document_properties_page_count=Número de páginas: -document_properties_page_size=Tamaño de la página: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=horizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Oficio -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista rápida de la web: -document_properties_linearized_yes=Sí -document_properties_linearized_no=No -document_properties_close=Cerrar - -print_progress_message=Preparando documento para impresión… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Cambiar barra lateral -toggle_sidebar_notification.title=Cambiar barra lateral (índice de contenidos del documento/adjuntos) -toggle_sidebar_label=Cambiar barra lateral -document_outline.title=Mostrar esquema del documento (doble clic para expandir/contraer todos los elementos) -document_outline_label=Esquema del documento -attachments.title=Mostrar adjuntos -attachments_label=Adjuntos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Buscar en el documento -findbar_label=Buscar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura de la página {{page}} - -# Find panel button title and messages -find_input.title=Buscar -find_input.placeholder=Buscar en el documento… -find_previous.title=Ir a la anterior frase encontrada -find_previous_label=Anterior -find_next.title=Ir a la siguiente frase encontrada -find_next_label=Siguiente -find_highlight=Resaltar todo -find_match_case_label=Coincidir con mayúsculas y minúsculas -find_entire_word_label=Palabras completas -find_reached_top=Se alcanzó el inicio del documento, se buscará al final -find_reached_bottom=Se alcanzó el final del documento, se buscará al inicio -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidencia -find_match_count[two]={{current}} de {{total}} coincidencias -find_match_count[few]={{current}} de {{total}} coincidencias -find_match_count[many]={{current}} de {{total}} coincidencias -find_match_count[other]={{current}} de {{total}} coincidencias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Más de {{limit}} coincidencias -find_match_count_limit[one]=Más de {{limit}} coinciden -find_match_count_limit[two]=Más de {{limit}} coincidencias -find_match_count_limit[few]=Más de {{limit}} coincidencias -find_match_count_limit[many]=Más de {{limit}} coincidencias -find_match_count_limit[other]=Más de {{limit}} coincidencias -find_not_found=No se encontró la frase - -# Error panel labels -error_more_info=Más información -error_less_info=Menos información -error_close=Cerrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaje: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Archivo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Línea: {{line}} -rendering_error=Un error ocurrió al renderizar la página. - -# Predefined zoom values -page_scale_width=Ancho de página -page_scale_fit=Ajustar página -page_scale_auto=Zoom automático -page_scale_actual=Tamaño real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Un error ocurrió al cargar el PDF. -invalid_file_error=Archivo PDF invalido o dañado. -missing_file_error=Archivo PDF no encontrado. -unexpected_response_error=Respuesta inesperada del servidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} anotación] -password_label=Ingresa la contraseña para abrir este archivo PDF. -password_invalid=Contraseña inválida. Por favor intenta de nuevo. -password_ok=Aceptar -password_cancel=Cancelar - -printing_not_supported=Advertencia: La impresión no esta completamente soportada por este navegador. -printing_not_ready=Advertencia: El PDF no cargo completamente para impresión. -web_fonts_disabled=Las fuentes web están desactivadas: es imposible usar las fuentes PDF embebidas. -document_colors_not_allowed=Los documentos PDF no tienen permiso de usar sus propios colores: 'Permitir que las páginas elijan sus propios colores' esta desactivada en el navegador. diff --git a/cookbook/static/pdfjs/locale/et/viewer.properties b/cookbook/static/pdfjs/locale/et/viewer.properties deleted file mode 100644 index 11f47c1c2..000000000 --- a/cookbook/static/pdfjs/locale/et/viewer.properties +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Eelmine lehekülg -previous_label=Eelmine -next.title=Järgmine lehekülg -next_label=Järgmine - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Leht -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}}/{{pagesCount}}) - -zoom_out.title=Vähenda -zoom_out_label=Vähenda -zoom_in.title=Suurenda -zoom_in_label=Suurenda -zoom.title=Suurendamine -presentation_mode.title=Lülitu esitlusrežiimi -presentation_mode_label=Esitlusrežiim -open_file.title=Ava fail -open_file_label=Ava -print.title=Prindi -print_label=Prindi -download.title=Laadi alla -download_label=Laadi alla -bookmark.title=Praegune vaade (kopeeri või ava uues aknas) -bookmark_label=Praegune vaade - -# Secondary toolbar and context menu -tools.title=Tööriistad -tools_label=Tööriistad -first_page.title=Mine esimesele leheküljele -first_page.label=Mine esimesele leheküljele -first_page_label=Mine esimesele leheküljele -last_page.title=Mine viimasele leheküljele -last_page.label=Mine viimasele leheküljele -last_page_label=Mine viimasele leheküljele -page_rotate_cw.title=Pööra päripäeva -page_rotate_cw.label=Pööra päripäeva -page_rotate_cw_label=Pööra päripäeva -page_rotate_ccw.title=Pööra vastupäeva -page_rotate_ccw.label=Pööra vastupäeva -page_rotate_ccw_label=Pööra vastupäeva - -cursor_text_select_tool.title=Luba teksti valimise tööriist -cursor_text_select_tool_label=Teksti valimise tööriist -cursor_hand_tool.title=Luba sirvimistööriist -cursor_hand_tool_label=Sirvimistööriist - -scroll_vertical.title=Kasuta vertikaalset kerimist -scroll_vertical_label=Vertikaalne kerimine -scroll_horizontal.title=Kasuta horisontaalset kerimist -scroll_horizontal_label=Horisontaalne kerimine -scroll_wrapped.title=Kasuta rohkem mahutavat kerimist -scroll_wrapped_label=Rohkem mahutav kerimine - -spread_none.title=Ära kõrvuta lehekülgi -spread_none_label=Lehtede kõrvutamine puudub -spread_odd.title=Kõrvuta leheküljed, alustades paaritute numbritega lehekülgedega -spread_odd_label=Kõrvutamine paaritute numbritega alustades -spread_even.title=Kõrvuta leheküljed, alustades paarisnumbritega lehekülgedega -spread_even_label=Kõrvutamine paarisnumbritega alustades - -# Document properties dialog box -document_properties.title=Dokumendi omadused… -document_properties_label=Dokumendi omadused… -document_properties_file_name=Faili nimi: -document_properties_file_size=Faili suurus: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KiB ({{size_b}} baiti) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MiB ({{size_b}} baiti) -document_properties_title=Pealkiri: -document_properties_author=Autor: -document_properties_subject=Teema: -document_properties_keywords=Märksõnad: -document_properties_creation_date=Loodud: -document_properties_modification_date=Muudetud: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} {{time}} -document_properties_creator=Looja: -document_properties_producer=Generaator: -document_properties_version=Generaatori versioon: -document_properties_page_count=Lehekülgi: -document_properties_page_size=Lehe suurus: -document_properties_page_size_unit_inches=tolli -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertikaalpaigutus -document_properties_page_size_orientation_landscape=rõhtpaigutus -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized="Fast Web View" tugi: -document_properties_linearized_yes=Jah -document_properties_linearized_no=Ei -document_properties_close=Sulge - -print_progress_message=Dokumendi ettevalmistamine printimiseks… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Loobu - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Näita külgriba -toggle_sidebar_notification.title=Näita külgriba (dokument sisaldab sisukorda/manuseid) -toggle_sidebar_label=Näita külgriba -document_outline.title=Näita sisukorda (kõigi punktide laiendamiseks/ahendamiseks topeltklõpsa) -document_outline_label=Näita sisukorda -attachments.title=Näita manuseid -attachments_label=Manused -thumbs.title=Näita pisipilte -thumbs_label=Pisipildid -findbar.title=Otsi dokumendist -findbar_label=Otsi - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}}. lehekülg -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}}. lehekülje pisipilt - -# Find panel button title and messages -find_input.title=Otsi -find_input.placeholder=Otsi dokumendist… -find_previous.title=Otsi fraasi eelmine esinemiskoht -find_previous_label=Eelmine -find_next.title=Otsi fraasi järgmine esinemiskoht -find_next_label=Järgmine -find_highlight=Too kõik esile -find_match_case_label=Tõstutundlik -find_entire_word_label=Täissõnad -find_reached_top=Jõuti dokumendi algusesse, jätkati lõpust -find_reached_bottom=Jõuti dokumendi lõppu, jätkati algusest -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=vaste {{current}}/{{total}} -find_match_count[two]=vaste {{current}}/{{total}} -find_match_count[few]=vaste {{current}}/{{total}} -find_match_count[many]=vaste {{current}}/{{total}} -find_match_count[other]=vaste {{current}}/{{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Rohkem kui {{limit}} vastet -find_match_count_limit[one]=Rohkem kui {{limit}} vaste -find_match_count_limit[two]=Rohkem kui {{limit}} vastet -find_match_count_limit[few]=Rohkem kui {{limit}} vastet -find_match_count_limit[many]=Rohkem kui {{limit}} vastet -find_match_count_limit[other]=Rohkem kui {{limit}} vastet -find_not_found=Fraasi ei leitud - -# Error panel labels -error_more_info=Rohkem teavet -error_less_info=Vähem teavet -error_close=Sulge -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Teade: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fail: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rida: {{line}} -rendering_error=Lehe renderdamisel esines viga. - -# Predefined zoom values -page_scale_width=Mahuta laiusele -page_scale_fit=Mahuta leheküljele -page_scale_auto=Automaatne suurendamine -page_scale_actual=Tegelik suurus -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Viga -loading_error=PDFi laadimisel esines viga. -invalid_file_error=Vigane või rikutud PDF-fail. -missing_file_error=PDF-fail puudub. -unexpected_response_error=Ootamatu vastus serverilt. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=PDF-faili avamiseks sisesta parool. -password_invalid=Vigane parool. Palun proovi uuesti. -password_ok=Sobib -password_cancel=Loobu - -printing_not_supported=Hoiatus: printimine pole selle brauseri poolt täielikult toetatud. -printing_not_ready=Hoiatus: PDF pole printimiseks täielikult laaditud. -web_fonts_disabled=Veebifondid on keelatud: PDFiga kaasatud fonte pole võimalik kasutada. -document_colors_not_allowed=PDF-dokumentidel pole oma värvide kasutamine lubatud: “Veebilehtedel on lubatud kasutada oma värve” on brauseris deaktiveeritud. diff --git a/cookbook/static/pdfjs/locale/eu/viewer.properties b/cookbook/static/pdfjs/locale/eu/viewer.properties deleted file mode 100644 index e14f5cd38..000000000 --- a/cookbook/static/pdfjs/locale/eu/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Aurreko orria -previous_label=Aurrekoa -next.title=Hurrengo orria -next_label=Hurrengoa - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Orria -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages={{pagesCount}}/{{pageNumber}} - -zoom_out.title=Urrundu zooma -zoom_out_label=Urrundu zooma -zoom_in.title=Gerturatu zooma -zoom_in_label=Gerturatu zooma -zoom.title=Zooma -presentation_mode.title=Aldatu aurkezpen modura -presentation_mode_label=Arkezpen modua -open_file.title=Ireki fitxategia -open_file_label=Ireki -print.title=Inprimatu -print_label=Inprimatu -download.title=Deskargatu -download_label=Deskargatu -bookmark.title=Uneko ikuspegia (kopiatu edo ireki leiho berrian) -bookmark_label=Uneko ikuspegia - -# Secondary toolbar and context menu -tools.title=Tresnak -tools_label=Tresnak -first_page.title=Joan lehen orrira -first_page.label=Joan lehen orrira -first_page_label=Joan lehen orrira -last_page.title=Joan azken orrira -last_page.label=Joan azken orrira -last_page_label=Joan azken orrira -page_rotate_cw.title=Biratu erlojuaren norantzan -page_rotate_cw.label=Biratu erlojuaren norantzan -page_rotate_cw_label=Biratu erlojuaren norantzan -page_rotate_ccw.title=Biratu erlojuaren aurkako norantzan -page_rotate_ccw.label=Biratu erlojuaren aurkako norantzan -page_rotate_ccw_label=Biratu erlojuaren aurkako norantzan - -cursor_text_select_tool.title=Gaitu testuaren hautapen tresna -cursor_text_select_tool_label=Testuaren hautapen tresna -cursor_hand_tool.title=Gaitu eskuaren tresna -cursor_hand_tool_label=Eskuaren tresna - -scroll_vertical.title=Erabili korritze bertikala -scroll_vertical_label=Korritze bertikala -scroll_horizontal.title=Erabili korritze horizontala -scroll_horizontal_label=Korritze horizontala -scroll_wrapped.title=Erabili korritze egokitua -scroll_wrapped_label=Korritze egokitua - -spread_none.title=Ez elkartu barreiatutako orriak -spread_none_label=Barreiatzerik ez -spread_odd.title=Elkartu barreiatutako orriak bakoiti zenbakidunekin hasita -spread_odd_label=Barreiatze bakoitia -spread_even.title=Elkartu barreiatutako orriak bikoiti zenbakidunekin hasita -spread_even_label=Barreiatze bikoitia - -# Document properties dialog box -document_properties.title=Dokumentuaren propietateak… -document_properties_label=Dokumentuaren propietateak… -document_properties_file_name=Fitxategi-izena: -document_properties_file_size=Fitxategiaren tamaina: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} byte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byte) -document_properties_title=Izenburua: -document_properties_author=Egilea: -document_properties_subject=Gaia: -document_properties_keywords=Gako-hitzak: -document_properties_creation_date=Sortze-data: -document_properties_modification_date=Aldatze-data: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Sortzailea: -document_properties_producer=PDFaren ekoizlea: -document_properties_version=PDF bertsioa: -document_properties_page_count=Orrialde kopurua: -document_properties_page_size=Orriaren tamaina: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=bertikala -document_properties_page_size_orientation_landscape=horizontala -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Gutuna -document_properties_page_size_name_legal=Legala -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Webeko ikuspegi bizkorra: -document_properties_linearized_yes=Bai -document_properties_linearized_no=Ez -document_properties_close=Itxi - -print_progress_message=Dokumentua inprimatzeko prestatzen… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent=%{{progress}} -print_progress_close=Utzi - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Txandakatu alboko barra -toggle_sidebar_notification.title=Txandakatu alboko barra (dokumentuak eskema/eranskinak ditu) -toggle_sidebar_label=Txandakatu alboko barra -document_outline.title=Erakutsi dokumentuaren eskema (klik bikoitza elementu guztiak zabaltzeko/tolesteko) -document_outline_label=Dokumentuaren eskema -attachments.title=Erakutsi eranskinak -attachments_label=Eranskinak -thumbs.title=Erakutsi koadro txikiak -thumbs_label=Koadro txikiak -findbar.title=Bilatu dokumentuan -findbar_label=Bilatu - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}}. orria -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}}. orria -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}}. orriaren koadro txikia - -# Find panel button title and messages -find_input.title=Bilatu -find_input.placeholder=Bilatu dokumentuan… -find_previous.title=Bilatu esaldiaren aurreko parekatzea -find_previous_label=Aurrekoa -find_next.title=Bilatu esaldiaren hurrengo parekatzea -find_next_label=Hurrengoa -find_highlight=Nabarmendu guztia -find_match_case_label=Bat etorri maiuskulekin/minuskulekin -find_entire_word_label=Hitz osoak -find_reached_top=Dokumentuaren hasierara heldu da, bukaeratik jarraitzen -find_reached_bottom=Dokumentuaren bukaerara heldu da, hasieratik jarraitzen -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}}/{{current}}. bat etortzea -find_match_count[two]={{total}}/{{current}}. bat etortzea -find_match_count[few]={{total}}/{{current}}. bat etortzea -find_match_count[many]={{total}}/{{current}}. bat etortzea -find_match_count[other]={{total}}/{{current}}. bat etortzea -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} bat-etortze baino gehiago -find_match_count_limit[one]=Bat-etortze {{limit}} baino gehiago -find_match_count_limit[two]={{limit}} bat-etortze baino gehiago -find_match_count_limit[few]={{limit}} bat-etortze baino gehiago -find_match_count_limit[many]={{limit}} bat-etortze baino gehiago -find_match_count_limit[other]={{limit}} bat-etortze baino gehiago -find_not_found=Esaldia ez da aurkitu - -# Error panel labels -error_more_info=Informazio gehiago -error_less_info=Informazio gutxiago -error_close=Itxi -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (eraikuntza: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mezua: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fitxategia: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Lerroa: {{line}} -rendering_error=Errorea gertatu da orria errendatzean. - -# Predefined zoom values -page_scale_width=Orriaren zabalera -page_scale_fit=Doitu orrira -page_scale_auto=Zoom automatikoa -page_scale_actual=Benetako tamaina -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent=%{{scale}} - -# Loading indicator messages -loading_error_indicator=Errorea -loading_error=Errorea gertatu da PDFa kargatzean. -invalid_file_error=PDF fitxategi baliogabe edo hondatua. -missing_file_error=PDF fitxategia falta da. -unexpected_response_error=Espero gabeko zerbitzariaren erantzuna. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} ohartarazpena] -password_label=Idatzi PDF fitxategi hau irekitzeko pasahitza. -password_invalid=Pasahitz baliogabea. Saiatu berriro mesedez. -password_ok=Ados -password_cancel=Utzi - -printing_not_supported=Abisua: inprimatzeko euskarria ez da erabatekoa nabigatzaile honetan. -printing_not_ready=Abisua: PDFa ez dago erabat kargatuta inprimatzeko. -web_fonts_disabled=Webeko letra-tipoak desgaituta daude: ezin dira kapsulatutako PDF letra-tipoak erabili. -document_colors_not_allowed=PDF dokumentuek ez dute beraien koloreak erabiltzeko baimenik: 'Baimendu orriak beraien letra-tipoak aukeratzea' desaktibatuta dago nabigatzailean. diff --git a/cookbook/static/pdfjs/locale/fa/viewer.properties b/cookbook/static/pdfjs/locale/fa/viewer.properties deleted file mode 100644 index e95738c6e..000000000 --- a/cookbook/static/pdfjs/locale/fa/viewer.properties +++ /dev/null @@ -1,223 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=صفحهٔ قبلی -previous_label=قبلی -next.title=صفحهٔ بعدی -next_label=بعدی - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=صفحه -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=از {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}}از {{pagesCount}}) - -zoom_out.title=کوچک‌نمایی -zoom_out_label=کوچک‌نمایی -zoom_in.title=بزرگ‌نمایی -zoom_in_label=بزرگ‌نمایی -zoom.title=زوم -presentation_mode.title=تغییر به حالت ارائه -presentation_mode_label=حالت ارائه -open_file.title=باز کردن پرونده -open_file_label=باز کردن -print.title=چاپ -print_label=چاپ -download.title=بارگیری -download_label=بارگیری -bookmark.title=نمای فعلی (رونوشت و یا نشان دادن در پنجره جدید) -bookmark_label=نمای فعلی - -# Secondary toolbar and context menu -tools.title=ابزارها -tools_label=ابزارها -first_page.title=برو به اولین صفحه -first_page.label=برو یه اولین صفحه -first_page_label=برو به اولین صفحه -last_page.title=برو به آخرین صفحه -last_page.label=برو به آخرین صفحه -last_page_label=برو به آخرین صفحه -page_rotate_cw.title=چرخش ساعتگرد -page_rotate_cw.label=چرخش ساعتگرد -page_rotate_cw_label=چرخش ساعتگرد -page_rotate_ccw.title=چرخش پاد ساعتگرد -page_rotate_ccw.label=چرخش پاد ساعتگرد -page_rotate_ccw_label=چرخش پاد ساعتگرد - -cursor_text_select_tool.title=فعال کردن ابزارِ انتخابِ متن -cursor_text_select_tool_label=ابزارِ انتخابِ متن -cursor_hand_tool.title=فعال کردن ابزارِ دست -cursor_hand_tool_label=ابزار دست - -scroll_vertical.title=استفاده از پیمایش عمودی -scroll_vertical_label=پیمایش عمودی -scroll_horizontal.title=استفاده از پیمایش افقی -scroll_horizontal_label=پیمایش افقی - - -# Document properties dialog box -document_properties.title=خصوصیات سند... -document_properties_label=خصوصیات سند... -document_properties_file_name=نام فایل: -document_properties_file_size=حجم پرونده: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} کیلوبایت ({{size_b}} بایت) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} مگابایت ({{size_b}} بایت) -document_properties_title=عنوان: -document_properties_author=نویسنده: -document_properties_subject=موضوع: -document_properties_keywords=کلیدواژه‌ها: -document_properties_creation_date=تاریخ ایجاد: -document_properties_modification_date=تاریخ ویرایش: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}، {{time}} -document_properties_creator=ایجاد کننده: -document_properties_producer=ایجاد کننده PDF: -document_properties_version=نسخه PDF: -document_properties_page_count=تعداد صفحات: -document_properties_page_size=اندازه صفحه: -document_properties_page_size_unit_inches=اینچ -document_properties_page_size_unit_millimeters=میلی‌متر -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=نامه -document_properties_page_size_name_legal=حقوقی -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=بله -document_properties_linearized_no=خیر -document_properties_close=بستن - -print_progress_message=آماده سازی مدارک برای چاپ کردن… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=لغو - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=باز و بسته کردن نوار کناری -toggle_sidebar_notification.title=تغییر وضعیت نوار کناری (سند حاوی طرح/پیوست است) -toggle_sidebar_label=تغییرحالت نوارکناری -document_outline.title=نمایش رئوس مطالب مدارک(برای بازشدن/جمع شدن همه موارد دوبار کلیک کنید) -document_outline_label=طرح نوشتار -attachments.title=نمایش پیوست‌ها -attachments_label=پیوست‌ها -thumbs.title=نمایش تصاویر بندانگشتی -thumbs_label=تصاویر بندانگشتی -findbar.title=جستجو در سند -findbar_label=پیدا کردن - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=صفحه {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=تصویر بند‌ انگشتی صفحه {{page}} - -# Find panel button title and messages -find_input.title=پیدا کردن -find_input.placeholder=پیدا کردن در سند… -find_previous.title=پیدا کردن رخداد قبلی عبارت -find_previous_label=قبلی -find_next.title=پیدا کردن رخداد بعدی عبارت -find_next_label=بعدی -find_highlight=برجسته و هایلایت کردن همه موارد -find_match_case_label=تطبیق کوچکی و بزرگی حروف -find_entire_word_label=تمام کلمه‌ها -find_reached_top=به بالای صفحه رسیدیم، از پایین ادامه می‌دهیم -find_reached_bottom=به آخر صفحه رسیدیم، از بالا ادامه می‌دهیم -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count[one]={{current}} از {{total}} مطابقت دارد -find_match_count[two]={{current}} از {{total}} مطابقت دارد -find_match_count[few]={{current}} از {{total}} مطابقت دارد -find_match_count[many]={{current}} از {{total}} مطابقت دارد -find_match_count[other]={{current}} از {{total}} مطابقت دارد -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_not_found=عبارت پیدا نشد - -# Error panel labels -error_more_info=اطلاعات بیشتر -error_less_info=اطلاعات کمتر -error_close=بستن -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=‏PDF.js ورژن{{version}} ‏(ساخت: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=پیام: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=توده: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=پرونده: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=سطر: {{line}} -rendering_error=هنگام بارگیری صفحه خطایی رخ داد. - -# Predefined zoom values -page_scale_width=عرض صفحه -page_scale_fit=اندازه کردن صفحه -page_scale_auto=بزرگنمایی خودکار -page_scale_actual=اندازه واقعی‌ -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=خطا -loading_error=هنگام بارگیری پرونده PDF خطایی رخ داد. -invalid_file_error=پرونده PDF نامعتبر یامعیوب می‌باشد. -missing_file_error=پرونده PDF یافت نشد. -unexpected_response_error=پاسخ پیش بینی نشده سرور - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=جهت باز کردن پرونده PDF گذرواژه را وارد نمائید. -password_invalid=گذرواژه نامعتبر. لطفا مجددا تلاش کنید. -password_ok=تأیید -password_cancel=لغو - -printing_not_supported=هشدار: قابلیت چاپ به‌طور کامل در این مرورگر پشتیبانی نمی‌شود. -printing_not_ready=اخطار: پرونده PDF بطور کامل بارگیری نشده و امکان چاپ وجود ندارد. -web_fonts_disabled=فونت های تحت وب غیر فعال شده اند: امکان استفاده از نمایش دهنده داخلی PDF وجود ندارد. -document_colors_not_allowed=فایلهای PDF اجازه ندارند تا از رنگ‌های خود استفاده کنند: گزینه «به صفحات اجازه بده تا از رنگ‌های خود استفاده کنند» در مرورگر غیر فعال است. diff --git a/cookbook/static/pdfjs/locale/ff/viewer.properties b/cookbook/static/pdfjs/locale/ff/viewer.properties deleted file mode 100644 index 2e94346aa..000000000 --- a/cookbook/static/pdfjs/locale/ff/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Hello Ɓennungo -previous_label=Ɓennuɗo -next.title=Hello faango -next_label=Yeeso - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Hello -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=e nder {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Lonngo Woɗɗa -zoom_out_label=Lonngo Woɗɗa -zoom_in.title=Lonngo Ara -zoom_in_label=Lonngo Ara -zoom.title=Lonngo -presentation_mode.title=Faytu to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Uddit Fiilde -open_file_label=Uddit -print.title=Winndito -print_label=Winndito -download.title=Aawto -download_label=Aawto -bookmark.title=Jiytol gonangol (natto walla uddit e henorde) -bookmark_label=Jiytol Gonangol - -# Secondary toolbar and context menu -tools.title=Kuutorɗe -tools_label=Kuutorɗe -first_page.title=Yah to hello adanngo -first_page.label=Yah to hello adanngo -first_page_label=Yah to hello adanngo -last_page.title=Yah to hello wattindiingo -last_page.label=Yah to hello wattindiingo -last_page_label=Yah to hello wattindiingo -page_rotate_cw.title=Yiiltu Faya Ñaamo -page_rotate_cw.label=Yiiltu Faya Ñaamo -page_rotate_cw_label=Yiiltu Faya Ñaamo -page_rotate_ccw.title=Yiiltu Faya Nano -page_rotate_ccw.label=Yiiltu Faya Nano -page_rotate_ccw_label=Yiiltu Faya Nano - -cursor_text_select_tool.title=Gollin kaɓirgel cuɓirgel binndi -cursor_text_select_tool_label=Kaɓirgel cuɓirgel binndi -cursor_hand_tool.title=Hurmin kuutorgal junngo -cursor_hand_tool_label=Kaɓirgel junngo - -scroll_vertical.title=Huutoro gorwitol daringol -scroll_vertical_label=Gorwitol daringol -scroll_horizontal.title=Huutoro gorwitol lelingol -scroll_horizontal_label=Gorwitol daringol -scroll_wrapped.title=Huutoro gorwitol coomingol -scroll_wrapped_label=Gorwitol coomingol - -spread_none.title=Hoto tawtu kelle kelle -spread_none_label=Alaa Spreads -spread_odd.title=Tawtu kelle puɗɗortooɗe kelle teelɗe -spread_odd_label=Kelle teelɗe -spread_even.title=Tawtu ɗereeji kelle puɗɗoriiɗi kelle teeltuɗe -spread_even_label=Kelle teeltuɗe - -# Document properties dialog box -document_properties.title=Keeroraaɗi Winndannde… -document_properties_label=Keeroraaɗi Winndannde… -document_properties_file_name=Innde fiilde: -document_properties_file_size=Ɓetol fiilde: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bite) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bite) -document_properties_title=Tiitoonde: -document_properties_author=Binnduɗo: -document_properties_subject=Toɓɓere: -document_properties_keywords=Kelmekele jiytirɗe: -document_properties_creation_date=Ñalnde Sosaa: -document_properties_modification_date=Ñalnde Waylaa: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Cosɗo: -document_properties_producer=Paggiiɗo PDF: -document_properties_version=Yamre PDF: -document_properties_page_count=Limoore Kelle: -document_properties_page_size=Ɓeto Hello: -document_properties_page_size_unit_inches=nder -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=dariingo -document_properties_page_size_orientation_landscape=wertiingo -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Ɓataake -document_properties_page_size_name_legal=Laawol -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Ɗisngo geese yaawngo: -document_properties_linearized_yes=Eey -document_properties_linearized_no=Alaa -document_properties_close=Uddu - -print_progress_message=Nana heboo winnditaade fiilannde… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Haaytu - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggilo Palal Sawndo -toggle_sidebar_notification.title=Palal sawndo (dokimaa oo ina waɗi taarngo/cinnde) -toggle_sidebar_label=Toggilo Palal Sawndo -document_outline.title=Hollu Ƴiyal Fiilannde (dobdobo ngam wertude/taggude teme fof) -document_outline_label=Toɓɓe Fiilannde -attachments.title=Hollu Ɗisanɗe -attachments_label=Ɗisanɗe -thumbs.title=Hollu Dooɓe -thumbs_label=Dooɓe -findbar.title=Yiylo e fiilannde -findbar_label=Yiytu - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Hello {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Dooɓre Hello {{page}} - -# Find panel button title and messages -find_input.title=Yiytu -find_input.placeholder=Yiylo nder dokimaa -find_previous.title=Yiylo cilol ɓennugol konngol ngol -find_previous_label=Ɓennuɗo -find_next.title=Yiylo cilol garowol konngol ngol -find_next_label=Yeeso -find_highlight=Jalbin fof -find_match_case_label=Jaaɓnu darnde -find_entire_word_label=Kelme timmuɗe tan -find_reached_top=Heɓii fuɗɗorde fiilannde, jokku faya les -find_reached_bottom=Heɓii hoore fiilannde, jokku faya les -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} wonande laabi {{total}} -find_match_count[two]={{current}} wonande laabi {{total}} -find_match_count[few]={{current}} wonande laabi {{total}} -find_match_count[many]={{current}} wonande laabi {{total}} -find_match_count[other]={{current}} wonande laabi {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Ko ɓuri laabi {{limit}} -find_match_count_limit[one]=Ko ɓuri laani {{limit}} -find_match_count_limit[two]=Ko ɓuri laabi {{limit}} -find_match_count_limit[few]=Ko ɓuri laabi {{limit}} -find_match_count_limit[many]=Ko ɓuri laabi {{limit}} -find_match_count_limit[other]=Ko ɓuri laabi {{limit}} -find_not_found=Konngi njiyataa - -# Error panel labels -error_more_info=Ɓeydu Humpito -error_less_info=Ustu Humpito -error_close=Uddu -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Ɓatakuure: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fiilde: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Gorol: {{line}} -rendering_error=Juumre waɗii tuma nde yoŋkittoo hello. - -# Predefined zoom values -page_scale_width=Njaajeendi Hello -page_scale_fit=Keƴeendi Hello -page_scale_auto=Loongorde Jaajol -page_scale_actual=Ɓetol Jaati -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Juumre -loading_error=Juumre waɗii tuma nde loowata PDF oo. -invalid_file_error=Fiilde PDF moƴƴaani walla jiibii. -missing_file_error=Fiilde PDF ena ŋakki. -unexpected_response_error=Jaabtol sarworde tijjinooka. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Siiftannde] -password_label=Naatu finnde ngam uddite ndee fiilde PDF. -password_invalid=Finnde moƴƴaani. Tiiɗno eto kadi. -password_ok=OK -password_cancel=Haaytu - -printing_not_supported=Reentino: Winnditagol tammbitaaka no feewi e ndee wanngorde. -printing_not_ready=Reentino: PDF oo loowaaki haa timmi ngam winnditagol. -web_fonts_disabled=Ponte geese ko daaƴaaɗe: horiima huutoraade ponte PDF coomtoraaɗe. -document_colors_not_allowed=Piilanɗe PDF njamiraaka yoo kuutoro goobuuji mum'en keeriiɗi: 'Yamir kello yoo kuutoro goobuuki keeriiɗi' koko daaƴaa e wanngorde ndee. diff --git a/cookbook/static/pdfjs/locale/fi/viewer.properties b/cookbook/static/pdfjs/locale/fi/viewer.properties deleted file mode 100644 index 76bfa13a2..000000000 --- a/cookbook/static/pdfjs/locale/fi/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Edellinen sivu -previous_label=Edellinen -next.title=Seuraava sivu -next_label=Seuraava - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Sivu -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=Loitonna -zoom_out_label=Loitonna -zoom_in.title=Lähennä -zoom_in_label=Lähennä -zoom.title=Suurennus -presentation_mode.title=Siirry esitystilaan -presentation_mode_label=Esitystila -open_file.title=Avaa tiedosto -open_file_label=Avaa -print.title=Tulosta -print_label=Tulosta -download.title=Lataa -download_label=Lataa -bookmark.title=Avoin ikkuna (kopioi tai avaa uuteen ikkunaan) -bookmark_label=Avoin ikkuna - -# Secondary toolbar and context menu -tools.title=Tools -tools_label=Tools -first_page.title=Siirry ensimmäiselle sivulle -first_page.label=Siirry ensimmäiselle sivulle -first_page_label=Siirry ensimmäiselle sivulle -last_page.title=Siirry viimeiselle sivulle -last_page.label=Siirry viimeiselle sivulle -last_page_label=Siirry viimeiselle sivulle -page_rotate_cw.title=Kierrä oikealle -page_rotate_cw.label=Kierrä oikealle -page_rotate_cw_label=Kierrä oikealle -page_rotate_ccw.title=Kierrä vasemmalle -page_rotate_ccw.label=Kierrä vasemmalle -page_rotate_ccw_label=Kierrä vasemmalle - -cursor_text_select_tool.title=Käytä tekstinvalintatyökalua -cursor_text_select_tool_label=Tekstinvalintatyökalu -cursor_hand_tool.title=Käytä käsityökalua -cursor_hand_tool_label=Käsityökalu - -scroll_vertical.title=Käytä pystysuuntaista vieritystä -scroll_vertical_label=Pystysuuntainen vieritys -scroll_horizontal.title=Käytä vaakasuuntaista vieritystä -scroll_horizontal_label=Vaakasuuntainen vieritys -scroll_wrapped.title=Käytä rivittyvää vieritystä -scroll_wrapped_label=Rivittyvä vieritys - -spread_none.title=Älä yhdistä sivuja aukeamiksi -spread_none_label=Ei aukeamia -spread_odd.title=Yhdistä sivut aukeamiksi alkaen parittomalta sivulta -spread_odd_label=Parittomalta alkavat aukeamat -spread_even.title=Yhdistä sivut aukeamiksi alkaen parilliselta sivulta -spread_even_label=Parilliselta alkavat aukeamat - -# Document properties dialog box -document_properties.title=Dokumentin ominaisuudet… -document_properties_label=Dokumentin ominaisuudet… -document_properties_file_name=Tiedostonimi: -document_properties_file_size=Tiedoston koko: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kt ({{size_b}} tavua) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} Mt ({{size_b}} tavua) -document_properties_title=Otsikko: -document_properties_author=Tekijä: -document_properties_subject=Aihe: -document_properties_keywords=Avainsanat: -document_properties_creation_date=Luomispäivämäärä: -document_properties_modification_date=Muokkauspäivämäärä: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Luoja: -document_properties_producer=PDF-tuottaja: -document_properties_version=PDF-versio: -document_properties_page_count=Sivujen määrä: -document_properties_page_size=Sivun koko: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=pysty -document_properties_page_size_orientation_landscape=vaaka -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Nopea web-katselu: -document_properties_linearized_yes=Kyllä -document_properties_linearized_no=Ei -document_properties_close=Sulje - -print_progress_message=Valmistellaan dokumenttia tulostamista varten… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Peruuta - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Näytä/piilota sivupaneeli -toggle_sidebar_notification.title=Näytä/piilota sivupaneeli (dokumentissa on sisällys tai liitteitä) -toggle_sidebar_label=Näytä/piilota sivupaneeli -document_outline.title=Näytä dokumentin sisällys (laajenna tai kutista kohdat kaksoisnapsauttamalla) -document_outline_label=Dokumentin sisällys -attachments.title=Näytä liitteet -attachments_label=Liitteet -thumbs.title=Näytä pienoiskuvat -thumbs_label=Pienoiskuvat -findbar.title=Etsi dokumentista -findbar_label=Etsi - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Sivu {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Sivu {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Pienoiskuva sivusta {{page}} - -# Find panel button title and messages -find_input.title=Etsi -find_input.placeholder=Etsi dokumentista… -find_previous.title=Etsi hakusanan edellinen osuma -find_previous_label=Edellinen -find_next.title=Etsi hakusanan seuraava osuma -find_next_label=Seuraava -find_highlight=Korosta kaikki -find_match_case_label=Huomioi kirjainkoko -find_entire_word_label=Kokonaiset sanat -find_reached_top=Päästiin dokumentin alkuun, jatketaan lopusta -find_reached_bottom=Päästiin sivun loppuun, jatketaan alusta -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} / {{total}} osuma -find_match_count[two]={{current}} / {{total}} osumaa -find_match_count[few]={{current}} / {{total}} osumaa -find_match_count[many]={{current}} / {{total}} osumaa -find_match_count[other]={{current}} / {{total}} osumaa -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Enemmän kuin {{limit}} osumaa -find_match_count_limit[one]=Enemmän kuin {{limit}} osuma -find_match_count_limit[two]=Enemmän kuin {{limit}} osumaa -find_match_count_limit[few]=Enemmän kuin {{limit}} osumaa -find_match_count_limit[many]=Enemmän kuin {{limit}} osumaa -find_match_count_limit[other]=Enemmän kuin {{limit}} osumaa -find_not_found=Hakusanaa ei löytynyt - -# Error panel labels -error_more_info=Lisätietoja -error_less_info=Lisätietoja -error_close=Sulje -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (kooste: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Virheilmoitus: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pino: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Tiedosto: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rivi: {{line}} -rendering_error=Tapahtui virhe piirrettäessä sivua. - -# Predefined zoom values -page_scale_width=Sivun leveys -page_scale_fit=Koko sivu -page_scale_auto=Automaattinen suurennus -page_scale_actual=Todellinen koko -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Virhe -loading_error=Tapahtui virhe ladattaessa PDF-tiedostoa. -invalid_file_error=Virheellinen tai vioittunut PDF-tiedosto. -missing_file_error=Puuttuva PDF-tiedosto. -unexpected_response_error=Odottamaton vastaus palvelimelta. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Kirjoita PDF-tiedoston salasana. -password_invalid=Virheellinen salasana. Yritä uudestaan. -password_ok=OK -password_cancel=Peruuta - -printing_not_supported=Varoitus: Selain ei tue kaikkia tulostustapoja. -printing_not_ready=Varoitus: PDF-tiedosto ei ole vielä latautunut kokonaan, eikä sitä voi vielä tulostaa. -web_fonts_disabled=Verkkosivujen omat kirjasinlajit on estetty: ei voida käyttää upotettuja PDF-kirjasinlajeja. -document_colors_not_allowed=PDF-dokumenttien ei ole sallittua käyttää omia värejään: Asetusta ”Sivut saavat käyttää omia värejään oletusten sijaan” ei ole valittu selaimen asetuksissa. diff --git a/cookbook/static/pdfjs/locale/fr/viewer.properties b/cookbook/static/pdfjs/locale/fr/viewer.properties deleted file mode 100644 index 7df1d3d51..000000000 --- a/cookbook/static/pdfjs/locale/fr/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Page précédente -previous_label=Précédent -next.title=Page suivante -next_label=Suivant - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Page -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=sur {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} sur {{pagesCount}}) - -zoom_out.title=Zoom arrière -zoom_out_label=Zoom arrière -zoom_in.title=Zoom avant -zoom_in_label=Zoom avant -zoom.title=Zoom -presentation_mode.title=Basculer en mode présentation -presentation_mode_label=Mode présentation -open_file.title=Ouvrir le fichier -open_file_label=Ouvrir le fichier -print.title=Imprimer -print_label=Imprimer -download.title=Télécharger -download_label=Télécharger -bookmark.title=Affichage courant (copier ou ouvrir dans une nouvelle fenêtre) -bookmark_label=Affichage actuel - -# Secondary toolbar and context menu -tools.title=Outils -tools_label=Outils -first_page.title=Aller à la première page -first_page.label=Aller à la première page -first_page_label=Aller à la première page -last_page.title=Aller à la dernière page -last_page.label=Aller à la dernière page -last_page_label=Aller à la dernière page -page_rotate_cw.title=Rotation horaire -page_rotate_cw.label=Rotation horaire -page_rotate_cw_label=Rotation horaire -page_rotate_ccw.title=Rotation antihoraire -page_rotate_ccw.label=Rotation antihoraire -page_rotate_ccw_label=Rotation antihoraire - -cursor_text_select_tool.title=Activer l’outil de sélection de texte -cursor_text_select_tool_label=Outil de sélection de texte -cursor_hand_tool.title=Activer l’outil main -cursor_hand_tool_label=Outil main - -scroll_vertical.title=Utiliser le défilement vertical -scroll_vertical_label=Défilement vertical -scroll_horizontal.title=Utiliser le défilement horizontal -scroll_horizontal_label=Défilement horizontal -scroll_wrapped.title=Utiliser le défilement par bloc -scroll_wrapped_label=Défilement par bloc - -spread_none.title=Ne pas afficher les pages deux à deux -spread_none_label=Pas de double affichage -spread_odd.title=Afficher les pages par deux, impaires à gauche -spread_odd_label=Doubles pages, impaires à gauche -spread_even.title=Afficher les pages par deux, paires à gauche -spread_even_label=Doubles pages, paires à gauche - -# Document properties dialog box -document_properties.title=Propriétés du document… -document_properties_label=Propriétés du document… -document_properties_file_name=Nom du fichier : -document_properties_file_size=Taille du fichier : -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} Ko ({{size_b}} octets) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} Mo ({{size_b}} octets) -document_properties_title=Titre : -document_properties_author=Auteur : -document_properties_subject=Sujet : -document_properties_keywords=Mots-clés : -document_properties_creation_date=Date de création : -document_properties_modification_date=Modifié le : -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} à {{time}} -document_properties_creator=Créé par : -document_properties_producer=Outil de conversion PDF : -document_properties_version=Version PDF : -document_properties_page_count=Nombre de pages : -document_properties_page_size=Taille de la page : -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=paysage -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=lettre -document_properties_page_size_name_legal=document juridique -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Affichage rapide des pages web : -document_properties_linearized_yes=Oui -document_properties_linearized_no=Non -document_properties_close=Fermer - -print_progress_message=Préparation du document pour l’impression… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Annuler - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Afficher/Masquer le panneau latéral -toggle_sidebar_notification.title=Afficher/Masquer le panneau latéral (le document contient des signets/pièces jointes) -toggle_sidebar_label=Afficher/Masquer le panneau latéral -document_outline.title=Afficher les signets du document (double-cliquer pour développer/réduire tous les éléments) -document_outline_label=Signets du document -attachments.title=Afficher les pièces jointes -attachments_label=Pièces jointes -thumbs.title=Afficher les vignettes -thumbs_label=Vignettes -findbar.title=Rechercher dans le document -findbar_label=Rechercher - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Page {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Page {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Vignette de la page {{page}} - -# Find panel button title and messages -find_input.title=Rechercher -find_input.placeholder=Rechercher dans le document… -find_previous.title=Trouver l’occurrence précédente de l’expression -find_previous_label=Précédent -find_next.title=Trouver la prochaine occurrence de l’expression -find_next_label=Suivant -find_highlight=Tout surligner -find_match_case_label=Respecter la casse -find_entire_word_label=Mots entiers -find_reached_top=Haut de la page atteint, poursuite depuis la fin -find_reached_bottom=Bas de la page atteint, poursuite au début -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=Occurrence {{current}} sur {{total}} -find_match_count[two]=Occurrence {{current}} sur {{total}} -find_match_count[few]=Occurrence {{current}} sur {{total}} -find_match_count[many]=Occurrence {{current}} sur {{total}} -find_match_count[other]=Occurrence {{current}} sur {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Plus de {{limit}} correspondances -find_match_count_limit[one]=Plus de {{limit}} correspondance -find_match_count_limit[two]=Plus de {{limit}} correspondances -find_match_count_limit[few]=Plus de {{limit}} correspondances -find_match_count_limit[many]=Plus de {{limit}} correspondances -find_match_count_limit[other]=Plus de {{limit}} correspondances -find_not_found=Expression non trouvée - -# Error panel labels -error_more_info=Plus d’informations -error_less_info=Moins d’informations -error_close=Fermer -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (identifiant de compilation : {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message : {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pile : {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fichier : {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Ligne : {{line}} -rendering_error=Une erreur s’est produite lors de l’affichage de la page. - -# Predefined zoom values -page_scale_width=Pleine largeur -page_scale_fit=Page entière -page_scale_auto=Zoom automatique -page_scale_actual=Taille réelle -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Erreur -loading_error=Une erreur s’est produite lors du chargement du fichier PDF. -invalid_file_error=Fichier PDF invalide ou corrompu. -missing_file_error=Fichier PDF manquant. -unexpected_response_error=Réponse inattendue du serveur. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} à {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Annotation {{type}}] -password_label=Veuillez saisir le mot de passe pour ouvrir ce fichier PDF. -password_invalid=Mot de passe incorrect. Veuillez réessayer. -password_ok=OK -password_cancel=Annuler - -printing_not_supported=Attention : l’impression n’est pas totalement prise en charge par ce navigateur. -printing_not_ready=Attention : le PDF n’est pas entièrement chargé pour pouvoir l’imprimer. -web_fonts_disabled=Les polices web sont désactivées : impossible d’utiliser les polices intégrées au PDF. -document_colors_not_allowed=Les documents PDF ne peuvent pas utiliser leurs propres couleurs : « Autoriser les pages web à utiliser leurs propres couleurs » est désactivé dans le navigateur. diff --git a/cookbook/static/pdfjs/locale/fy-NL/viewer.properties b/cookbook/static/pdfjs/locale/fy-NL/viewer.properties deleted file mode 100644 index 4d6b18c69..000000000 --- a/cookbook/static/pdfjs/locale/fy-NL/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Foarige side -previous_label=Foarige -next.title=Folgjende side -next_label=Folgjende - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Side -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=fa {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} fan {{pagesCount}}) - -zoom_out.title=Utzoome -zoom_out_label=Utzoome -zoom_in.title=Ynzoome -zoom_in_label=Ynzoome -zoom.title=Zoome -presentation_mode.title=Wikselje nei presintaasjemodus -presentation_mode_label=Presintaasjemodus -open_file.title=Bestân iepenje -open_file_label=Iepenje -print.title=Ofdrukke -print_label=Ofdrukke -download.title=Downloade -download_label=Downloade -bookmark.title=Aktuele finster (kopiearje of iepenje yn nij finster) -bookmark_label=Aktuele finster - -# Secondary toolbar and context menu -tools.title=Ark -tools_label=Ark -first_page.title=Gean nei earste side -first_page.label=Nei earste side gean -first_page_label=Gean nei earste side -last_page.title=Gean nei lêste side -last_page.label=Nei lêste side gean -last_page_label=Gean nei lêste side -page_rotate_cw.title=Rjochtsom draaie -page_rotate_cw.label=Rjochtsom draaie -page_rotate_cw_label=Rjochtsom draaie -page_rotate_ccw.title=Loftsom draaie -page_rotate_ccw.label=Loftsom draaie -page_rotate_ccw_label=Loftsom draaie - -cursor_text_select_tool.title=Tekstseleksjehelpmiddel ynskeakelje -cursor_text_select_tool_label=Tekstseleksjehelpmiddel -cursor_hand_tool.title=Hânhelpmiddel ynskeakelje -cursor_hand_tool_label=Hânhelpmiddel - -scroll_vertical.title=Fertikaal skowe brûke -scroll_vertical_label=Fertikaal skowe -scroll_horizontal.title=Horizontaal skowe brûke -scroll_horizontal_label=Horizontaal skowe -scroll_wrapped.title=Skowe mei oersjoch brûke -scroll_wrapped_label=Skowe mei oersjoch - -spread_none.title=Sidesprieding net gearfetsje -spread_none_label=Gjin sprieding -spread_odd.title=Sidesprieding gearfetsje te starten mei ûneven nûmers -spread_odd_label=Uneven sprieding -spread_even.title=Sidesprieding gearfetsje te starten mei even nûmers -spread_even_label=Even sprieding - -# Document properties dialog box -document_properties.title=Dokuminteigenskippen… -document_properties_label=Dokuminteigenskippen… -document_properties_file_name=Bestânsnamme: -document_properties_file_size=Bestânsgrutte: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titel: -document_properties_author=Auteur: -document_properties_subject=Underwerp: -document_properties_keywords=Kaaiwurden: -document_properties_creation_date=Oanmaakdatum: -document_properties_modification_date=Bewurkingsdatum: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Makker: -document_properties_producer=PDF-makker: -document_properties_version=PDF-ferzje: -document_properties_page_count=Siden: -document_properties_page_size=Sideformaat: -document_properties_page_size_unit_inches=yn -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=steand -document_properties_page_size_orientation_landscape=lizzend -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Juridysk -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Flugge webwerjefte: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nee -document_properties_close=Slute - -print_progress_message=Dokumint tariede oar ôfdrukken… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Annulearje - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Sidebalke yn-/útskeakelje -toggle_sidebar_notification.title=Sidebalke yn-/útskeakelje (dokumint befettet outline/bylagen) -toggle_sidebar_label=Sidebalke yn-/útskeakelje -document_outline.title=Dokumintoersjoch toane (dûbelklik om alle items út/yn te klappen) -document_outline_label=Dokumintoersjoch -attachments.title=Bylagen toane -attachments_label=Bylagen -thumbs.title=Foarbylden toane -thumbs_label=Foarbylden -findbar.title=Sykje yn dokumint -findbar_label=Sykje - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Side {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Side {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Foarbyld fan side {{page}} - -# Find panel button title and messages -find_input.title=Sykje -find_input.placeholder=Sykje yn dokumint… -find_previous.title=It foarige foarkommen fan de tekst sykje -find_previous_label=Foarige -find_next.title=It folgjende foarkommen fan de tekst sykje -find_next_label=Folgjende -find_highlight=Alles markearje -find_match_case_label=Haadlettergefoelich -find_entire_word_label=Hiele wurden -find_reached_top=Boppekant fan dokumint berikt, trochgien fan ûnder ôf -find_reached_bottom=Ein fan dokumint berikt, trochgien fan boppe ôf -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} fan {{total}} oerienkomst -find_match_count[two]={{current}} fan {{total}} oerienkomsten -find_match_count[few]={{current}} fan {{total}} oerienkomsten -find_match_count[many]={{current}} fan {{total}} oerienkomsten -find_match_count[other]={{current}} fan {{total}} oerienkomsten -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mear as {{limit}} oerienkomsten -find_match_count_limit[one]=Mear as {{limit}} oerienkomst -find_match_count_limit[two]=Mear as {{limit}} oerienkomsten -find_match_count_limit[few]=Mear as {{limit}} oerienkomsten -find_match_count_limit[many]=Mear as {{limit}} oerienkomsten -find_match_count_limit[other]=Mear as {{limit}} oerienkomsten -find_not_found=Tekst net fûn - -# Error panel labels -error_more_info=Mear ynformaasje -error_less_info=Minder ynformaasje -error_close=Slute -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js f{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Berjocht: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Bestân: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rigel: {{line}} -rendering_error=Der is in flater bard by it renderjen fan de side. - -# Predefined zoom values -page_scale_width=Sidebreedte -page_scale_fit=Hiele side -page_scale_auto=Automatysk zoome -page_scale_actual=Werklike grutte -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Flater -loading_error=Der is in flater bard by it laden fan de PDF. -invalid_file_error=Ynfalide of korruptearre PDF-bestân. -missing_file_error=PDF-bestân ûntbrekt. -unexpected_response_error=Unferwacht serverantwurd. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}-annotaasje] -password_label=Jou it wachtwurd om dit PDF-bestân te iepenjen. -password_invalid=Ferkeard wachtwurd. Probearje opnij. -password_ok=OK -password_cancel=Annulearje - -printing_not_supported=Warning: Printen is net folslein stipe troch dizze browser. -printing_not_ready=Warning: PDF is net folslein laden om ôf te drukken. -web_fonts_disabled=Weblettertypen binne útskeakele: gebrûk fan ynsluten PDF-lettertypen is net mooglik. -document_colors_not_allowed=PDF-dokuminten meie harren eigen kleuren net brûke: ‘Siden tastean om harren eigen kleuren te kiezen’ is útskeakele yn de browser. diff --git a/cookbook/static/pdfjs/locale/ga-IE/viewer.properties b/cookbook/static/pdfjs/locale/ga-IE/viewer.properties deleted file mode 100644 index 62f1a551b..000000000 --- a/cookbook/static/pdfjs/locale/ga-IE/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=An Leathanach Roimhe Seo -previous_label=Roimhe Seo -next.title=An Chéad Leathanach Eile -next_label=Ar Aghaidh - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Leathanach -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=as {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} as {{pagesCount}}) - -zoom_out.title=Súmáil Amach -zoom_out_label=Súmáil Amach -zoom_in.title=Súmáil Isteach -zoom_in_label=Súmáil Isteach -zoom.title=Súmáil -presentation_mode.title=Úsáid an Mód Láithreoireachta -presentation_mode_label=Mód Láithreoireachta -open_file.title=Oscail Comhad -open_file_label=Oscail -print.title=Priontáil -print_label=Priontáil -download.title=Íoslódáil -download_label=Íoslódáil -bookmark.title=An t-amharc reatha (cóipeáil nó oscail i bhfuinneog nua) -bookmark_label=An tAmharc Reatha - -# Secondary toolbar and context menu -tools.title=Uirlisí -tools_label=Uirlisí -first_page.title=Go dtí an chéad leathanach -first_page.label=Go dtí an chéad leathanach -first_page_label=Go dtí an chéad leathanach -last_page.title=Go dtí an leathanach deiridh -last_page.label=Go dtí an leathanach deiridh -last_page_label=Go dtí an leathanach deiridh -page_rotate_cw.title=Rothlaigh ar deiseal -page_rotate_cw.label=Rothlaigh ar deiseal -page_rotate_cw_label=Rothlaigh ar deiseal -page_rotate_ccw.title=Rothlaigh ar tuathal -page_rotate_ccw.label=Rothlaigh ar tuathal -page_rotate_ccw_label=Rothlaigh ar tuathal - -cursor_text_select_tool.title=Cumasaigh an Uirlis Roghnaithe Téacs -cursor_text_select_tool_label=Uirlis Roghnaithe Téacs -cursor_hand_tool.title=Cumasaigh an Uirlis Láimhe -cursor_hand_tool_label=Uirlis Láimhe - -# Document properties dialog box -document_properties.title=Airíonna na Cáipéise… -document_properties_label=Airíonna na Cáipéise… -document_properties_file_name=Ainm an chomhaid: -document_properties_file_size=Méid an chomhaid: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} beart) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} beart) -document_properties_title=Teideal: -document_properties_author=Údar: -document_properties_subject=Ábhar: -document_properties_keywords=Eochairfhocail: -document_properties_creation_date=Dáta Cruthaithe: -document_properties_modification_date=Dáta Athraithe: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Cruthaitheoir: -document_properties_producer=Cruthaitheoir an PDF: -document_properties_version=Leagan PDF: -document_properties_page_count=Líon Leathanach: -document_properties_close=Dún - -print_progress_message=Cáipéis á hullmhú le priontáil… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cealaigh - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Scoránaigh an Barra Taoibh -toggle_sidebar_notification.title=Scoránaigh an Barra Taoibh (achoimre/iatáin sa cháipéis) -toggle_sidebar_label=Scoránaigh an Barra Taoibh -document_outline.title=Taispeáin Imlíne na Cáipéise (déchliceáil chun chuile rud a leathnú nó a laghdú) -document_outline_label=Creatlach na Cáipéise -attachments.title=Taispeáin Iatáin -attachments_label=Iatáin -thumbs.title=Taispeáin Mionsamhlacha -thumbs_label=Mionsamhlacha -findbar.title=Aimsigh sa Cháipéis -findbar_label=Aimsigh - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Leathanach {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Mionsamhail Leathanaigh {{page}} - -# Find panel button title and messages -find_input.title=Aimsigh -find_input.placeholder=Aimsigh sa cháipéis… -find_previous.title=Aimsigh an sampla roimhe seo den nath seo -find_previous_label=Roimhe seo -find_next.title=Aimsigh an chéad sampla eile den nath sin -find_next_label=Ar aghaidh -find_highlight=Aibhsigh uile -find_match_case_label=Cásíogair -find_reached_top=Ag barr na cáipéise, ag leanúint ón mbun -find_reached_bottom=Ag bun na cáipéise, ag leanúint ón mbarr -find_not_found=Frása gan aimsiú - -# Error panel labels -error_more_info=Tuilleadh Eolais -error_less_info=Níos Lú Eolais -error_close=Dún -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Teachtaireacht: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Cruach: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Comhad: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Líne: {{line}} -rendering_error=Tharla earráid agus an leathanach á leagan amach. - -# Predefined zoom values -page_scale_width=Leithead Leathanaigh -page_scale_fit=Laghdaigh go dtí an Leathanach -page_scale_auto=Súmáil Uathoibríoch -page_scale_actual=Fíormhéid -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Earráid -loading_error=Tharla earráid agus an cháipéis PDF á lódáil. -invalid_file_error=Comhad neamhbhailí nó truaillithe PDF. -missing_file_error=Comhad PDF ar iarraidh. -unexpected_response_error=Freagra ón bhfreastalaí nach rabhthas ag súil leis. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anótáil {{type}}] -password_label=Cuir an focal faire isteach chun an comhad PDF seo a oscailt. -password_invalid=Focal faire mícheart. Déan iarracht eile. -password_ok=OK -password_cancel=Cealaigh - -printing_not_supported=Rabhadh: Ní thacaíonn an brabhsálaí le priontáil go hiomlán. -printing_not_ready=Rabhadh: Ní féidir an PDF a phriontáil go dtí go mbeidh an cháipéis iomlán lódáilte. -web_fonts_disabled=Tá clófhoirne Gréasáin díchumasaithe: ní féidir clófhoirne leabaithe PDF a úsáid. -document_colors_not_allowed=Níl cead ag cáipéisí PDF a ndathanna féin a roghnú: tá “Tabhair cead do leathanaigh a ndathanna féin a roghnú” díchumasaithe sa mbrabhsálaí. diff --git a/cookbook/static/pdfjs/locale/gd/viewer.properties b/cookbook/static/pdfjs/locale/gd/viewer.properties deleted file mode 100644 index 2712568e8..000000000 --- a/cookbook/static/pdfjs/locale/gd/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=An duilleag roimhe -previous_label=Air ais -next.title=An ath-dhuilleag -next_label=Air adhart - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Duilleag -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=à {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} à {{pagesCount}}) - -zoom_out.title=Sùm a-mach -zoom_out_label=Sùm a-mach -zoom_in.title=Sùm a-steach -zoom_in_label=Sùm a-steach -zoom.title=Sùm -presentation_mode.title=Gearr leum dhan mhodh taisbeanaidh -presentation_mode_label=Am modh taisbeanaidh -open_file.title=Fosgail faidhle -open_file_label=Fosgail -print.title=Clò-bhuail -print_label=Clò-bhuail -download.title=Luchdaich a-nuas -download_label=Luchdaich a-nuas -bookmark.title=An sealladh làithreach (dèan lethbhreac no fosgail e ann an uinneag ùr) -bookmark_label=An sealladh làithreach - -# Secondary toolbar and context menu -tools.title=Innealan -tools_label=Innealan -first_page.title=Rach gun chiad duilleag -first_page.label=Rach gun chiad duilleag -first_page_label=Rach gun chiad duilleag -last_page.title=Rach gun duilleag mu dheireadh -last_page.label=Rach gun duilleag mu dheireadh -last_page_label=Rach gun duilleag mu dheireadh -page_rotate_cw.title=Cuairtich gu deiseil -page_rotate_cw.label=Cuairtich gu deiseil -page_rotate_cw_label=Cuairtich gu deiseil -page_rotate_ccw.title=Cuairtich gu tuathail -page_rotate_ccw.label=Cuairtich gu tuathail -page_rotate_ccw_label=Cuairtich gu tuathail - -cursor_text_select_tool.title=Cuir an comas inneal taghadh an teacsa -cursor_text_select_tool_label=Inneal taghadh an teacsa -cursor_hand_tool.title=Cuir inneal na làimhe an comas -cursor_hand_tool_label=Inneal na làimhe - -scroll_vertical.title=Cleachd sgroladh inghearach -scroll_vertical_label=Sgroladh inghearach -scroll_horizontal.title=Cleachd sgroladh còmhnard -scroll_horizontal_label=Sgroladh còmhnard -scroll_wrapped.title=Cleachd sgroladh paisgte -scroll_wrapped_label=Sgroladh paisgte - -spread_none.title=Na cuir còmhla sgoileadh dhuilleagan -spread_none_label=Gun sgaoileadh dhuilleagan -spread_odd.title=Cuir còmhla duilleagan sgaoilte a thòisicheas le duilleagan aig a bheil àireamh chorr -spread_odd_label=Sgaoileadh dhuilleagan corra -spread_even.title=Cuir còmhla duilleagan sgaoilte a thòisicheas le duilleagan aig a bheil àireamh chothrom -spread_even_label=Sgaoileadh dhuilleagan cothrom - -# Document properties dialog box -document_properties.title=Roghainnean na sgrìobhainne… -document_properties_label=Roghainnean na sgrìobhainne… -document_properties_file_name=Ainm an fhaidhle: -document_properties_file_size=Meud an fhaidhle: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Tiotal: -document_properties_author=Ùghdar: -document_properties_subject=Cuspair: -document_properties_keywords=Faclan-luirg: -document_properties_creation_date=Latha a chruthachaidh: -document_properties_modification_date=Latha atharrachaidh: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Cruthadair: -document_properties_producer=Saothraiche a' PDF: -document_properties_version=Tionndadh a' PDF: -document_properties_page_count=Àireamh de dhuilleagan: -document_properties_page_size=Meud na duilleige: -document_properties_page_size_unit_inches=ann an -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portraid -document_properties_page_size_orientation_landscape=dreach-tìre -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Litir -document_properties_page_size_name_legal=Laghail -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Grad shealladh-lìn: -document_properties_linearized_yes=Tha -document_properties_linearized_no=Chan eil -document_properties_close=Dùin - -print_progress_message=Ag ullachadh na sgrìobhainn airson clò-bhualadh… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Sguir dheth - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toglaich am bàr-taoibh -toggle_sidebar_notification.title=Toglaich am bàr-taoibh (tha oir-loidhne/ceanglachain aig an sgrìobhainn) -toggle_sidebar_label=Toglaich am bàr-taoibh -document_outline.title=Seall oir-loidhne na sgrìobhainn (dèan briogadh dùbailte airson a h-uile nì a leudachadh/a cho-theannadh) -document_outline_label=Oir-loidhne na sgrìobhainne -attachments.title=Seall na ceanglachain -attachments_label=Ceanglachain -thumbs.title=Seall na dealbhagan -thumbs_label=Dealbhagan -findbar.title=Lorg san sgrìobhainn -findbar_label=Lorg - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Duilleag a {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Dealbhag duilleag a {{page}} - -# Find panel button title and messages -find_input.title=Lorg -find_input.placeholder=Lorg san sgrìobhainn... -find_previous.title=Lorg làthair roimhe na h-abairt seo -find_previous_label=Air ais -find_next.title=Lorg ath-làthair na h-abairt seo -find_next_label=Air adhart -find_highlight=Soillsich a h-uile -find_match_case_label=Aire do litrichean mòra is beaga -find_entire_word_label=Faclan-slàna -find_reached_top=Ràinig sinn barr na duilleige, a' leantainn air adhart o bhonn na duilleige -find_reached_bottom=Ràinig sinn bonn na duilleige, a' leantainn air adhart o bharr na duilleige -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} à {{total}} mhaids -find_match_count[two]={{current}} à {{total}} mhaids -find_match_count[few]={{current}} à {{total}} maidsichean -find_match_count[many]={{current}} à {{total}} maids -find_match_count[other]={{current}} à {{total}} maids -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Barrachd air {{limit}} maids -find_match_count_limit[one]=Barrachd air {{limit}} mhaids -find_match_count_limit[two]=Barrachd air {{limit}} mhaids -find_match_count_limit[few]=Barrachd air {{limit}} maidsichean -find_match_count_limit[many]=Barrachd air {{limit}} maids -find_match_count_limit[other]=Barrachd air {{limit}} maids -find_not_found=Cha deach an abairt a lorg - -# Error panel labels -error_more_info=Barrachd fiosrachaidh -error_less_info=Nas lugha de dh'fhiosrachadh -error_close=Dùin -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Teachdaireachd: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stac: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Faidhle: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Loidhne: {{line}} -rendering_error=Thachair mearachd rè reandaradh na duilleige. - -# Predefined zoom values -page_scale_width=Leud na duilleige -page_scale_fit=Freagair ri meud na duilleige -page_scale_auto=Sùm fèin-obrachail -page_scale_actual=Am fìor-mheud -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Mearachd -loading_error=Thachair mearachd rè luchdadh a' PDF. -invalid_file_error=Faidhle PDF a tha mì-dhligheach no coirbte. -missing_file_error=Faidhle PDF a tha a dhìth. -unexpected_response_error=Freagairt on fhrithealaiche ris nach robh dùil. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Nòtachadh {{type}}] -password_label=Cuir a-steach am facal-faire gus am faidhle PDF seo fhosgladh. -password_invalid=Tha am facal-faire cearr. Nach fheuch thu ris a-rithist? -password_ok=Ceart ma-tha -password_cancel=Sguir dheth - -printing_not_supported=Rabhadh: Chan eil am brabhsair seo a' cur làn-taic ri clò-bhualadh. -printing_not_ready=Rabhadh: Cha deach am PDF a luchdadh gu tur airson clò-bhualadh. -web_fonts_disabled=Tha cruthan-clò lìn à comas: Chan urrainn dhuinn cruthan-clò PDF leabaichte a chleachdadh. -document_colors_not_allowed=Chan fhaod sgrìobhainnean PDF na dathan aca fhèin a chleachdadh: Tha “Leig le duilleagan na dathan aca fhèin a chleachdadh” à comas sa bhrabhsair. diff --git a/cookbook/static/pdfjs/locale/gl/viewer.properties b/cookbook/static/pdfjs/locale/gl/viewer.properties deleted file mode 100644 index 187dbf155..000000000 --- a/cookbook/static/pdfjs/locale/gl/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Páxina anterior -previous_label=Anterior -next.title=Seguinte páxina -next_label=Seguinte - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Páxina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reducir -zoom_out_label=Reducir -zoom_in.title=Ampliar -zoom_in_label=Ampliar -zoom.title=Zoom -presentation_mode.title=Cambiar ao modo presentación -presentation_mode_label=Modo presentación -open_file.title=Abrir ficheiro -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Descargar -download_label=Descargar -bookmark.title=Vista actual (copiar ou abrir nunha nova xanela) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Ferramentas -tools_label=Ferramentas -first_page.title=Ir á primeira páxina -first_page.label=Ir á primeira páxina -first_page_label=Ir á primeira páxina -last_page.title=Ir á última páxina -last_page.label=Ir á última páxina -last_page_label=Ir á última páxina -page_rotate_cw.title=Rotar no sentido das agullas do reloxo -page_rotate_cw.label=Rotar no sentido das agullas do reloxo -page_rotate_cw_label=Rotar no sentido das agullas do reloxo -page_rotate_ccw.title=Rotar no sentido contrario ás agullas do reloxo -page_rotate_ccw.label=Rotar no sentido contrario ás agullas do reloxo -page_rotate_ccw_label=Rotar no sentido contrario ás agullas do reloxo - -cursor_text_select_tool.title=Activar a ferramenta de selección de texto -cursor_text_select_tool_label=Ferramenta de selección de texto -cursor_hand_tool.title=Activar a ferramenta man -cursor_hand_tool_label=Ferramenta man - -scroll_vertical.title=Usar o desprazamento vertical -scroll_vertical_label=Desprazamento vertical -scroll_horizontal.title=Usar o desprazamento horizontal -scroll_horizontal_label=Desprazamento horizontal -scroll_wrapped.title=Usar desprazamento en bloque -scroll_wrapped_label=Desprazamento en bloque - -spread_none.title=Non agrupar páxinas -spread_none_label=Ningún agrupamento -spread_odd.title=Crea grupo de páxinas que comezan con números de páxina impares -spread_odd_label=Agrupamento impar -spread_even.title=Crea grupo de páxinas que comezan con números de páxina pares -spread_even_label=Agrupamento par - -# Document properties dialog box -document_properties.title=Propiedades do documento… -document_properties_label=Propiedades do documento… -document_properties_file_name=Nome do ficheiro: -document_properties_file_size=Tamaño do ficheiro: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Asunto: -document_properties_keywords=Palabras clave: -document_properties_creation_date=Data de creación: -document_properties_modification_date=Data de modificación: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creado por: -document_properties_producer=Xenerador do PDF: -document_properties_version=Versión de PDF: -document_properties_page_count=Número de páxinas: -document_properties_page_size=Tamaño da páxina: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=Vertical -document_properties_page_size_orientation_landscape=Horizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Visualización rápida das páxinas web: -document_properties_linearized_yes=Si -document_properties_linearized_no=Non -document_properties_close=Pechar - -print_progress_message=Preparando documento para imprimir… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Amosar/agochar a barra lateral -toggle_sidebar_notification.title=Amosar/agochar a barra lateral (o documento contén un esquema ou anexos) -toggle_sidebar_label=Amosar/agochar a barra lateral -document_outline.title=Amosar o esquema do documento (prema dúas veces para expandir/contraer todos os elementos) -document_outline_label=Esquema do documento -attachments.title=Amosar anexos -attachments_label=Anexos -thumbs.title=Amosar miniaturas -thumbs_label=Miniaturas -findbar.title=Atopar no documento -findbar_label=Atopar - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Páxina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura da páxina {{page}} - -# Find panel button title and messages -find_input.title=Atopar -find_input.placeholder=Atopar no documento… -find_previous.title=Atopar a anterior aparición da frase -find_previous_label=Anterior -find_next.title=Atopar a seguinte aparición da frase -find_next_label=Seguinte -find_highlight=Realzar todo -find_match_case_label=Diferenciar maiúsculas de minúsculas -find_entire_word_label=Palabras completas -find_reached_top=Chegouse ao inicio do documento, continuar desde o final -find_reached_bottom=Chegouse ao final do documento, continuar desde o inicio -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} coincidencia -find_match_count[two]={{current}} de {{total}} coincidencias -find_match_count[few]={{current}} de {{total}} coincidencias -find_match_count[many]={{current}} de {{total}} coincidencias -find_match_count[other]={{current}} de {{total}} coincidencias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Máis de {{limit}} coincidencias -find_match_count_limit[one]=Máis de {{limit}} coincidencia -find_match_count_limit[two]=Máis de {{limit}} coincidencias -find_match_count_limit[few]=Máis de {{limit}} coincidencias -find_match_count_limit[many]=Máis de {{limit}} coincidencias -find_match_count_limit[other]=Máis de {{limit}} coincidencias -find_not_found=Non se atopou a frase - -# Error panel labels -error_more_info=Máis información -error_less_info=Menos información -error_close=Pechar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (Identificador da compilación: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensaxe: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ficheiro: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Liña: {{line}} -rendering_error=Produciuse un erro ao representar a páxina. - -# Predefined zoom values -page_scale_width=Largura da páxina -page_scale_fit=Axuste de páxina -page_scale_auto=Zoom automático -page_scale_actual=Tamaño actual -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Erro -loading_error=Produciuse un erro ao cargar o PDF. -invalid_file_error=Ficheiro PDF danado ou non válido. -missing_file_error=Falta o ficheiro PDF. -unexpected_response_error=Resposta inesperada do servidor. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotación {{type}}] -password_label=Escriba o contrasinal para abrir este ficheiro PDF. -password_invalid=Contrasinal incorrecto. Tente de novo. -password_ok=Aceptar -password_cancel=Cancelar - -printing_not_supported=Aviso: A impresión non é compatíbel de todo con este navegador. -printing_not_ready=Aviso: O PDF non se cargou completamente para imprimirse. -web_fonts_disabled=Desactiváronse as fontes web: foi imposíbel usar as fontes incrustadas no PDF. -document_colors_not_allowed=Os documentos PDF non poden usar as súas propias cores: «Permitir que as páxinas escollan as súas propias cores» está desactivado no navegador. diff --git a/cookbook/static/pdfjs/locale/gn/viewer.properties b/cookbook/static/pdfjs/locale/gn/viewer.properties deleted file mode 100644 index e5652d71f..000000000 --- a/cookbook/static/pdfjs/locale/gn/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Kuatiarogue mboyvegua -previous_label=Mboyvegua -next.title=Kuatiarogue upeigua -next_label=Upeigua - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Kuatiarogue -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} gui -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Momichĩ -zoom_out_label=Momichĩ -zoom_in.title=Mbotuicha -zoom_in_label=Mbotuicha -zoom.title=Tuichakue -presentation_mode.title=Jehechauka reko moambue -presentation_mode_label=Jehechauka reko -open_file.title=Marandurendápe jeike -open_file_label=Jeike -print.title=Monguatia -print_label=Monguatia -download.title=Mboguejy -download_label=Mboguejy -bookmark.title=Ag̃agua jehecha (mbohasarã térã eike peteĩ ovetã pyahúpe) -bookmark_label=Ag̃agua jehecha - -# Secondary toolbar and context menu -tools.title=Tembipuru -tools_label=Tembipuru -first_page.title=Kuatiarogue ñepyrũme jeho -first_page.label=Kuatiarogue ñepyrũme jeho -first_page_label=Kuatiarogue ñepyrũme jeho -last_page.title=Kuatiarogue pahápe jeho -last_page.label=Kuatiarogue pahápe jeho -last_page_label=Kuatiarogue pahápe jeho -page_rotate_cw.title=Aravóicha mbojere -page_rotate_cw.label=Aravóicha mbojere -page_rotate_cw_label=Aravóicha mbojere -page_rotate_ccw.title=Aravo rapykue gotyo mbojere -page_rotate_ccw.label=Aravo rapykue gotyo mbojere -page_rotate_ccw_label=Aravo rapykue gotyo mbojere - -cursor_text_select_tool.title=Emyandy moñe'ẽrã jeporavo rembipuru -cursor_text_select_tool_label=Moñe'ẽrã jeporavo rembipuru -cursor_hand_tool.title=Tembipuru po pegua myandy -cursor_hand_tool_label=Tembipuru po pegua - -scroll_vertical.title=Eipuru jeku’e ykeguáva -scroll_vertical_label=Jeku’e ykeguáva -scroll_horizontal.title=Eipuru jeku’e yvate gotyo -scroll_horizontal_label=Jeku’e yvate gotyo -scroll_wrapped.title=Eipuru jeku’e mbohyrupyre -scroll_wrapped_label=Jeku’e mbohyrupyre - -spread_none.title=Ani ejuaju spreads kuatiarogue ndive -spread_none_label=Spreads ỹre -spread_odd.title=Embojuaju kuatiarogue jepysokue eñepyrũvo kuatiarogue impar-vagui -spread_odd_label=Spreads impar -spread_even.title=Embojuaju kuatiarogue jepysokue eñepyrũvo kuatiarogue par-vagui -spread_even_label=Ipukuve uvei - -# Document properties dialog box -document_properties.title=Kuatia mba'etee… -document_properties_label=Kuatia mba'etee… -document_properties_file_name=Marandurenda réra: -document_properties_file_size=Marandurenda tuichakue: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Teratee: -document_properties_author=Apohára: -document_properties_subject=Mba'egua: -document_properties_keywords=Jehero: -document_properties_creation_date=Teñoihague arange: -document_properties_modification_date=Iñambue hague arange: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Apo'ypyha: -document_properties_producer=PDF mbosako'iha: -document_properties_version=PDF mbojuehegua: -document_properties_page_count=Kuatiarogue papapy: -document_properties_page_size=Kuatiarogue tuichakue: -document_properties_page_size_unit_inches=Amo -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=Oĩháicha -document_properties_page_size_orientation_landscape=apaisado -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Kuatiañe'ẽ -document_properties_page_size_name_legal=Tee -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Ñanduti jahecha pya’e: -document_properties_linearized_yes=Añete -document_properties_linearized_no=Ahániri -document_properties_close=Mboty - -print_progress_message=Embosako'i kuatia emonguatia hag̃ua… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Heja - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Tenda yke moambue -toggle_sidebar_notification.title=Embojopyru tenda ykegua (kuatia oguereko kora/marandurenda moirũha) -toggle_sidebar_label=Tenda yke moambue -document_outline.title=Ehechauka kuatia rape (eikutu mokõi jey embotuicha/emomichĩ hag̃ua opavavete mba'epuru) -document_outline_label=Kuatia apopyre -attachments.title=Moirũha jehechauka -attachments_label=Moirũha -thumbs.title=Mba'emirĩ jehechauka -thumbs_label=Mba'emirĩ -findbar.title=Kuatiápe jeheka -findbar_label=Juhu - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Kuatiarogue {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Kuatiarogue {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Kuatiarogue mba'emirĩ {{page}} - -# Find panel button title and messages -find_input.title=Juhu -find_input.placeholder=Kuatiápe jejuhu… -find_previous.title=Ejuhu ñe'ẽrysýi osẽ'ypy hague -find_previous_label=Mboyvegua -find_next.title=Eho ñe'ẽ juhupyre upeiguávape -find_next_label=Upeigua -find_highlight=Embojekuaavepa -find_match_case_label=Ejesareko taiguasu/taimichĩre -find_entire_word_label=Ñe’ẽ oĩmbáva -find_reached_top=Ojehupyty kuatia ñepyrũ, oku'ejeýta kuatia paha guive -find_reached_bottom=Ojehupyty kuatia paha, oku'ejeýta kuatia ñepyrũ guive -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} {{total}} ojojoguáva -find_match_count[two]={{current}} {{total}} ojojoguáva -find_match_count[few]={{current}} {{total}} ojojoguáva -find_match_count[many]={{current}} {{total}} ojojoguáva -find_match_count[other]={{current}} {{total}} ojojoguáva -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Hetave {{limit}} ojojoguáva -find_match_count_limit[one]=Hetave {{limit}} ojojogua -find_match_count_limit[two]=Hetave {{limit}} ojojoguáva -find_match_count_limit[few]=Hetave {{limit}} ojojoguáva -find_match_count_limit[many]=Hetave {{limit}} ojojoguáva -find_match_count_limit[other]=Hetave {{limit}} ojojoguáva -find_not_found=Ñe'ẽrysýi ojejuhu'ỹva - -# Error panel labels -error_more_info=Maranduve -error_less_info=Sa'ive marandu -error_close=Mboty -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Ñe'ẽmondo: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Mbojo'apy: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Marandurenda: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Tairenda: {{line}} -rendering_error=Oiko jejavy ehechaukasévo kuatiarogue. - -# Predefined zoom values -page_scale_width=Kuatiarogue pekue -page_scale_fit=Kuatiarogue ñemoĩporã -page_scale_auto=Tuichakue ijeheguíva -page_scale_actual=Tuichakue ag̃agua -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Oĩvaíva -loading_error=Oiko jejavy PDF oñemyeñyhẽnguévo. -invalid_file_error=PDF marandurenda ndoikóiva térã ivaipyréva. -missing_file_error=Ndaipóri PDF marandurenda -unexpected_response_error=Mohendahavusu mbohovái ñeha'arõ'ỹva. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Jehaipy {{type}}] -password_label=Emoinge ñe'ẽñemi eipe'a hag̃ua ko marandurenda PDF. -password_invalid=Ñe'ẽñemi ndoikóiva. Eha'ã jey. -password_ok=MONEĨ -password_cancel=Heja - -printing_not_supported=Kyhyjerã: Ñembokuatia ndojokupytypái ko kundahára ndive. -printing_not_ready=Kyhyjerã: Ko PDF nahenyhẽmbái oñembokuatia hag̃uáicha. -web_fonts_disabled=Ñanduti taity oñemongéma: ndaikatumo'ãi eipuru PDF jehai'íva taity. -document_colors_not_allowed=Kuatiakuéra PDF ndaikatúi oipuru isa'ykuéra tee: “Emoneĩ kuatiaroguépe toiporavo isa'ykuéra tee” oñemongehína kundahárape. diff --git a/cookbook/static/pdfjs/locale/gu-IN/viewer.properties b/cookbook/static/pdfjs/locale/gu-IN/viewer.properties deleted file mode 100644 index cce4bec11..000000000 --- a/cookbook/static/pdfjs/locale/gu-IN/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=પહેલાનુ પાનું -previous_label=પહેલાનુ -next.title=આગળનુ પાનું -next_label=આગળનું - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=પાનું -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=નો {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} નો {{pagesCount}}) - -zoom_out.title=મોટુ કરો -zoom_out_label=મોટુ કરો -zoom_in.title=નાનું કરો -zoom_in_label=નાનું કરો -zoom.title=નાનું મોટુ કરો -presentation_mode.title=રજૂઆત સ્થિતિમાં જાવ -presentation_mode_label=રજૂઆત સ્થિતિ -open_file.title=ફાઇલ ખોલો -open_file_label=ખોલો -print.title=છાપો -print_label=છારો -download.title=ડાઉનલોડ -download_label=ડાઉનલોડ -bookmark.title=વર્તમાન દૃશ્ય (નવી વિન્ડોમાં નકલ કરો અથવા ખોલો) -bookmark_label=વર્તમાન દૃશ્ય - -# Secondary toolbar and context menu -tools.title=સાધનો -tools_label=સાધનો -first_page.title=પહેલાં પાનામાં જાવ -first_page.label=પહેલાં પાનામાં જાવ -first_page_label=પ્રથમ પાનાં પર જાવ -last_page.title=છેલ્લા પાનાં પર જાવ -last_page.label=છેલ્લા પાનામાં જાવ -last_page_label=છેલ્લા પાનાં પર જાવ -page_rotate_cw.title=ઘડિયાળનાં કાંટા તરફ ફેરવો -page_rotate_cw.label=ઘડિયાળનાં કાંટાની જેમ ફેરવો -page_rotate_cw_label=ઘડિયાળનાં કાંટા તરફ ફેરવો -page_rotate_ccw.title=ઘડિયાળનાં કાંટાની ઉલટી દિશામાં ફેરવો -page_rotate_ccw.label=ઘડિયાળનાં કાંટાની ઉલટી દિશામાં ફેરવો -page_rotate_ccw_label=ઘડિયાળનાં કાંટાની વિરુદ્દ ફેરવો - -cursor_text_select_tool.title=ટેક્સ્ટ પસંદગી ટૂલ સક્ષમ કરો -cursor_text_select_tool_label=ટેક્સ્ટ પસંદગી ટૂલ -cursor_hand_tool.title=હાથનાં સાધનને સક્રિય કરો -cursor_hand_tool_label=હેન્ડ ટૂલ - -scroll_vertical.title=ઊભી સ્ક્રોલિંગનો ઉપયોગ કરો -scroll_vertical_label=ઊભી સ્ક્રોલિંગ -scroll_horizontal.title=આડી સ્ક્રોલિંગનો ઉપયોગ કરો -scroll_horizontal_label=આડી સ્ક્રોલિંગ -scroll_wrapped.title=આવરિત સ્ક્રોલિંગનો ઉપયોગ કરો -scroll_wrapped_label=આવરિત સ્ક્રોલિંગ - -spread_none.title=પૃષ્ઠ સ્પ્રેડમાં જોડાવશો નહીં -spread_none_label=કોઈ સ્પ્રેડ નથી -spread_odd.title=એકી-ક્રમાંકિત પૃષ્ઠો સાથે પ્રારંભ થતાં પૃષ્ઠ સ્પ્રેડમાં જોડાઓ -spread_odd_label=એકી સ્પ્રેડ્સ -spread_even.title=નંબર-ક્રમાંકિત પૃષ્ઠોથી શરૂ થતાં પૃષ્ઠ સ્પ્રેડમાં જોડાઓ -spread_even_label=સરખું ફેલાવવું - -# Document properties dialog box -document_properties.title=દસ્તાવેજ ગુણધર્મો… -document_properties_label=દસ્તાવેજ ગુણધર્મો… -document_properties_file_name=ફાઇલ નામ: -document_properties_file_size=ફાઇલ માપ: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} બાઇટ) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} બાઇટ) -document_properties_title=શીર્ષક: -document_properties_author=લેખક: -document_properties_subject=વિષય: -document_properties_keywords=કિવર્ડ: -document_properties_creation_date=નિર્માણ તારીખ: -document_properties_modification_date=ફેરફાર તારીખ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=નિર્માતા: -document_properties_producer=PDF નિર્માતા: -document_properties_version=PDF આવૃત્તિ: -document_properties_page_count=પાનાં ગણતરી: -document_properties_page_size=પૃષ્ઠનું કદ: -document_properties_page_size_unit_inches=ઇંચ -document_properties_page_size_unit_millimeters=મીમી -document_properties_page_size_orientation_portrait=ઉભું -document_properties_page_size_orientation_landscape=આડુ -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=પત્ર -document_properties_page_size_name_legal=કાયદાકીય -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=ઝડપી વૅબ દૃશ્ય: -document_properties_linearized_yes=હા -document_properties_linearized_no=ના -document_properties_close=બંધ કરો - -print_progress_message=છાપકામ માટે દસ્તાવેજ તૈયાર કરી રહ્યા છે… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=રદ કરો - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=ટૉગલ બાજુપટ્ટી -toggle_sidebar_notification.title=સાઇડબારને ટૉગલ કરો(દસ્તાવેજની રૂપરેખા/જોડાણો શામેલ છે) -toggle_sidebar_label=ટૉગલ બાજુપટ્ટી -document_outline.title=દસ્તાવેજની રૂપરેખા બતાવો(બધી આઇટમ્સને વિસ્તૃત/સંકુચિત કરવા માટે ડબલ-ક્લિક કરો) -document_outline_label=દસ્તાવેજ રૂપરેખા -attachments.title=જોડાણોને બતાવો -attachments_label=જોડાણો -thumbs.title=થંબનેલ્સ બતાવો -thumbs_label=થંબનેલ્સ -findbar.title=દસ્તાવેજમાં શોધો -findbar_label=શોધો - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=પાનું {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=પાનાં {{page}} નું થંબનેલ્સ - -# Find panel button title and messages -find_input.title=શોધો -find_input.placeholder=દસ્તાવેજમાં શોધો… -find_previous.title=શબ્દસમૂહની પાછલી ઘટનાને શોધો -find_previous_label=પહેલાંનુ -find_next.title=શબ્દસમૂહની આગળની ઘટનાને શોધો -find_next_label=આગળનું -find_highlight=બધુ પ્રકાશિત કરો -find_match_case_label=કેસ બંધબેસાડો -find_entire_word_label=સંપૂર્ણ શબ્દો -find_reached_top=દસ્તાવેજનાં ટોચે પહોંચી ગયા, તળિયેથી ચાલુ કરેલ હતુ -find_reached_bottom=દસ્તાવેજનાં અંતે પહોંચી ગયા, ઉપરથી ચાલુ કરેલ હતુ -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} માંથી {{current}} સરખું મળ્યું -find_match_count[two]={{total}} માંથી {{current}} સરખા મળ્યાં -find_match_count[few]={{total}} માંથી {{current}} સરખા મળ્યાં -find_match_count[many]={{total}} માંથી {{current}} સરખા મળ્યાં -find_match_count[other]={{total}} માંથી {{current}} સરખા મળ્યાં -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} કરતાં વધુ સરખા મળ્યાં -find_match_count_limit[one]={{limit}} કરતાં વધુ સરખું મળ્યું -find_match_count_limit[two]={{limit}} કરતાં વધુ સરખા મળ્યાં -find_match_count_limit[few]={{limit}} કરતાં વધુ સરખા મળ્યાં -find_match_count_limit[many]={{limit}} કરતાં વધુ સરખા મળ્યાં -find_match_count_limit[other]={{limit}} કરતાં વધુ સરખા મળ્યાં -find_not_found=શબ્દસમૂહ મળ્યુ નથી - -# Error panel labels -error_more_info=વધારે જાણકારી -error_less_info=ઓછી જાણકારી -error_close=બંધ કરો -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=સંદેશો: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=સ્ટેક: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ફાઇલ: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=વાક્ય: {{line}} -rendering_error=ભૂલ ઉદ્ભવી જ્યારે પાનાંનુ રેન્ડ કરી રહ્યા હોય. - -# Predefined zoom values -page_scale_width=પાનાની પહોળાઇ -page_scale_fit=પાનું બંધબેસતુ -page_scale_auto=આપમેળે નાનુંમોટુ કરો -page_scale_actual=ચોક્કસ માપ -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=ભૂલ -loading_error=ભૂલ ઉદ્ભવી જ્યારે PDF ને લાવી રહ્યા હોય. -invalid_file_error=અયોગ્ય અથવા ભાંગેલ PDF ફાઇલ. -missing_file_error=ગુમ થયેલ PDF ફાઇલ. -unexpected_response_error=અનપેક્ષિત સર્વર પ્રતિસાદ. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=આ PDF ફાઇલને ખોલવા પાસવર્ડને દાખલ કરો. -password_invalid=અયોગ્ય પાસવર્ડ. મહેરબાની કરીને ફરી પ્રયત્ન કરો. -password_ok=બરાબર -password_cancel=રદ કરો - -printing_not_supported=ચેતવણી: છાપવાનું આ બ્રાઉઝર દ્દારા સંપૂર્ણપણે આધારભૂત નથી. -printing_not_ready=Warning: PDF એ છાપવા માટે સંપૂર્ણપણે લાવેલ છે. -web_fonts_disabled=વેબ ફોન્ટ નિષ્ક્રિય થયેલ છે: ઍમ્બેડ થયેલ PDF ફોન્ટને વાપરવાનું અસમર્થ. -document_colors_not_allowed=PDF દસ્તાવેજો તેનાં પોતાના રંગોને વાપરવા પરવાનગી આપતા નથી: 'તેનાં પોતાનાં રંગોને પસંદ કરવા માટે પાનાંને પરવાનગી આપો' બ્રાઉઝરમાં નિષ્ક્રિય થયેલ છે. diff --git a/cookbook/static/pdfjs/locale/he/viewer.properties b/cookbook/static/pdfjs/locale/he/viewer.properties deleted file mode 100644 index e3d197efb..000000000 --- a/cookbook/static/pdfjs/locale/he/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=דף קודם -previous_label=קודם -next.title=דף הבא -next_label=הבא - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=דף -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=מתוך {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} מתוך {{pagesCount}}) - -zoom_out.title=התרחקות -zoom_out_label=התרחקות -zoom_in.title=התקרבות -zoom_in_label=התקרבות -zoom.title=מרחק מתצוגה -presentation_mode.title=מעבר למצב מצגת -presentation_mode_label=מצב מצגת -open_file.title=פתיחת קובץ -open_file_label=פתיחה -print.title=הדפסה -print_label=הדפסה -download.title=הורדה -download_label=הורדה -bookmark.title=תצוגה נוכחית (העתקה או פתיחה בחלון חדש) -bookmark_label=תצוגה נוכחית - -# Secondary toolbar and context menu -tools.title=כלים -tools_label=כלים -first_page.title=מעבר לעמוד הראשון -first_page.label=מעבר לעמוד הראשון -first_page_label=מעבר לעמוד הראשון -last_page.title=מעבר לעמוד האחרון -last_page.label=מעבר לעמוד האחרון -last_page_label=מעבר לעמוד האחרון -page_rotate_cw.title=הטיה עם כיוון השעון -page_rotate_cw.label=הטיה עם כיוון השעון -page_rotate_cw_label=הטיה עם כיוון השעון -page_rotate_ccw.title=הטיה כנגד כיוון השעון -page_rotate_ccw.label=הטיה כנגד כיוון השעון -page_rotate_ccw_label=הטיה כנגד כיוון השעון - -cursor_text_select_tool.title=הפעלת כלי בחירת טקסט -cursor_text_select_tool_label=כלי בחירת טקסט -cursor_hand_tool.title=הפעלת כלי היד -cursor_hand_tool_label=כלי יד - -scroll_vertical.title=שימוש בגלילה אנכית -scroll_vertical_label=גלילה אנכית -scroll_horizontal.title=שימוש בגלילה אופקית -scroll_horizontal_label=גלילה אופקית -scroll_wrapped.title=שימוש בגלילה רציפה -scroll_wrapped_label=גלילה רציפה - -spread_none.title=לא לצרף מפתחי עמודים -spread_none_label=ללא מפתחים -spread_odd.title=צירוף מפתחי עמודים שמתחילים בדפים עם מספרים אי־זוגיים -spread_odd_label=מפתחים אי־זוגיים -spread_even.title=צירוף מפתחי עמודים שמתחילים בדפים עם מספרים זוגיים -spread_even_label=מפתחים זוגיים - -# Document properties dialog box -document_properties.title=מאפייני מסמך… -document_properties_label=מאפייני מסמך… -document_properties_file_name=שם קובץ: -document_properties_file_size=גודל הקובץ: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} ק״ב ({{size_b}} בתים) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} מ״ב ({{size_b}} בתים) -document_properties_title=כותרת: -document_properties_author=מחבר: -document_properties_subject=נושא: -document_properties_keywords=מילות מפתח: -document_properties_creation_date=תאריך יצירה: -document_properties_modification_date=תאריך שינוי: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=יוצר: -document_properties_producer=יצרן PDF: -document_properties_version=גרסת PDF: -document_properties_page_count=מספר דפים: -document_properties_page_size=גודל העמוד: -document_properties_page_size_unit_inches=אינ׳ -document_properties_page_size_unit_millimeters=מ״מ -document_properties_page_size_orientation_portrait=לאורך -document_properties_page_size_orientation_landscape=לרוחב -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=מכתב -document_properties_page_size_name_legal=דף משפטי -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=תצוגת דף מהירה: -document_properties_linearized_yes=כן -document_properties_linearized_no=לא -document_properties_close=סגירה - -print_progress_message=מסמך בהכנה להדפסה… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ביטול - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=הצגה/הסתרה של סרגל הצד -toggle_sidebar_notification.title=החלפת תצוגת סרגל צד (מסמך שמכיל מתאר/צרופות) -toggle_sidebar_label=הצגה/הסתרה של סרגל הצד -document_outline.title=הצגת מתאר מסמך (לחיצה כפולה כדי להרחיב או לצמצם את כל הפריטים) -document_outline_label=מתאר מסמך -attachments.title=הצגת צרופות -attachments_label=צרופות -thumbs.title=הצגת תצוגה מקדימה -thumbs_label=תצוגה מקדימה -findbar.title=חיפוש במסמך -findbar_label=חיפוש - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=עמוד {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=עמוד {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=תצוגה מקדימה של עמוד {{page}} - -# Find panel button title and messages -find_input.title=חיפוש -find_input.placeholder=חיפוש במסמך… -find_previous.title=מציאת המופע הקודם של הביטוי -find_previous_label=קודם -find_next.title=מציאת המופע הבא של הביטוי -find_next_label=הבא -find_highlight=הדגשת הכול -find_match_case_label=התאמת אותיות -find_entire_word_label=מילים שלמות -find_reached_top=הגיע לראש הדף, ממשיך מלמטה -find_reached_bottom=הגיע לסוף הדף, ממשיך מלמעלה -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=תוצאה {{current}} מתוך {{total}} -find_match_count[two]={{current}} מתוך {{total}} תוצאות -find_match_count[few]={{current}} מתוך {{total}} תוצאות -find_match_count[many]={{current}} מתוך {{total}} תוצאות -find_match_count[other]={{current}} מתוך {{total}} תוצאות -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=יותר מ־{{limit}} תוצאות -find_match_count_limit[one]=יותר מתוצאה אחת -find_match_count_limit[two]=יותר מ־{{limit}} תוצאות -find_match_count_limit[few]=יותר מ־{{limit}} תוצאות -find_match_count_limit[many]=יותר מ־{{limit}} תוצאות -find_match_count_limit[other]=יותר מ־{{limit}} תוצאות -find_not_found=הביטוי לא נמצא - -# Error panel labels -error_more_info=מידע נוסף -error_less_info=פחות מידע -error_close=סגירה -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js גרסה {{version}} (בנייה: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=הודעה: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=תוכן מחסנית: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=קובץ: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=שורה: {{line}} -rendering_error=אירעה שגיאה בעת עיבוד הדף. - -# Predefined zoom values -page_scale_width=רוחב העמוד -page_scale_fit=התאמה לעמוד -page_scale_auto=מרחק מתצוגה אוטומטי -page_scale_actual=גודל אמיתי -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=שגיאה -loading_error=אירעה שגיאה בעת טעינת ה־PDF. -invalid_file_error=קובץ PDF פגום או לא תקין. -missing_file_error=קובץ PDF חסר. -unexpected_response_error=תגובת שרת לא צפויה. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[הערת {{type}}] -password_label=נא להכניס את הססמה לפתיחת קובץ PDF זה. -password_invalid=ססמה שגויה. נא לנסות שנית. -password_ok=אישור -password_cancel=ביטול - -printing_not_supported=אזהרה: הדפסה אינה נתמכת במלואה בדפדפן זה. -printing_not_ready=אזהרה: ה־PDF לא ניתן לחלוטין עד מצב שמאפשר הדפסה. -web_fonts_disabled=גופני רשת מנוטרלים: לא ניתן להשתמש בגופני PDF מוטבעים. -document_colors_not_allowed=מסמכי PDF אינם מורשים להשתמש בצבעים משלהם: האפשרות „אפשר לעמודים לבחור צבעים משלהם” אינה פעילה בדפדפן. diff --git a/cookbook/static/pdfjs/locale/hi-IN/viewer.properties b/cookbook/static/pdfjs/locale/hi-IN/viewer.properties deleted file mode 100644 index 3005180f5..000000000 --- a/cookbook/static/pdfjs/locale/hi-IN/viewer.properties +++ /dev/null @@ -1,244 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=पिछला पृष्ठ -previous_label=पिछला -next.title=अगला पृष्ठ -next_label=आगे - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=पृष्ठ: -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} का -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=\u0020छोटा करें -zoom_out_label=\u0020छोटा करें -zoom_in.title=बड़ा करें -zoom_in_label=बड़ा करें -zoom.title=बड़ा-छोटा करें -presentation_mode.title=प्रस्तुति अवस्था में जाएँ -presentation_mode_label=\u0020प्रस्तुति अवस्था -open_file.title=फ़ाइल खोलें -open_file_label=\u0020खोलें -print.title=छापें -print_label=\u0020छापें -download.title=डाउनलोड -download_label=डाउनलोड -bookmark.title=मौजूदा दृश्य (नए विंडो में नक़ल लें या खोलें) -bookmark_label=\u0020मौजूदा दृश्य - -# Secondary toolbar and context menu -tools.title=औज़ार -tools_label=औज़ार -first_page.title=प्रथम पृष्ठ पर जाएँ -first_page.label=\u0020प्रथम पृष्ठ पर जाएँ -first_page_label=प्रथम पृष्ठ पर जाएँ -last_page.title=अंतिम पृष्ठ पर जाएँ -last_page.label=\u0020अंतिम पृष्ठ पर जाएँ -last_page_label=\u0020अंतिम पृष्ठ पर जाएँ -page_rotate_cw.title=घड़ी की दिशा में घुमाएँ -page_rotate_cw.label=घड़ी की दिशा में घुमाएँ -page_rotate_cw_label=घड़ी की दिशा में घुमाएँ -page_rotate_ccw.title=घड़ी की दिशा से उल्टा घुमाएँ -page_rotate_ccw.label=घड़ी की दिशा से उल्टा घुमाएँ -page_rotate_ccw_label=\u0020घड़ी की दिशा से उल्टा घुमाएँ - -cursor_text_select_tool.title=पाठ चयन उपकरण सक्षम करें -cursor_text_select_tool_label=पाठ चयन उपकरण -cursor_hand_tool.title=हस्त उपकरण सक्षम करें -cursor_hand_tool_label=हस्त उपकरण - -scroll_vertical.title=लंबवत स्क्रॉलिंग का उपयोग करें -scroll_vertical_label=लंबवत स्क्रॉलिंग -scroll_horizontal.title=क्षितिजिय स्क्रॉलिंग का उपयोग करें -scroll_horizontal_label=क्षितिजिय स्क्रॉलिंग -scroll_wrapped.title=व्राप्पेड स्क्रॉलिंग का उपयोग करें - -spread_none_label=कोई स्प्रेड उपलब्ध नहीं -spread_odd.title=विषम-क्रमांकित पृष्ठों से प्रारंभ होने वाले पृष्ठ स्प्रेड में शामिल हों -spread_odd_label=विषम फैलाव - -# Document properties dialog box -document_properties.title=दस्तावेज़ विशेषता... -document_properties_label=दस्तावेज़ विशेषता... -document_properties_file_name=फ़ाइल नाम: -document_properties_file_size=फाइल आकारः -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=शीर्षक: -document_properties_author=लेखकः -document_properties_subject=विषय: -document_properties_keywords=कुंजी-शब्द: -document_properties_creation_date=निर्माण दिनांक: -document_properties_modification_date=संशोधन दिनांक: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=निर्माता: -document_properties_producer=PDF उत्पादक: -document_properties_version=PDF संस्करण: -document_properties_page_count=पृष्ठ गिनती: -document_properties_page_size=पृष्ठ आकार: -document_properties_page_size_unit_inches=इंच -document_properties_page_size_unit_millimeters=मिमी -document_properties_page_size_orientation_portrait=पोर्ट्रेट -document_properties_page_size_orientation_landscape=लैंडस्केप -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=पत्र -document_properties_page_size_name_legal=क़ानूनी -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=तीव्र वेब व्यू: -document_properties_linearized_yes=हाँ -document_properties_linearized_no=नहीं -document_properties_close=बंद करें - -print_progress_message=छपाई के लिए दस्तावेज़ को तैयार किया जा रहा है... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=रद्द करें - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=\u0020स्लाइडर टॉगल करें -toggle_sidebar_notification.title=साइडबार टॉगल करें (दस्तावेज़ में रूपरेखा शामिल है/attachments) -toggle_sidebar_label=स्लाइडर टॉगल करें -document_outline.title=दस्तावेज़ की रूपरेखा दिखाइए (सारी वस्तुओं को फलने अथवा समेटने के लिए दो बार क्लिक करें) -document_outline_label=दस्तावेज़ आउटलाइन -attachments.title=संलग्नक दिखायें -attachments_label=संलग्नक -thumbs.title=लघुछवियाँ दिखाएँ -thumbs_label=लघु छवि -findbar.title=\u0020दस्तावेज़ में ढूँढ़ें -findbar_label=ढूँढें - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=पृष्ठ {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=पृष्ठ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=पृष्ठ {{page}} की लघु-छवि - -# Find panel button title and messages -find_input.title=ढूँढें -find_input.placeholder=दस्तावेज़ में खोजें... -find_previous.title=वाक्यांश की पिछली उपस्थिति ढूँढ़ें -find_previous_label=पिछला -find_next.title=वाक्यांश की अगली उपस्थिति ढूँढ़ें -find_next_label=अगला -find_highlight=\u0020सभी आलोकित करें -find_match_case_label=मिलान स्थिति -find_entire_word_label=संपूर्ण शब्द -find_reached_top=पृष्ठ के ऊपर पहुंच गया, नीचे से जारी रखें -find_reached_bottom=पृष्ठ के नीचे में जा पहुँचा, ऊपर से जारी -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} में {{current}} मेल -find_match_count[two]={{total}} में {{current}} मेल -find_match_count[few]={{total}} में {{current}} मेल -find_match_count[many]={{total}} में {{current}} मेल -find_match_count[other]={{total}} में {{current}} मेल -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} से अधिक मेल -find_match_count_limit[one]={{limit}} से अधिक मेल -find_match_count_limit[two]={{limit}} से अधिक मेल -find_match_count_limit[few]={{limit}} से अधिक मेल -find_match_count_limit[many]={{limit}} से अधिक मेल -find_match_count_limit[other]={{limit}} से अधिक मेल -find_not_found=वाक्यांश नहीं मिला - -# Error panel labels -error_more_info=अधिक सूचना -error_less_info=कम सूचना -error_close=बंद करें -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=\u0020संदेश: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=स्टैक: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=फ़ाइल: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=पंक्ति: {{line}} -rendering_error=पृष्ठ रेंडरिंग के दौरान त्रुटि आई. - -# Predefined zoom values -page_scale_width=\u0020पृष्ठ चौड़ाई -page_scale_fit=पृष्ठ फिट -page_scale_auto=स्वचालित जूम -page_scale_actual=वास्तविक आकार -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=त्रुटि -loading_error=PDF लोड करते समय एक त्रुटि हुई. -invalid_file_error=अमान्य या भ्रष्ट PDF फ़ाइल. -missing_file_error=\u0020अनुपस्थित PDF फ़ाइल. -unexpected_response_error=अप्रत्याशित सर्वर प्रतिक्रिया. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=\u0020[{{type}} Annotation] -password_label=इस PDF फ़ाइल को खोलने के लिए कृपया कूटशब्द भरें. -password_invalid=अवैध कूटशब्द, कृपया फिर कोशिश करें. -password_ok=OK -password_cancel=रद्द करें - -printing_not_supported=चेतावनी: इस ब्राउज़र पर छपाई पूरी तरह से समर्थित नहीं है. -printing_not_ready=चेतावनी: PDF छपाई के लिए पूरी तरह से लोड नहीं है. -web_fonts_disabled=वेब फॉन्ट्स निष्क्रिय हैं: अंतःस्थापित PDF फॉन्टस के उपयोग में असमर्थ. -document_colors_not_allowed=PDF दस्तावेज़ उनके अपने रंग को उपयोग करने के लिए अनुमति प्राप्त नहीं है: "पृष्ठों को उनके अपने रंग को चुनने के लिए स्वीकृति दें" कि वह उस ब्राउज़र में निष्क्रिय है. diff --git a/cookbook/static/pdfjs/locale/hr/viewer.properties b/cookbook/static/pdfjs/locale/hr/viewer.properties deleted file mode 100644 index 67cc8983d..000000000 --- a/cookbook/static/pdfjs/locale/hr/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Prethodna stranica -previous_label=Prethodna -next.title=Sljedeća stranica -next_label=Sljedeća - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Stranica -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=od {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} od {{pagesCount}}) - -zoom_out.title=Umanji -zoom_out_label=Umanji -zoom_in.title=Uvećaj -zoom_in_label=Uvećaj -zoom.title=Zumiranje -presentation_mode.title=Prebaci u prezentacijski način rada -presentation_mode_label=Prezentacijski način rada -open_file.title=Otvori datoteku -open_file_label=Otvori -print.title=Ispiši -print_label=Ispiši -download.title=Preuzmi -download_label=Preuzmi -bookmark.title=Trenutačni prikaz (kopiraj ili otvori u novom prozoru) -bookmark_label=Trenutačni prikaz - -# Secondary toolbar and context menu -tools.title=Alati -tools_label=Alati -first_page.title=Idi na prvu stranicu -first_page.label=Idi na prvu stranicu -first_page_label=Idi na prvu stranicu -last_page.title=Idi na posljednju stranicu -last_page.label=Idi na posljednju stranicu -last_page_label=Idi na posljednju stranicu -page_rotate_cw.title=Rotiraj u smjeru kazaljke na satu -page_rotate_cw.label=Rotiraj u smjeru kazaljke na satu -page_rotate_cw_label=Rotiraj u smjeru kazaljke na satu -page_rotate_ccw.title=Rotiraj obrnutno od smjera kazaljke na satu -page_rotate_ccw.label=Rotiraj obrnutno od smjera kazaljke na satu -page_rotate_ccw_label=Rotiraj obrnutno od smjera kazaljke na satu - -cursor_text_select_tool.title=Omogući alat za označavanje teksta -cursor_text_select_tool_label=Alat za označavanje teksta -cursor_hand_tool.title=Omogući ručni alat -cursor_hand_tool_label=Ručni alat - -scroll_vertical.title=Koristi okomito pomicanje -scroll_vertical_label=Okomito pomicanje -scroll_horizontal.title=Koristi vodoravno pomicanje -scroll_horizontal_label=Vodoravno pomicanje -scroll_wrapped.title=Koristi kontinuirani raspored stranica -scroll_wrapped_label=Kontinuirani raspored stranica - -spread_none.title=Ne izrađuj duplerice -spread_none_label=Pojedinačne stranice -spread_odd.title=Izradi duplerice koje počinju s neparnim stranicama -spread_odd_label=Neparne duplerice -spread_even.title=Izradi duplerice koje počinju s parnim stranicama -spread_even_label=Parne duplerice - -# Document properties dialog box -document_properties.title=Svojstva dokumenta... -document_properties_label=Svojstva dokumenta... -document_properties_file_name=Naziv datoteke: -document_properties_file_size=Veličina datoteke: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajtova) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtova) -document_properties_title=Naslov: -document_properties_author=Autor: -document_properties_subject=Predmet: -document_properties_keywords=Ključne riječi: -document_properties_creation_date=Datum stvaranja: -document_properties_modification_date=Datum promjene: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Stvaratelj: -document_properties_producer=PDF stvaratelj: -document_properties_version=PDF verzija: -document_properties_page_count=Broj stranica: -document_properties_page_size=Dimenzije stranice: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=uspravno -document_properties_page_size_orientation_landscape=položeno -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Brzi web pregled: -document_properties_linearized_yes=Da -document_properties_linearized_no=Ne -document_properties_close=Zatvori - -print_progress_message=Pripremanje dokumenta za ispis… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Odustani - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Prikaži/sakrij bočnu traku -toggle_sidebar_notification.title=Prikazivanje i sklanjanje bočne trake (dokument sadrži konturu/privitke) -toggle_sidebar_label=Prikaži/sakrij bočnu traku -document_outline.title=Prikaži strukturu dokumenta (dvostruki klik za rasklapanje/sklapanje svih stavki) -document_outline_label=Struktura dokumenta -attachments.title=Prikaži privitke -attachments_label=Privitci -thumbs.title=Prikaži minijature -thumbs_label=Minijature -findbar.title=Traži u dokumentu -findbar_label=Traži - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Stranica br. {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Stranica {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Minijatura stranice {{page}} - -# Find panel button title and messages -find_input.title=Traži -find_input.placeholder=Traži u dokumentu… -find_previous.title=Pronađi prethodno pojavljivanje ovog izraza -find_previous_label=Prethodno -find_next.title=Pronađi sljedeće pojavljivanje ovog izraza -find_next_label=Sljedeće -find_highlight=Istankni sve -find_match_case_label=Razlikovanje velikih i malih slova -find_entire_word_label=Cijele riječi -find_reached_top=Dosegnut početak dokumenta, nastavak s kraja -find_reached_bottom=Dosegnut kraj dokumenta, nastavak s početka -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} od {{total}} se podudara -find_match_count[two]={{current}} od {{total}} se podudara -find_match_count[few]={{current}} od {{total}} se podudara -find_match_count[many]={{current}} od {{total}} se podudara -find_match_count[other]={{current}} od {{total}} se podudara -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Više od {{limit}} podudaranja -find_match_count_limit[one]=Više od {{limit}} podudaranja -find_match_count_limit[two]=Više od {{limit}} podudaranja -find_match_count_limit[few]=Više od {{limit}} podudaranja -find_match_count_limit[many]=Više od {{limit}} podudaranja -find_match_count_limit[other]=Više od {{limit}} podudaranja -find_not_found=Izraz nije pronađen - -# Error panel labels -error_more_info=Više informacija -error_less_info=Manje informacija -error_close=Zatvori -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Poruka: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stog: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Datoteka: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Redak: {{line}} -rendering_error=Došlo je do greške prilikom iscrtavanja stranice. - -# Predefined zoom values -page_scale_width=Prilagodi širini prozora -page_scale_fit=Prilagodi veličini prozora -page_scale_auto=Automatsko zumiranje -page_scale_actual=Stvarna veličina -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Greška -loading_error=Došlo je do greške pri učitavanju PDF-a. -invalid_file_error=Neispravna ili oštećena PDF datoteka. -missing_file_error=Nedostaje PDF datoteka. -unexpected_response_error=Neočekivani odgovor poslužitelja. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Bilješka] -password_label=Za otvoranje ove PDF datoteku upiši lozinku. -password_invalid=Neispravna lozinka. Pokušaj ponovo. -password_ok=U redu -password_cancel=Odustani - -printing_not_supported=Upozorenje: Ovaj preglednik ne podržava u potpunosti ispisivanje. -printing_not_ready=Upozorenje: PDF nije u potpunosti učitan za ispis. -web_fonts_disabled=Web fontovi su onemogućeni: nije moguće koristiti umetnute PDF fontove. -document_colors_not_allowed=PDF dokumentima nije dozvoljeno koristiti vlastite boje: opcija „Dozvoli stranicama koristiti vlastite boje” je deaktivirana u pregledniku. diff --git a/cookbook/static/pdfjs/locale/hsb/viewer.properties b/cookbook/static/pdfjs/locale/hsb/viewer.properties deleted file mode 100644 index a8f31f1a5..000000000 --- a/cookbook/static/pdfjs/locale/hsb/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Předchadna strona -previous_label=Wróćo -next.title=Přichodna strona -next_label=Dale - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Strona -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=z {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} z {{pagesCount}}) - -zoom_out.title=Pomjeńšić -zoom_out_label=Pomjeńšić -zoom_in.title=Powjetšić -zoom_in_label=Powjetšić -zoom.title=Skalowanje -presentation_mode.title=Do prezentaciskeho modusa přeńć -presentation_mode_label=Prezentaciski modus -open_file.title=Dataju wočinić -open_file_label=Wočinić -print.title=Ćišćeć -print_label=Ćišćeć -download.title=Sćahnyć -download_label=Sćahnyć -bookmark.title=Aktualny napohlad (kopěrować abo w nowym woknje wočinić) -bookmark_label=Aktualny napohlad - -# Secondary toolbar and context menu -tools.title=Nastroje -tools_label=Nastroje -first_page.title=K prěnjej stronje -first_page.label=K prěnjej stronje -first_page_label=K prěnjej stronje -last_page.title=K poslednjej stronje -last_page.label=K poslednjej stronje -last_page_label=K poslednjej stronje -page_rotate_cw.title=K směrej časnika wjerćeć -page_rotate_cw.label=K směrej časnika wjerćeć -page_rotate_cw_label=K směrej časnika wjerćeć -page_rotate_ccw.title=Přećiwo směrej časnika wjerćeć -page_rotate_ccw.label=Přećiwo směrej časnika wjerćeć -page_rotate_ccw_label=Přećiwo směrej časnika wjerćeć - -cursor_text_select_tool.title=Nastroj za wuběranje teksta zmóžnić -cursor_text_select_tool_label=Nastroj za wuběranje teksta -cursor_hand_tool.title=Ručny nastroj zmóžnić -cursor_hand_tool_label=Ručny nastroj - -scroll_vertical.title=Wertikalne suwanje wužiwać -scroll_vertical_label=Wertikalnje suwanje -scroll_horizontal.title=Horicontalne suwanje wužiwać -scroll_horizontal_label=Horicontalne suwanje -scroll_wrapped.title=Postupne suwanje wužiwać -scroll_wrapped_label=Postupne suwanje - -spread_none.title=Strony njezwjazać -spread_none_label=Žana dwójna strona -spread_odd.title=Strony započinajo z njerunymi stronami zwjazać -spread_odd_label=Njerune strony -spread_even.title=Strony započinajo z runymi stronami zwjazać -spread_even_label=Rune strony - -# Document properties dialog box -document_properties.title=Dokumentowe kajkosće… -document_properties_label=Dokumentowe kajkosće… -document_properties_file_name=Mjeno dataje: -document_properties_file_size=Wulkosć dataje: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajtow) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtow) -document_properties_title=Titul: -document_properties_author=Awtor: -document_properties_subject=Předmjet: -document_properties_keywords=Klučowe słowa: -document_properties_creation_date=Datum wutworjenja: -document_properties_modification_date=Datum změny: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Awtor: -document_properties_producer=PDF-zhotowjer: -document_properties_version=PDF-wersija: -document_properties_page_count=Ličba stronow: -document_properties_page_size=Wulkosć strony: -document_properties_page_size_unit_inches=cól -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=wysoki format -document_properties_page_size_orientation_landscape=prěčny format -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Haj -document_properties_linearized_no=Ně -document_properties_close=Začinić - -print_progress_message=Dokument so za ćišćenje přihotuje… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Přetorhnyć - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Bóčnicu pokazać/schować -toggle_sidebar_notification.title=Bóčnicu přepinać (dokument wobsahuje wobrys/přiwěški) -toggle_sidebar_label=Bóčnicu pokazać/schować -document_outline.title=Dokumentowy naćisk pokazać (dwójne kliknjenje, zo bychu so wšě zapiski pokazali/schowali) -document_outline_label=Dokumentowa struktura -attachments.title=Přiwěški pokazać -attachments_label=Přiwěški -thumbs.title=Miniatury pokazać -thumbs_label=Miniatury -findbar.title=W dokumenće pytać -findbar_label=Pytać - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Strona {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Strona {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura strony {{page}} - -# Find panel button title and messages -find_input.title=Pytać -find_input.placeholder=W dokumenće pytać… -find_previous.title=Předchadne wustupowanje pytanskeho wuraza pytać -find_previous_label=Wróćo -find_next.title=Přichodne wustupowanje pytanskeho wuraza pytać -find_next_label=Dale -find_highlight=Wšě wuzběhnyć -find_match_case_label=Wulkopisanje wobkedźbować -find_entire_word_label=Cyłe słowa -find_reached_top=Spočatk dokumenta docpěty, pokročuje so z kóncom -find_reached_bottom=Kónc dokument docpěty, pokročuje so ze spočatkom -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} z {{total}} wotpowědnika -find_match_count[two]={{current}} z {{total}} wotpowědnikow -find_match_count[few]={{current}} z {{total}} wotpowědnikow -find_match_count[many]={{current}} z {{total}} wotpowědnikow -find_match_count[other]={{current}} z {{total}} wotpowědnikow -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Wjace hač {{limit}} wotpowědnikow -find_match_count_limit[one]=Wjace hač {{limit}} wotpowědnik -find_match_count_limit[two]=Wjace hač {{limit}} wotpowědnikaj -find_match_count_limit[few]=Wjace hač {{limit}} wotpowědniki -find_match_count_limit[many]=Wjace hač {{limit}} wotpowědnikow -find_match_count_limit[other]=Wjace hač {{limit}} wotpowědnikow -find_not_found=Pytanski wuraz njeje so namakał - -# Error panel labels -error_more_info=Wjace informacijow -error_less_info=Mjenje informacijow -error_close=Začinić -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Zdźělenka: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Lisćina zawołanjow: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Dataja: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linka: {{line}} -rendering_error=Při zwobraznjenju strony je zmylk wustupił. - -# Predefined zoom values -page_scale_width=Šěrokosć strony -page_scale_fit=Wulkosć strony -page_scale_auto=Awtomatiske skalowanje -page_scale_actual=Aktualna wulkosć -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Zmylk -loading_error=Při začitowanju PDF je zmylk wustupił. -invalid_file_error=Njepłaćiwa abo wobškodźena PDF-dataja. -missing_file_error=Falowaca PDF-dataja. -unexpected_response_error=Njewočakowana serwerowa wotmołwa. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Typ přispomnjenki: {{type}}] -password_label=Zapodajće hesło, zo byšće PDF-dataju wočinił. -password_invalid=Njepłaćiwe hesło. Prošu spytajće hišće raz. -password_ok=W porjadku -password_cancel=Přetorhnyć - -printing_not_supported=Warnowanje: Ćišćenje so přez tutón wobhladowak połnje njepodpěruje. -printing_not_ready=Warnowanje: PDF njeje so za ćišćenje dospołnje začitał. -web_fonts_disabled=Webpisma su znjemóžnjene: njeje móžno, zasadźene PDF-pisma wužiwać. -document_colors_not_allowed=PDF-dokumenty njesmědźa swoje barby wužiwać: 'Stronam dowolić, swoje barby wužiwać' je we wobhladowaku znjemóžnjene. diff --git a/cookbook/static/pdfjs/locale/hu/viewer.properties b/cookbook/static/pdfjs/locale/hu/viewer.properties deleted file mode 100644 index cba69f0fc..000000000 --- a/cookbook/static/pdfjs/locale/hu/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Előző oldal -previous_label=Előző -next.title=Következő oldal -next_label=Tovább - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Oldal -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=összesen: {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=Kicsinyítés -zoom_out_label=Kicsinyítés -zoom_in.title=Nagyítás -zoom_in_label=Nagyítás -zoom.title=Nagyítás -presentation_mode.title=Váltás bemutató módba -presentation_mode_label=Bemutató mód -open_file.title=Fájl megnyitása -open_file_label=Megnyitás -print.title=Nyomtatás -print_label=Nyomtatás -download.title=Letöltés -download_label=Letöltés -bookmark.title=Jelenlegi nézet (másolás vagy megnyitás új ablakban) -bookmark_label=Aktuális nézet - -# Secondary toolbar and context menu -tools.title=Eszközök -tools_label=Eszközök -first_page.title=Ugrás az első oldalra -first_page.label=Ugrás az első oldalra -first_page_label=Ugrás az első oldalra -last_page.title=Ugrás az utolsó oldalra -last_page.label=Ugrás az utolsó oldalra -last_page_label=Ugrás az utolsó oldalra -page_rotate_cw.title=Forgatás az óramutató járásával egyezően -page_rotate_cw.label=Forgatás az óramutató járásával egyezően -page_rotate_cw_label=Forgatás az óramutató járásával egyezően -page_rotate_ccw.title=Forgatás az óramutató járásával ellentétesen -page_rotate_ccw.label=Forgatás az óramutató járásával ellentétesen -page_rotate_ccw_label=Forgatás az óramutató járásával ellentétesen - -cursor_text_select_tool.title=Szövegkijelölő eszköz bekapcsolása -cursor_text_select_tool_label=Szövegkijelölő eszköz -cursor_hand_tool.title=Kéz eszköz bekapcsolása -cursor_hand_tool_label=Kéz eszköz - -scroll_vertical.title=Függőleges görgetés használata -scroll_vertical_label=Függőleges görgetés -scroll_horizontal.title=Vízszintes görgetés használata -scroll_horizontal_label=Vízszintes görgetés -scroll_wrapped.title=Rácsos elrendezés használata -scroll_wrapped_label=Rácsos elrendezés - -spread_none.title=Ne tapassza össze az oldalakat -spread_none_label=Nincs összetapasztás -spread_odd.title=Lapok összetapasztása, a páratlan számú oldalakkal kezdve -spread_odd_label=Összetapasztás: páratlan -spread_even.title=Lapok összetapasztása, a páros számú oldalakkal kezdve -spread_even_label=Összetapasztás: páros - -# Document properties dialog box -document_properties.title=Dokumentum tulajdonságai… -document_properties_label=Dokumentum tulajdonságai… -document_properties_file_name=Fájlnév: -document_properties_file_size=Fájlméret: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bájt) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bájt) -document_properties_title=Cím: -document_properties_author=Szerző: -document_properties_subject=Tárgy: -document_properties_keywords=Kulcsszavak: -document_properties_creation_date=Létrehozás dátuma: -document_properties_modification_date=Módosítás dátuma: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Létrehozta: -document_properties_producer=PDF előállító: -document_properties_version=PDF verzió: -document_properties_page_count=Oldalszám: -document_properties_page_size=Lapméret: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=álló -document_properties_page_size_orientation_landscape=fekvő -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Jogi információk -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Gyors webes nézet: -document_properties_linearized_yes=Igen -document_properties_linearized_no=Nem -document_properties_close=Bezárás - -print_progress_message=Dokumentum előkészítése nyomtatáshoz… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Mégse - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Oldalsáv be/ki -toggle_sidebar_notification.title=Oldalsáv be/ki (a dokumentum vázlatot/mellékleteket tartalmaz) -toggle_sidebar_label=Oldalsáv be/ki -document_outline.title=Dokumentum megjelenítése online (dupla kattintás minden elem kinyitásához/összecsukásához) -document_outline_label=Dokumentumvázlat -attachments.title=Mellékletek megjelenítése -attachments_label=Van melléklet -thumbs.title=Bélyegképek megjelenítése -thumbs_label=Bélyegképek -findbar.title=Keresés a dokumentumban -findbar_label=Keresés - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}}. oldal -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}}. oldal -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}}. oldal bélyegképe - -# Find panel button title and messages -find_input.title=Keresés -find_input.placeholder=Keresés a dokumentumban… -find_previous.title=A kifejezés előző előfordulásának keresése -find_previous_label=Előző -find_next.title=A kifejezés következő előfordulásának keresése -find_next_label=Tovább -find_highlight=Összes kiemelése -find_match_case_label=Kis- és nagybetűk megkülönböztetése -find_entire_word_label=Teljes szavak -find_reached_top=A dokumentum eleje elérve, folytatás a végétől -find_reached_bottom=A dokumentum vége elérve, folytatás az elejétől -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} / {{total}} találat -find_match_count[two]={{current}} / {{total}} találat -find_match_count[few]={{current}} / {{total}} találat -find_match_count[many]={{current}} / {{total}} találat -find_match_count[other]={{current}} / {{total}} találat -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Több mint {{limit}} találat -find_match_count_limit[one]=Több mint {{limit}} találat -find_match_count_limit[two]=Több mint {{limit}} találat -find_match_count_limit[few]=Több mint {{limit}} találat -find_match_count_limit[many]=Több mint {{limit}} találat -find_match_count_limit[other]=Több mint {{limit}} találat -find_not_found=A kifejezés nem található - -# Error panel labels -error_more_info=További tudnivalók -error_less_info=Kevesebb információ -error_close=Bezárás -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Üzenet: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Verem: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fájl: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Sor: {{line}} -rendering_error=Hiba történt az oldal feldolgozása közben. - -# Predefined zoom values -page_scale_width=Oldalszélesség -page_scale_fit=Teljes oldal -page_scale_auto=Automatikus nagyítás -page_scale_actual=Valódi méret -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Hiba -loading_error=Hiba történt a PDF betöltésekor. -invalid_file_error=Érvénytelen vagy sérült PDF fájl. -missing_file_error=Hiányzó PDF fájl. -unexpected_response_error=Váratlan kiszolgálóválasz. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} megjegyzés] -password_label=Adja meg a jelszót a PDF fájl megnyitásához. -password_invalid=Helytelen jelszó. Próbálja újra. -password_ok=OK -password_cancel=Mégse - -printing_not_supported=Figyelmeztetés: Ez a böngésző nem teljesen támogatja a nyomtatást. -printing_not_ready=Figyelmeztetés: A PDF nincs teljesen betöltve a nyomtatáshoz. -web_fonts_disabled=Webes betűkészletek letiltva: nem használhatók a beágyazott PDF betűkészletek. -document_colors_not_allowed=A PDF dokumentumok nem használhatják saját színeiket: „Az oldalak a saját maguk által kiválasztott színeket használhatják” beállítás ki van kapcsolva a böngészőben. diff --git a/cookbook/static/pdfjs/locale/hy-AM/viewer.properties b/cookbook/static/pdfjs/locale/hy-AM/viewer.properties deleted file mode 100644 index f38581b21..000000000 --- a/cookbook/static/pdfjs/locale/hy-AM/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Նախորդ էջը -previous_label=Նախորդը -next.title=Հաջորդ էջը -next_label=Հաջորդը - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Էջ. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}}-ից\u0020 -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}}-ը {{pagesCount}})-ից - -zoom_out.title=Փոքրացնել -zoom_out_label=Փոքրացնել -zoom_in.title=Խոշորացնել -zoom_in_label=Խոշորացնել -zoom.title=Մասշտաբը\u0020 -presentation_mode.title=Անցնել Ներկայացման եղանակին -presentation_mode_label=Ներկայացման եղանակ -open_file.title=Բացել նիշք -open_file_label=Բացել -print.title=Տպել -print_label=Տպել -download.title=Բեռնել -download_label=Բեռնել -bookmark.title=Ընթացիկ տեսքով (պատճենել կամ բացել նոր պատուհանում) -bookmark_label=Ընթացիկ տեսքը - -# Secondary toolbar and context menu -tools.title=Գործիքներ -tools_label=Գործիքներ -first_page.title=Անցնել առաջին էջին -first_page.label=Անցնել առաջին էջին -first_page_label=Անցնել առաջին էջին -last_page.title=Անցնել վերջին էջին -last_page.label=Անցնել վերջին էջին -last_page_label=Անցնել վերջին էջին -page_rotate_cw.title=Պտտել ըստ ժամացույցի սլաքի -page_rotate_cw.label=Պտտել ըստ ժամացույցի սլաքի -page_rotate_cw_label=Պտտել ըստ ժամացույցի սլաքի -page_rotate_ccw.title=Պտտել հակառակ ժամացույցի սլաքի -page_rotate_ccw.label=Պտտել հակառակ ժամացույցի սլաքի -page_rotate_ccw_label=Պտտել հակառակ ժամացույցի սլաքի - -cursor_text_select_tool.title=Միացնել գրույթ ընտրելու գործիքը -cursor_text_select_tool_label=Գրույթը ընտրելու գործիք -cursor_hand_tool.title=Միացնել Ձեռքի գործիքը -cursor_hand_tool_label=Ձեռքի գործիք - -scroll_vertical.title=Օգտագործել ուղղահայաց ոլորում -scroll_vertical_label=Ուղղահայաց ոլորում -scroll_horizontal.title=Օգտագործել հորիզոնական ոլորում -scroll_horizontal_label=Հորիզոնական ոլորում -scroll_wrapped.title=Օգտագործել փաթաթված ոլորում -scroll_wrapped_label=Փաթաթված ոլորում - -spread_none.title=Մի միացեք էջի վերածածկերին -spread_none_label=Չկա վերածածկեր -spread_odd.title=Միացեք էջի վերածածկերին սկսելով՝ կենտ համարակալված էջերով -spread_odd_label=Կենտ վերածածկեր -spread_even.title=Միացեք էջի վերածածկերին սկսելով՝ զույգ համարակալված էջերով -spread_even_label=Զույգ վերածածկեր - -# Document properties dialog box -document_properties.title=Փաստաթղթի հատկությունները… -document_properties_label=Փաստաթղթի հատկությունները… -document_properties_file_name=Նիշքի անունը. -document_properties_file_size=Նիշք չափը. -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} ԿԲ ({{size_b}} բայթ) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} ՄԲ ({{size_b}} բայթ) -document_properties_title=Վերնագիր. -document_properties_author=Հեղինակ․ -document_properties_subject=Վերնագիր. -document_properties_keywords=Հիմնաբառ. -document_properties_creation_date=Ստեղծելու ամսաթիվը. -document_properties_modification_date=Փոփոխելու ամսաթիվը. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Ստեղծող. -document_properties_producer=PDF-ի հեղինակը. -document_properties_version=PDF-ի տարբերակը. -document_properties_page_count=Էջերի քանակը. -document_properties_page_size=Էջի չափը. -document_properties_page_size_unit_inches=ում -document_properties_page_size_unit_millimeters=մմ -document_properties_page_size_orientation_portrait=ուղղաձիգ -document_properties_page_size_orientation_landscape=հորիզոնական -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Նամակ -document_properties_page_size_name_legal=Օրինական -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Արագ վեբ դիտում․ -document_properties_linearized_yes=Այո -document_properties_linearized_no=Ոչ -document_properties_close=Փակել - -print_progress_message=Նախապատրաստում է փաստաթուղթը տպելուն... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Չեղարկել - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Բացել/Փակել Կողային վահանակը -toggle_sidebar_notification.title=Փոխանջատել Կողային գոտին (փաստաթուղթը պարունակում է ուրվագիծ/կցորդ) -toggle_sidebar_label=Բացել/Փակել Կողային վահանակը -document_outline.title=Ցուցադրել փաստաթղթի ուրվագիծը (կրկնակի սեղմեք՝ միավորները ընդարձակելու/կոծկելու համար) -document_outline_label=Փաստաթղթի բովանդակությունը -attachments.title=Ցուցադրել կցորդները -attachments_label=Կցորդներ -thumbs.title=Ցուցադրել Մանրապատկերը -thumbs_label=Մանրապատկերը -findbar.title=Գտնել փաստաթղթում -findbar_label=Որոնում - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Էջ {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Էջը {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Էջի մանրապատկերը {{page}} - -# Find panel button title and messages -find_input.title=Որոնում -find_input.placeholder=Գտնել փաստաթղթում... -find_previous.title=Գտնել անրահայտության նախորդ հանդիպումը -find_previous_label=Նախորդը -find_next.title=Գտիր արտահայտության հաջորդ հանդիպումը -find_next_label=Հաջորդը -find_highlight=Գունանշել բոլորը -find_match_case_label=Մեծ(փոքր)ատառ հաշվի առնել -find_entire_word_label=Ամբողջ բառերը -find_reached_top=Հասել եք փաստաթղթի վերևին, կշարունակվի ներքևից -find_reached_bottom=Հասել եք փաստաթղթի վերջին, կշարունակվի վերևից -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ հոգնակի(ընդհանուր) ]} -find_match_count[one]={{current}} {{total}}-ի համընկնումից -find_match_count[two]={{current}} {{total}}-ի համընկնումներից -find_match_count[few]={{current}} {{total}}-ի համընկնումներից -find_match_count[many]={{current}} {{total}}-ի համընկնումներից -find_match_count[other]={{current}} {{total}}-ի համընկնումներից -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ հոգնակի (սահմանը) ]} -find_match_count_limit[zero]=Ավելին քան {{limit}} համընկնումները -find_match_count_limit[one]=Ավելին քան {{limit}} համընկնումը -find_match_count_limit[two]=Ավելին քան {{limit}} համընկնումներներ -find_match_count_limit[few]=Ավելին քան {{limit}} համընկնումներներ -find_match_count_limit[many]=Ավելին քան {{limit}} համընկնումներներ -find_match_count_limit[other]=Ավելին քան {{limit}} համընկնումներներ -find_not_found=Արտահայտությունը չգտնվեց - -# Error panel labels -error_more_info=Ավելի շատ տեղեկություն -error_less_info=Քիչ տեղեկություն -error_close=Փակել -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (կառուցումը. {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Գրությունը. {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Շեղջ. {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ֆայլ. {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Տողը. {{line}} -rendering_error=Սխալ՝ էջը ստեղծելիս: - -# Predefined zoom values -page_scale_width=Էջի լայնքը -page_scale_fit=Ձգել էջը -page_scale_auto=Ինքնաշխատ -page_scale_actual=Իրական չափը -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Սխալ -loading_error=Սխալ՝ PDF ֆայլը բացելիս։ -invalid_file_error=Սխալ կամ վնասված PDF ֆայլ: -missing_file_error=PDF ֆայլը բացակայում է: -unexpected_response_error=Սպասարկիչի անսպասելի պատասխան: - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Ծանոթություն] -password_label=Մուտքագրեք PDF-ի գաղտնաբառը: -password_invalid=Գաղտնաբառը սխալ է: Կրկին փորձեք: -password_ok=Լավ -password_cancel=Չեղարկել - -printing_not_supported=Զգուշացում. Տպելը ամբողջությամբ չի աջակցվում դիտարկիչի կողմից։ -printing_not_ready=Զգուշացում. PDF-ը ամբողջությամբ չի բեռնավորվել տպելու համար: -web_fonts_disabled=Վեբ-տառատեսակները անջատված են. հնարավոր չէ օգտագործել ներկառուցված PDF տառատեսակները: -document_colors_not_allowed=PDF փաստաթղթերին թույլատրված չէ օգտագործել իրենց սեփական գույները: “Թույլատրել էջերին ընտրել իրենց սեփական գույները“ ընտրանքը անջատված է դիտարկիչում: diff --git a/cookbook/static/pdfjs/locale/hye/viewer.properties b/cookbook/static/pdfjs/locale/hye/viewer.properties deleted file mode 100644 index b5c712772..000000000 --- a/cookbook/static/pdfjs/locale/hye/viewer.properties +++ /dev/null @@ -1,247 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Նախորդ էջ -previous_label=Նախորդը -next.title=Յաջորդ էջ -next_label=Յաջորդը - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=էջ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}}-ից\u0020 -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}}-ը {{pagesCount}})-ից - -zoom_out.title=Փոքրացնել -zoom_out_label=Փոքրացնել -zoom_in.title=Խոշորացնել -zoom_in_label=Խոշորացնել -zoom.title=Խոշորացում -presentation_mode.title=Անցնել ներկայացման եղանակին -presentation_mode_label=Ներկայացման եղանակ -open_file.title=Բացել նիշքը -open_file_label=Բացել -print.title=Տպել -print_label=Տպել -download.title=Բեռնել -download_label=Բեռնել -bookmark.title=Ընթացիկ տեսքով (պատճէնել կամ բացել նոր պատուհանում) -bookmark_label=Ընթացիկ տեսք - -# Secondary toolbar and context menu -tools.title=Գործիքներ -tools_label=Գործիքներ -first_page.title=Գնալ դէպի առաջին էջ -first_page.label=Գնալ դէպի առաջին էջ -first_page_label=Գնալ դէպի առաջին էջ -last_page.title=Գնալ դէպի վերջին էջ -last_page.label=Գնալ դէպի վերջին էջ -last_page_label=Գնալ դէպի վերջին էջ -page_rotate_cw.title=Պտտել ժամացոյցի սլաքի ուղղութեամբ -page_rotate_cw.label=Պտտել ժամացոյցի սլաքի ուղղութեամբ -page_rotate_cw_label=Պտտել ժամացոյցի սլաքի ուղղութեամբ -page_rotate_ccw.title=Պտտել ժամացոյցի սլաքի հակառակ ուղղութեամբ -page_rotate_ccw.label=Պտտել ժամացոյցի սլաքի հակառակ ուղղութեամբ -page_rotate_ccw_label=Պտտել ժամացոյցի սլաքի հակառակ ուղղութեամբ - -cursor_text_select_tool.title=Միացնել գրոյթ ընտրելու գործիքը -cursor_text_select_tool_label=Գրուածք ընտրելու գործիք -cursor_hand_tool.title=Միացնել ձեռքի գործիքը -cursor_hand_tool_label=Ձեռքի գործիք - -scroll_vertical.title=Աւգտագործել ուղղահայեաց ոլորում -scroll_vertical_label=Ուղղահայեաց ոլորում -scroll_horizontal.title=Աւգտագործել հորիզոնական ոլորում -scroll_horizontal_label=Հորիզոնական ոլորում -scroll_wrapped.title=Աւգտագործել փաթաթուած ոլորում -scroll_wrapped_label=Փաթաթուած ոլորում - -spread_none.title=Մի միացէք էջի կոնտեքստում -spread_none_label=Չկայ կոնտեքստ -spread_odd.title=Միացէք էջի կոնտեքստին սկսելով՝ կենտ համարակալուած էջերով -spread_odd_label=Տարաւրինակ կոնտեքստ -spread_even.title=Միացէք էջի կոնտեքստին սկսելով՝ զոյգ համարակալուած էջերով - -# Document properties dialog box -document_properties.title=Փաստաթղթի հատկութիւնները… -document_properties_label=Փաստաթղթի յատկութիւնները… -document_properties_file_name=Նիշքի անունը․ -document_properties_file_size=Նիշք չափը. -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} ԿԲ ({{size_b}} բայթ) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} ՄԲ ({{size_b}} բայթ) -document_properties_title=Վերնագիր -document_properties_author=Հեղինակ․ -document_properties_subject=առարկայ -document_properties_keywords=Հիմնաբառեր -document_properties_creation_date=Ստեղծման ամսաթիւ -document_properties_modification_date=Փոփոխութեան ամսաթիւ. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Ստեղծող -document_properties_producer=PDF-ի Արտադրողը. -document_properties_version=PDF-ի տարբերակը. -document_properties_page_count=Էջերի քանակը. -document_properties_page_size=Էջի չափը. -document_properties_page_size_unit_inches=ում -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=ուղղաձիգ -document_properties_page_size_orientation_landscape=հորիզոնական -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Նամակ -document_properties_page_size_name_legal=Աւրինական -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Արագ վեբ դիտում․ -document_properties_linearized_yes=Այո -document_properties_linearized_no=Ոչ -document_properties_close=Փակել - -print_progress_message=Նախապատրաստում է փաստաթուղթը տպելուն… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Չեղարկել - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Փոխարկել կողային վահանակը -toggle_sidebar_notification.title=Փոխարկել կողային վահանակը (փաստաթուղթը պարունակում է ուրուագիծ/կցորդ) -toggle_sidebar_label=Փոխարկել կողային վահանակը -document_outline.title=Ցուցադրել փաստաթղթի ուրուագիծը (կրկնակի սեղմէք՝ միաւորները ընդարձակելու/կոծկելու համար) -document_outline_label=Փաստաթղթի ուրուագիծ -attachments.title=Ցուցադրել կցորդները -attachments_label=Կցորդներ -thumbs.title=Ցուցադրել մանրապատկերը -thumbs_label=Մանրապատկեր -findbar.title=Գտնել փաստաթղթում -findbar_label=Որոնում - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Էջ {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Էջը {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Էջի մանրապատկերը {{page}} - -# Find panel button title and messages -find_input.title=Որոնում -find_input.placeholder=Գտնել փաստաթղթում… -find_previous.title=Գտնել արտայայտութեան նախորդ արտայայտութիւնը -find_previous_label=Նախորդը -find_next.title=Գտիր արտայայտութեան յաջորդ արտայայտութիւնը -find_next_label=Հաջորդը -find_highlight=Գունանշել բոլորը -find_match_case_label=Հաշուի առնել հանգամանքը -find_entire_word_label=Ամբողջ բառերը -find_reached_top=Հասել եք փաստաթղթի վերեւին,շարունակել ներքեւից -find_reached_bottom=Հասել էք փաստաթղթի վերջին, շարունակել վերեւից -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ հոգնակի(ընդհանուր) ]} -find_match_count[one]={{current}} {{total}}-ի համընկնումից -find_match_count[two]={{current}} {{total}}-ի համընկնումներից -find_match_count[few]={{current}} {{total}}-ի համընկնումներից -find_match_count[many]={{current}} {{total}}-ի համընկնումներից -find_match_count[other]={{current}} {{total}}-ի համընկնումներից -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ հոգնակի (սահմանը) ]} -find_match_count_limit[zero]=Աւելին քան {{limit}} համընկնումները -find_match_count_limit[one]=Աւելին քան {{limit}} համընկնումը -find_match_count_limit[two]=Աւելին քան {{limit}} համընկնումները -find_match_count_limit[few]=Աւելին քան {{limit}} համընկնումները -find_match_count_limit[many]=Աւելին քան {{limit}} համընկնումները -find_match_count_limit[other]=Աւելին քան {{limit}} համընկնումները -find_not_found=Արտայայտութիւնը չգտնուեց - -# Error panel labels -error_more_info=Աւելի շատ տեղեկութիւն -error_less_info=Քիչ տեղեկութիւն -error_close=Փակել -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (կառուցումը. {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Գրութիւնը. {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Շեղջ. {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=նիշք․ {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Տողը. {{line}} -rendering_error=Սխալ է տեղի ունեցել էջի մեկնաբանման ժամանակ - -# Predefined zoom values -page_scale_width=Էջի լայնքը -page_scale_fit=Հարմարեցնել էջը -page_scale_auto=Ինքնաշխատ խոշորացում -page_scale_actual=Իրական չափը -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Սխալ -loading_error=PDF նիշքը բացելիս սխալ է տեղի ունեցել։ -invalid_file_error=Սխալ կամ վնասուած PDF նիշք։ -missing_file_error=PDF նիշքը բացակաիւմ է։ -unexpected_response_error=Սպասարկիչի անսպասելի պատասխան։ - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Ծանոթութիւն] -password_label=Մուտքագրէք գաղտնաբառը այս PDF նիշքը բացելու համար -password_invalid=Գաղտնաբառը սխալ է: Կրկին փորձէք: -password_ok=Լաւ -password_cancel=Չեղարկել - -printing_not_supported=Զգուշացում. Տպելը ամբողջութեամբ չի աջակցուում զննարկիչի կողմից։ -printing_not_ready=Զգուշացում. PDF֊ը ամբողջութեամբ չի բեռնաւորուել տպելու համար։ -web_fonts_disabled=Վեբ-տառատեսակները անջատուած են. հնարաւոր չէ աւգտագործել ներկառուցուած PDF տառատեսակները։ -document_colors_not_allowed=PDF փաստաթղթերին թոյլատրուած չէ աւգտագործել իրենց սեփական գոյները։ “Թոյլատրել էջերին ընտրել իրենց սեփական գոյները“ ընտրանքը անջատուած է զննարկիչում։ diff --git a/cookbook/static/pdfjs/locale/ia/viewer.properties b/cookbook/static/pdfjs/locale/ia/viewer.properties deleted file mode 100644 index f69b26e40..000000000 --- a/cookbook/static/pdfjs/locale/ia/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pagina previe -previous_label=Previe -next.title=Pagina sequente -next_label=Sequente - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Distantiar -zoom_out_label=Distantiar -zoom_in.title=Approximar -zoom_in_label=Approximar -zoom.title=Zoom -presentation_mode.title=Excambiar a modo presentation -presentation_mode_label=Modo presentation -open_file.title=Aperir le file -open_file_label=Aperir -print.title=Imprimer -print_label=Imprimer -download.title=Discargar -download_label=Discargar -bookmark.title=Vista actual (copiar o aperir in un nove fenestra) -bookmark_label=Vista actual - -# Secondary toolbar and context menu -tools.title=Instrumentos -tools_label=Instrumentos -first_page.title=Ir al prime pagina -first_page.label=Ir al prime pagina -first_page_label=Ir al prime pagina -last_page.title=Ir al prime pagina -last_page.label=Ir al prime pagina -last_page_label=Ir al prime pagina -page_rotate_cw.title=Rotar in senso horari -page_rotate_cw.label=Rotar in senso horari -page_rotate_cw_label=Rotar in senso horari -page_rotate_ccw.title=Rotar in senso antihorari -page_rotate_ccw.label=Rotar in senso antihorari -page_rotate_ccw_label=Rotar in senso antihorari - -cursor_text_select_tool.title=Activar le instrumento de selection de texto -cursor_text_select_tool_label=Instrumento de selection de texto -cursor_hand_tool.title=Activar le instrumento mano -cursor_hand_tool_label=Instrumento mano - -scroll_vertical.title=Usar rolamento vertical -scroll_vertical_label=Rolamento vertical -scroll_horizontal.title=Usar rolamento horizontal -scroll_horizontal_label=Rolamento horizontal -scroll_wrapped.title=Usar rolamento incapsulate -scroll_wrapped_label=Rolamento incapsulate - -spread_none.title=Non junger paginas dual -spread_none_label=Sin paginas dual -spread_odd.title=Junger paginas dual a partir de paginas con numeros impar -spread_odd_label=Paginas dual impar -spread_even.title=Junger paginas dual a partir de paginas con numeros par -spread_even_label=Paginas dual par - -# Document properties dialog box -document_properties.title=Proprietates del documento… -document_properties_label=Proprietates del documento… -document_properties_file_name=Nomine del file: -document_properties_file_size=Dimension de file: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titulo: -document_properties_author=Autor: -document_properties_subject=Subjecto: -document_properties_keywords=Parolas clave: -document_properties_creation_date=Data de creation: -document_properties_modification_date=Data de modification: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=Productor PDF: -document_properties_version=Version PDF: -document_properties_page_count=Numero de paginas: -document_properties_page_size=Dimension del pagina: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=horizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Littera -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista web rapide: -document_properties_linearized_yes=Si -document_properties_linearized_no=No -document_properties_close=Clauder - -print_progress_message=Preparation del documento pro le impression… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancellar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Monstrar/celar le barra lateral -toggle_sidebar_notification.title=Monstrar/celar le barra lateral (le documento contine structura/attachamentos) -toggle_sidebar_label=Monstrar/celar le barra lateral -document_outline.title=Monstrar le schema del documento (clic duple pro expander/contraher tote le elementos) -document_outline_label=Schema del documento -attachments.title=Monstrar le annexos -attachments_label=Annexos -thumbs.title=Monstrar le vignettes -thumbs_label=Vignettes -findbar.title=Cercar in le documento -findbar_label=Cercar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pagina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Vignette del pagina {{page}} - -# Find panel button title and messages -find_input.title=Cercar -find_input.placeholder=Cercar in le documento… -find_previous.title=Trovar le previe occurrentia del phrase -find_previous_label=Previe -find_next.title=Trovar le successive occurrentia del phrase -find_next_label=Sequente -find_highlight=Evidentiar toto -find_match_case_label=Distinguer majusculas/minusculas -find_entire_word_label=Parolas integre -find_reached_top=Initio del documento attingite, continuation ab fin -find_reached_bottom=Fin del documento attingite, continuation ab initio -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} concordantia -find_match_count[two]={{current}} de {{total}} concordantias -find_match_count[few]={{current}} de {{total}} concordantias -find_match_count[many]={{current}} de {{total}} concordantias -find_match_count[other]={{current}} de {{total}} concordantias -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Plus de {{limit}} concordantias -find_match_count_limit[one]=Plus de {{limit}} concordantia -find_match_count_limit[two]=Plus de {{limit}} concordantias -find_match_count_limit[few]=Plus de {{limit}} concordantias -find_match_count_limit[many]=Plus de {{limit}} correspondentias -find_match_count_limit[other]=Plus de {{limit}} concordantias -find_not_found=Phrase non trovate - -# Error panel labels -error_more_info=Plus de informationes -error_less_info=Minus de informationes -error_close=Clauder -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linea: {{line}} -rendering_error=Un error occurreva durante que on processava le pagina. - -# Predefined zoom values -page_scale_width=Largessa pagina plen -page_scale_fit=Pagina integre -page_scale_auto=Zoom automatic -page_scale_actual=Dimension actual -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Un error occurreva durante que on cargava le file PDF. -invalid_file_error=File PDF corrumpite o non valide. -missing_file_error=File PDF mancante. -unexpected_response_error=Responsa del servitor inexpectate. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Insere le contrasigno pro aperir iste file PDF. -password_invalid=Contrasigno invalide. Per favor retenta. -password_ok=OK -password_cancel=Cancellar - -printing_not_supported=Attention : le impression non es totalmente supportate per ce navigator. -printing_not_ready=Attention: le file PDF non es integremente cargate pro lo poter imprimer. -web_fonts_disabled=Le typos de litteras web es disactivate: impossibile usar le typos de litteras PDF incorporate. -document_colors_not_allowed=Le documentos PDF non pote utilisar lor proprie colores: “Autorisar le paginas web a utilisar lor proprie colores” es disactivate in le navigator. diff --git a/cookbook/static/pdfjs/locale/id/viewer.properties b/cookbook/static/pdfjs/locale/id/viewer.properties deleted file mode 100644 index 0a904e16d..000000000 --- a/cookbook/static/pdfjs/locale/id/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Laman Sebelumnya -previous_label=Sebelumnya -next.title=Laman Selanjutnya -next_label=Selanjutnya - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Halaman -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=dari {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} dari {{pagesCount}}) - -zoom_out.title=Perkecil -zoom_out_label=Perkecil -zoom_in.title=Perbesar -zoom_in_label=Perbesar -zoom.title=Perbesaran -presentation_mode.title=Ganti ke Mode Presentasi -presentation_mode_label=Mode Presentasi -open_file.title=Buka Berkas -open_file_label=Buka -print.title=Cetak -print_label=Cetak -download.title=Unduh -download_label=Unduh -bookmark.title=Tampilan Sekarang (salin atau buka di jendela baru) -bookmark_label=Tampilan Sekarang - -# Secondary toolbar and context menu -tools.title=Alat -tools_label=Alat -first_page.title=Buka Halaman Pertama -first_page.label=Ke Halaman Pertama -first_page_label=Buka Halaman Pertama -last_page.title=Buka Halaman Terakhir -last_page.label=Ke Halaman Terakhir -last_page_label=Buka Halaman Terakhir -page_rotate_cw.title=Putar Searah Jarum Jam -page_rotate_cw.label=Putar Searah Jarum Jam -page_rotate_cw_label=Putar Searah Jarum Jam -page_rotate_ccw.title=Putar Berlawanan Arah Jarum Jam -page_rotate_ccw.label=Putar Berlawanan Arah Jarum Jam -page_rotate_ccw_label=Putar Berlawanan Arah Jarum Jam - -cursor_text_select_tool.title=Aktifkan Alat Seleksi Teks -cursor_text_select_tool_label=Alat Seleksi Teks -cursor_hand_tool.title=Aktifkan Alat Tangan -cursor_hand_tool_label=Alat Tangan - -scroll_vertical.title=Gunakan Penggeseran Vertikal -scroll_vertical_label=Penggeseran Vertikal -scroll_horizontal.title=Gunakan Penggeseran Horizontal -scroll_horizontal_label=Penggeseran Horizontal -scroll_wrapped.title=Gunakan Penggeseran Terapit -scroll_wrapped_label=Penggeseran Terapit - -spread_none.title=Jangan gabungkan lembar halaman -spread_none_label=Tidak Ada Lembaran -spread_odd.title=Gabungkan lembar lamanan mulai dengan halaman ganjil -spread_odd_label=Lembaran Ganjil -spread_even.title=Gabungkan lembar halaman dimulai dengan halaman genap -spread_even_label=Lembaran Genap - -# Document properties dialog box -document_properties.title=Properti Dokumen… -document_properties_label=Properti Dokumen… -document_properties_file_name=Nama berkas: -document_properties_file_size=Ukuran berkas: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} byte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byte) -document_properties_title=Judul: -document_properties_author=Penyusun: -document_properties_subject=Subjek: -document_properties_keywords=Kata Kunci: -document_properties_creation_date=Tanggal Dibuat: -document_properties_modification_date=Tanggal Dimodifikasi: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Pembuat: -document_properties_producer=Pemroduksi PDF: -document_properties_version=Versi PDF: -document_properties_page_count=Jumlah Halaman: -document_properties_page_size=Ukuran Laman: -document_properties_page_size_unit_inches=inci -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=tegak -document_properties_page_size_orientation_landscape=mendatar -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Tampilan Web Kilat: -document_properties_linearized_yes=Ya -document_properties_linearized_no=Tidak -document_properties_close=Tutup - -print_progress_message=Menyiapkan dokumen untuk pencetakan… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Batalkan - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Aktif/Nonaktifkan Bilah Samping -toggle_sidebar_notification.title=Aktif/Nonaktifkan Bilah Samping (dokumen berisi kerangka/lampiran) -toggle_sidebar_label=Aktif/Nonaktifkan Bilah Samping -document_outline.title=Tampilkan Kerangka Dokumen (klik ganda untuk membentangkan/menciutkan semua item) -document_outline_label=Kerangka Dokumen -attachments.title=Tampilkan Lampiran -attachments_label=Lampiran -thumbs.title=Tampilkan Miniatur -thumbs_label=Miniatur -findbar.title=Temukan di Dokumen -findbar_label=Temukan - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Laman {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Laman {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatur Laman {{page}} - -# Find panel button title and messages -find_input.title=Temukan -find_input.placeholder=Temukan di dokumen… -find_previous.title=Temukan kata sebelumnya -find_previous_label=Sebelumnya -find_next.title=Temukan lebih lanjut -find_next_label=Selanjutnya -find_highlight=Sorot semuanya -find_match_case_label=Cocokkan BESAR/kecil -find_entire_word_label=Seluruh teks -find_reached_top=Sampai di awal dokumen, dilanjutkan dari bawah -find_reached_bottom=Sampai di akhir dokumen, dilanjutkan dari atas -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} dari {{total}} hasil -find_match_count[two]={{current}} dari {{total}} hasil -find_match_count[few]={{current}} dari {{total}} hasil -find_match_count[many]={{current}} dari {{total}} hasil -find_match_count[other]={{current}} dari {{total}} hasil -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Ditemukan lebih dari {{limit}} -find_match_count_limit[one]=Ditemukan lebih dari {{limit}} -find_match_count_limit[two]=Ditemukan lebih dari {{limit}} -find_match_count_limit[few]=Ditemukan lebih dari {{limit}} -find_match_count_limit[many]=Ditemukan lebih dari {{limit}} -find_match_count_limit[other]=Ditemukan lebih dari {{limit}} -find_not_found=Frasa tidak ditemukan - -# Error panel labels -error_more_info=Lebih Banyak Informasi -error_less_info=Lebih Sedikit Informasi -error_close=Tutup -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Pesan: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Berkas: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Baris: {{line}} -rendering_error=Galat terjadi saat merender laman. - -# Predefined zoom values -page_scale_width=Lebar Laman -page_scale_fit=Muat Laman -page_scale_auto=Perbesaran Otomatis -page_scale_actual=Ukuran Asli -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Galat -loading_error=Galat terjadi saat memuat PDF. -invalid_file_error=Berkas PDF tidak valid atau rusak. -missing_file_error=Berkas PDF tidak ada. -unexpected_response_error=Balasan server yang tidak diharapkan. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotasi {{type}}] -password_label=Masukkan sandi untuk membuka berkas PDF ini. -password_invalid=Sandi tidak valid. Silakan coba lagi. -password_ok=Oke -password_cancel=Batal - -printing_not_supported=Peringatan: Pencetakan tidak didukung secara lengkap pada peramban ini. -printing_not_ready=Peringatan: Berkas PDF masih belum dimuat secara lengkap untuk dapat dicetak. -web_fonts_disabled=Font web dinonaktifkan: tidak dapat menggunakan font PDF yang tersemat. -document_colors_not_allowed=Dokumen PDF tidak diizinkan untuk menggunakan warnanya sendiri karena setelan 'Izinkan laman memilih warna sendiri' dinonaktifkan pada pengaturan. diff --git a/cookbook/static/pdfjs/locale/is/viewer.properties b/cookbook/static/pdfjs/locale/is/viewer.properties deleted file mode 100644 index d24c2adf5..000000000 --- a/cookbook/static/pdfjs/locale/is/viewer.properties +++ /dev/null @@ -1,239 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Fyrri síða -previous_label=Fyrri -next.title=Næsta síða -next_label=Næsti - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Síða -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=af {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} af {{pagesCount}}) - -zoom_out.title=Minnka -zoom_out_label=Minnka -zoom_in.title=Stækka -zoom_in_label=Stækka -zoom.title=Aðdráttur -presentation_mode.title=Skipta yfir á kynningarham -presentation_mode_label=Kynningarhamur -open_file.title=Opna skrá -open_file_label=Opna -print.title=Prenta -print_label=Prenta -download.title=Hala niður -download_label=Hala niður -bookmark.title=Núverandi sýn (afritaðu eða opnaðu í nýjum glugga) -bookmark_label=Núverandi sýn - -# Secondary toolbar and context menu -tools.title=Verkfæri -tools_label=Verkfæri -first_page.title=Fara á fyrstu síðu -first_page.label=Fara á fyrstu síðu -first_page_label=Fara á fyrstu síðu -last_page.title=Fara á síðustu síðu -last_page.label=Fara á síðustu síðu -last_page_label=Fara á síðustu síðu -page_rotate_cw.title=Snúa réttsælis -page_rotate_cw.label=Snúa réttsælis -page_rotate_cw_label=Snúa réttsælis -page_rotate_ccw.title=Snúa rangsælis -page_rotate_ccw.label=Snúa rangsælis -page_rotate_ccw_label=Snúa rangsælis - -cursor_text_select_tool.title=Virkja textavalsáhald -cursor_text_select_tool_label=Textavalsáhald -cursor_hand_tool.title=Virkja handarverkfæri -cursor_hand_tool_label=Handarverkfæri - -scroll_vertical.title=Nota lóðrétt skrun -scroll_vertical_label=Lóðrétt skrun -scroll_horizontal.title=Nota lárétt skrun -scroll_horizontal_label=Lárétt skrun - -spread_none.title=Ekki taka þátt í dreifingu síðna -spread_none_label=Engin dreifing -spread_odd.title=Taka þátt í dreifingu síðna með oddatölum -spread_odd_label=Oddatöludreifing -spread_even.title=Taktu þátt í dreifingu síðna með jöfnuntölum -spread_even_label=Jafnatöludreifing - -# Document properties dialog box -document_properties.title=Eiginleikar skjals… -document_properties_label=Eiginleikar skjals… -document_properties_file_name=Skráarnafn: -document_properties_file_size=Skrárstærð: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titill: -document_properties_author=Hönnuður: -document_properties_subject=Efni: -document_properties_keywords=Stikkorð: -document_properties_creation_date=Búið til: -document_properties_modification_date=Dags breytingar: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Höfundur: -document_properties_producer=PDF framleiðandi: -document_properties_version=PDF útgáfa: -document_properties_page_count=Blaðsíðufjöldi: -document_properties_page_size=Stærð síðu: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=skammsnið -document_properties_page_size_orientation_landscape=langsnið -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=Já -document_properties_linearized_no=Nei -document_properties_close=Loka - -print_progress_message=Undirbý skjal fyrir prentun… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Hætta við - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Víxla hliðslá -toggle_sidebar_notification.title=Víxla hliðarslá (skjal inniheldur yfirlit/viðhengi) -toggle_sidebar_label=Víxla hliðslá -document_outline.title=Sýna yfirlit skjals (tvísmelltu til að opna/loka öllum hlutum) -document_outline_label=Efnisskipan skjals -attachments.title=Sýna viðhengi -attachments_label=Viðhengi -thumbs.title=Sýna smámyndir -thumbs_label=Smámyndir -findbar.title=Leita í skjali -findbar_label=Leita - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Síða {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Smámynd af síðu {{page}} - -# Find panel button title and messages -find_input.title=Leita -find_input.placeholder=Leita í skjali… -find_previous.title=Leita að fyrra tilfelli þessara orða -find_previous_label=Fyrri -find_next.title=Leita að næsta tilfelli þessara orða -find_next_label=Næsti -find_highlight=Lita allt -find_match_case_label=Passa við stafstöðu -find_entire_word_label=Heil orð -find_reached_top=Náði efst í skjal, held áfram neðst -find_reached_bottom=Náði enda skjals, held áfram efst -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} af {{total}} niðurstöðu -find_match_count[two]={{current}} af {{total}} niðurstöðum -find_match_count[few]={{current}} af {{total}} niðurstöðum -find_match_count[many]={{current}} af {{total}} niðurstöðum -find_match_count[other]={{current}} af {{total}} niðurstöðum -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Fleiri en {{limit}} niðurstöður -find_match_count_limit[one]=Fleiri en {{limit}} niðurstaða -find_match_count_limit[two]=Fleiri en {{limit}} niðurstöður -find_match_count_limit[few]=Fleiri en {{limit}} niðurstöður -find_match_count_limit[many]=Fleiri en {{limit}} niðurstöður -find_match_count_limit[other]=Fleiri en {{limit}} niðurstöður -find_not_found=Fann ekki orðið - -# Error panel labels -error_more_info=Meiri upplýsingar -error_less_info=Minni upplýsingar -error_close=Loka -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Skilaboð: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stafli: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Skrá: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Lína: {{line}} -rendering_error=Upp kom villa við að birta síðuna. - -# Predefined zoom values -page_scale_width=Síðubreidd -page_scale_fit=Passa á síðu -page_scale_auto=Sjálfvirkur aðdráttur -page_scale_actual=Raunstærð -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Villa -loading_error=Villa kom upp við að hlaða inn PDF. -invalid_file_error=Ógild eða skemmd PDF skrá. -missing_file_error=Vantar PDF skrá. -unexpected_response_error=Óvænt svar frá netþjóni. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Skýring] -password_label=Sláðu inn lykilorð til að opna þessa PDF skrá. -password_invalid=Ógilt lykilorð. Reyndu aftur. -password_ok=Í lagi -password_cancel=Hætta við - -printing_not_supported=Aðvörun: Prentun er ekki með fyllilegan stuðning á þessum vafra. -printing_not_ready=Aðvörun: Ekki er búið að hlaða inn allri PDF skránni fyrir prentun. -web_fonts_disabled=Vef leturgerðir eru óvirkar: get ekki notað innbyggðar PDF leturgerðir. -document_colors_not_allowed=PDF skjöl hafa ekki leyfi til að nota sína eigin liti: “Leyfa síðum að velja eigin liti” er óvirkt í vafranum. diff --git a/cookbook/static/pdfjs/locale/it/viewer.properties b/cookbook/static/pdfjs/locale/it/viewer.properties deleted file mode 100644 index 1f0a20ac8..000000000 --- a/cookbook/static/pdfjs/locale/it/viewer.properties +++ /dev/null @@ -1,159 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -previous.title = Pagina precedente -previous_label = Precedente -next.title = Pagina successiva -next_label = Successiva -page.title = Pagina -of_pages = di {{pagesCount}} -page_of_pages = ({{pageNumber}} di {{pagesCount}}) -zoom_out.title = Riduci zoom -zoom_out_label = Riduci zoom -zoom_in.title = Aumenta zoom -zoom_in_label = Aumenta zoom -zoom.title = Zoom -presentation_mode.title = Passa alla modalità presentazione -presentation_mode_label = Modalità presentazione -open_file.title = Apri file -open_file_label = Apri -print.title = Stampa -print_label = Stampa -download.title = Scarica questo documento -download_label = Download -bookmark.title = Visualizzazione corrente (copia o apri in una nuova finestra) -bookmark_label = Visualizzazione corrente -tools.title = Strumenti -tools_label = Strumenti -first_page.title = Vai alla prima pagina -first_page.label = Vai alla prima pagina -first_page_label = Vai alla prima pagina -last_page.title = Vai all’ultima pagina -last_page.label = Vai all’ultima pagina -last_page_label = Vai all’ultima pagina -page_rotate_cw.title = Ruota in senso orario -page_rotate_cw.label = Ruota in senso orario -page_rotate_cw_label = Ruota in senso orario -page_rotate_ccw.title = Ruota in senso antiorario -page_rotate_ccw.label = Ruota in senso antiorario -page_rotate_ccw_label = Ruota in senso antiorario -cursor_text_select_tool.title = Attiva strumento di selezione testo -cursor_text_select_tool_label = Strumento di selezione testo -cursor_hand_tool.title = Attiva strumento mano -cursor_hand_tool_label = Strumento mano -scroll_vertical.title = Scorri le pagine in verticale -scroll_vertical_label = Scorrimento verticale -scroll_horizontal.title = Scorri le pagine in orizzontale -scroll_horizontal_label = Scorrimento orizzontale -scroll_wrapped.title = Scorri le pagine in verticale, disponendole da sinistra a destra e andando a capo automaticamente -scroll_wrapped_label = Scorrimento con a capo automatico -spread_none.title = Non raggruppare pagine -spread_none_label = Nessun raggruppamento -spread_odd.title = Crea gruppi di pagine che iniziano con numeri di pagina dispari -spread_odd_label = Raggruppamento dispari -spread_even.title = Crea gruppi di pagine che iniziano con numeri di pagina pari -spread_even_label = Raggruppamento pari -document_properties.title = Proprietà del documento… -document_properties_label = Proprietà del documento… -document_properties_file_name = Nome file: -document_properties_file_size = Dimensione file: -document_properties_kb = {{size_kb}} kB ({{size_b}} byte) -document_properties_mb = {{size_mb}} MB ({{size_b}} byte) -document_properties_title = Titolo: -document_properties_author = Autore: -document_properties_subject = Oggetto: -document_properties_keywords = Parole chiave: -document_properties_creation_date = Data creazione: -document_properties_modification_date = Data modifica: -document_properties_date_string = {{date}}, {{time}} -document_properties_creator = Autore originale: -document_properties_producer = Produttore PDF: -document_properties_version = Versione PDF: -document_properties_page_count = Conteggio pagine: -document_properties_page_size = Dimensioni pagina: -document_properties_page_size_unit_inches = in -document_properties_page_size_unit_millimeters = mm -document_properties_page_size_orientation_portrait = verticale -document_properties_page_size_orientation_landscape = orizzontale -document_properties_page_size_name_a3 = A3 -document_properties_page_size_name_a4 = A4 -document_properties_page_size_name_letter = Lettera -document_properties_page_size_name_legal = Legale -document_properties_page_size_dimension_string = {{width}} × {{height}} {{unit}} ({{orientation}}) -document_properties_page_size_dimension_name_string = {{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -document_properties_linearized = Visualizzazione web veloce: -document_properties_linearized_yes = Sì -document_properties_linearized_no = No -document_properties_close = Chiudi -print_progress_message = Preparazione documento per la stampa… -print_progress_percent = {{progress}}% -print_progress_close = Annulla -toggle_sidebar.title = Attiva/disattiva barra laterale -toggle_sidebar_notification.title = Attiva/disattiva barra laterale (il documento contiene struttura/allegati) -toggle_sidebar_label = Attiva/disattiva barra laterale -document_outline.title = Visualizza la struttura del documento (doppio clic per visualizzare/comprimere tutti gli elementi) -document_outline_label = Struttura documento -attachments.title = Visualizza allegati -attachments_label = Allegati -thumbs.title = Mostra le miniature -thumbs_label = Miniature -findbar.title = Trova nel documento -findbar_label = Trova -page_canvas = Pagina {{page}} -thumb_page_title = Pagina {{page}} -thumb_page_canvas = Miniatura della pagina {{page}} -find_input.title = Trova -find_input.placeholder = Trova nel documento… -find_previous.title = Trova l’occorrenza precedente del testo da cercare -find_previous_label = Precedente -find_next.title = Trova l’occorrenza successiva del testo da cercare -find_next_label = Successivo -find_highlight = Evidenzia -find_match_case_label = Maiuscole/minuscole -find_entire_word_label = Parole intere -find_reached_top = Raggiunto l’inizio della pagina, continua dalla fine -find_reached_bottom = Raggiunta la fine della pagina, continua dall’inizio -find_match_count = {[ plural(total) ]} -find_match_count[one] = {{current}} di {{total}} corrispondenza -find_match_count[two] = {{current}} di {{total}} corrispondenze -find_match_count[few] = {{current}} di {{total}} corrispondenze -find_match_count[many] = {{current}} di {{total}} corrispondenze -find_match_count[other] = {{current}} di {{total}} corrispondenze -find_match_count_limit = {[ plural(limit) ]} -find_match_count_limit[zero] = Più di {{limit}} corrispondenze -find_match_count_limit[one] = Più di {{limit}} corrispondenza -find_match_count_limit[two] = Più di {{limit}} corrispondenze -find_match_count_limit[few] = Più di {{limit}} corrispondenze -find_match_count_limit[many] = Più di {{limit}} corrispondenze -find_match_count_limit[other] = Più di {{limit}} corrispondenze -find_not_found = Testo non trovato -error_more_info = Ulteriori informazioni -error_less_info = Nascondi dettagli -error_close = Chiudi -error_version_info = PDF.js v{{version}} (build: {{build}}) -error_message = Messaggio: {{message}} -error_stack = Stack: {{stack}} -error_file = File: {{file}} -error_line = Riga: {{line}} -rendering_error = Si è verificato un errore durante il rendering della pagina. -page_scale_width = Larghezza pagina -page_scale_fit = Adatta a una pagina -page_scale_auto = Zoom automatico -page_scale_actual = Dimensioni effettive -page_scale_percent = {{scale}}% -loading_error_indicator = Errore -loading_error = Si è verificato un errore durante il caricamento del PDF. -invalid_file_error = File PDF non valido o danneggiato. -missing_file_error = File PDF non disponibile. -unexpected_response_error = Risposta imprevista del server -annotation_date_string = {{date}}, {{time}} -text_annotation_type.alt = [Annotazione: {{type}}] -password_label = Inserire la password per aprire questo file PDF. -password_invalid = Password non corretta. Riprovare. -password_ok = OK -password_cancel = Annulla -printing_not_supported = Attenzione: la stampa non è completamente supportata da questo browser. -printing_not_ready = Attenzione: il PDF non è ancora stato caricato completamente per la stampa. -web_fonts_disabled = I web font risultano disattivati: impossibile utilizzare i caratteri incorporati nel PDF. -document_colors_not_allowed = Non è possibile visualizzare i colori originali definiti nel file PDF: l’opzione del browser “Consenti alle pagine di scegliere i propri colori invece di quelli impostati” è disattivata. diff --git a/cookbook/static/pdfjs/locale/ja/viewer.properties b/cookbook/static/pdfjs/locale/ja/viewer.properties deleted file mode 100644 index 95732a07f..000000000 --- a/cookbook/static/pdfjs/locale/ja/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=前のページへ戻ります -previous_label=前へ -next.title=次のページへ進みます -next_label=次へ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ページ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=表示を縮小します -zoom_out_label=縮小 -zoom_in.title=表示を拡大します -zoom_in_label=拡大 -zoom.title=拡大/縮小 -presentation_mode.title=プレゼンテーションモードに切り替えます -presentation_mode_label=プレゼンテーションモード -open_file.title=ファイルを開きます -open_file_label=開く -print.title=印刷します -print_label=印刷 -download.title=ダウンロードします -download_label=ダウンロード -bookmark.title=現在のビューの URL です (コピーまたは新しいウィンドウに開く) -bookmark_label=現在のビュー - -# Secondary toolbar and context menu -tools.title=ツール -tools_label=ツール -first_page.title=最初のページへ移動します -first_page.label=最初のページへ移動 -first_page_label=最初のページへ移動 -last_page.title=最後のページへ移動します -last_page.label=最後のページへ移動 -last_page_label=最後のページへ移動 -page_rotate_cw.title=ページを右へ回転します -page_rotate_cw.label=右回転 -page_rotate_cw_label=右回転 -page_rotate_ccw.title=ページを左へ回転します -page_rotate_ccw.label=左回転 -page_rotate_ccw_label=左回転 - -cursor_text_select_tool.title=テキスト選択ツールを有効にする -cursor_text_select_tool_label=テキスト選択ツール -cursor_hand_tool.title=手のひらツールを有効にする -cursor_hand_tool_label=手のひらツール - -scroll_vertical.title=縦スクロールにする -scroll_vertical_label=縦スクロール -scroll_horizontal.title=横スクロールにする -scroll_horizontal_label=横スクロール -scroll_wrapped.title=折り返しスクロールにする -scroll_wrapped_label=折り返しスクロール - -spread_none.title=見開きにしない -spread_none_label=見開きにしない -spread_odd.title=奇数ページ開始で見開きにする -spread_odd_label=奇数ページ見開き -spread_even.title=偶数ページ開始で見開きにする -spread_even_label=偶数ページ見開き - -# Document properties dialog box -document_properties.title=文書のプロパティ... -document_properties_label=文書のプロパティ... -document_properties_file_name=ファイル名: -document_properties_file_size=ファイルサイズ: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=タイトル: -document_properties_author=作成者: -document_properties_subject=件名: -document_properties_keywords=キーワード: -document_properties_creation_date=作成日: -document_properties_modification_date=更新日: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=アプリケーション: -document_properties_producer=PDF 作成: -document_properties_version=PDF のバージョン: -document_properties_page_count=ページ数: -document_properties_page_size=ページサイズ: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=縦 -document_properties_page_size_orientation_landscape=横 -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=レター -document_properties_page_size_name_legal=リーガル -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=ウェブ表示用に最適化: -document_properties_linearized_yes=はい -document_properties_linearized_no=いいえ -document_properties_close=閉じる - -print_progress_message=文書の印刷を準備しています... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=キャンセル - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=サイドバー表示を切り替えます -toggle_sidebar_notification.title=サイドバー表示を切り替えます (文書に含まれるアウトライン / 添付) -toggle_sidebar_label=サイドバーの切り替え -document_outline.title=文書の目次を表示します (ダブルクリックで項目を開閉します) -document_outline_label=文書の目次 -attachments.title=添付ファイルを表示します -attachments_label=添付ファイル -thumbs.title=縮小版を表示します -thumbs_label=縮小版 -findbar.title=文書内を検索します -findbar_label=検索 - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}} ページ -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} ページ -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} ページの縮小版 - -# Find panel button title and messages -find_input.title=検索 -find_input.placeholder=文書内を検索... -find_previous.title=現在より前の位置で指定文字列が現れる部分を検索します -find_previous_label=前へ -find_next.title=現在より後の位置で指定文字列が現れる部分を検索します -find_next_label=次へ -find_highlight=すべて強調表示 -find_match_case_label=大文字/小文字を区別 -find_entire_word_label=単語一致 -find_reached_top=文書先頭に到達したので末尾から続けて検索します -find_reached_bottom=文書末尾に到達したので先頭から続けて検索します -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} 件中 {{current}} 件目 -find_match_count[two]={{total}} 件中 {{current}} 件目 -find_match_count[few]={{total}} 件中 {{current}} 件目 -find_match_count[many]={{total}} 件中 {{current}} 件目 -find_match_count[other]={{total}} 件中 {{current}} 件目 -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} 件以上一致 -find_match_count_limit[one]={{limit}} 件以上一致 -find_match_count_limit[two]={{limit}} 件以上一致 -find_match_count_limit[few]={{limit}} 件以上一致 -find_match_count_limit[many]={{limit}} 件以上一致 -find_match_count_limit[other]={{limit}} 件以上一致 -find_not_found=見つかりませんでした - -# Error panel labels -error_more_info=詳細情報 -error_less_info=詳細情報を隠す -error_close=閉じる -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (ビルド: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=メッセージ: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=スタック: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ファイル: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=行: {{line}} -rendering_error=ページのレンダリング中にエラーが発生しました。 - -# Predefined zoom values -page_scale_width=幅に合わせる -page_scale_fit=ページのサイズに合わせる -page_scale_auto=自動ズーム -page_scale_actual=実際のサイズ -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=エラー -loading_error=PDF の読み込み中にエラーが発生しました。 -invalid_file_error=無効または破損した PDF ファイル。 -missing_file_error=PDF ファイルが見つかりません。 -unexpected_response_error=サーバーから予期せぬ応答がありました。 - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} 注釈] -password_label=この PDF ファイルを開くためのパスワードを入力してください。 -password_invalid=無効なパスワードです。もう一度やり直してください。 -password_ok=OK -password_cancel=キャンセル - -printing_not_supported=警告: このブラウザーでは印刷が完全にサポートされていません。 -printing_not_ready=警告: PDF を印刷するための読み込みが終了していません。 -web_fonts_disabled=ウェブフォントが無効になっています: 埋め込まれた PDF のフォントを使用できません。 -document_colors_not_allowed=PDF 文書は、ウェブページが指定した配色を使用することができません: 'ウェブページが指定した配色' はブラウザーで無効になっています。 diff --git a/cookbook/static/pdfjs/locale/ka/viewer.properties b/cookbook/static/pdfjs/locale/ka/viewer.properties deleted file mode 100644 index d7a8f7a1f..000000000 --- a/cookbook/static/pdfjs/locale/ka/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=წინა გვერდი -previous_label=წინა -next.title=შემდეგი გვერდი -next_label=შემდეგი - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=გვერდი -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}}-დან -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} {{pagesCount}}-დან) - -zoom_out.title=ზომის შემცირება -zoom_out_label=დაშორება -zoom_in.title=ზომის გაზრდა -zoom_in_label=მოახლოება -zoom.title=ზომა -presentation_mode.title=ჩვენების რეჟიმზე გადართვა -presentation_mode_label=ჩვენების რეჟიმი -open_file.title=ფაილის გახსნა -open_file_label=გახსნა -print.title=ამობეჭდვა -print_label=ამობეჭდვა -download.title=ჩამოტვირთვა -download_label=ჩამოტვირთვა -bookmark.title=მიმდინარე ხედი (ასლის აღება ან გახსნა ახალ ფანჯარაში) -bookmark_label=მიმდინარე ხედი - -# Secondary toolbar and context menu -tools.title=ხელსაწყოები -tools_label=ხელსაწყოები -first_page.title=პირველ გვერდზე გადასვლა -first_page.label=პირველ გვერდზე გადასვლა -first_page_label=პირველ გვერდზე გადასვლა -last_page.title=ბოლო გვერდზე გადასვლა -last_page.label=ბოლო გვერდზე გადასვლა -last_page_label=ბოლო გვერდზე გადასვლა -page_rotate_cw.title=საათის ისრის მიმართულებით შებრუნება -page_rotate_cw.label=მარჯვნივ გადაბრუნება -page_rotate_cw_label=მარჯვნივ გადაბრუნება -page_rotate_ccw.title=საათის ისრის საპირისპიროდ შებრუნება -page_rotate_ccw.label=მარცხნივ გადაბრუნება -page_rotate_ccw_label=მარცხნივ გადაბრუნება - -cursor_text_select_tool.title=მოსანიშნი მაჩვენებლის გამოყენება -cursor_text_select_tool_label=მოსანიშნი მაჩვენებელი -cursor_hand_tool.title=გადასაადგილებელი მაჩვენებლის გამოყენება -cursor_hand_tool_label=გადასაადგილებელი - -scroll_vertical.title=გვერდების შვეულად ჩვენება -scroll_vertical_label=შვეული გადაადგილება -scroll_horizontal.title=გვერდების თარაზულად ჩვენება -scroll_horizontal_label=განივი გადაადგილება -scroll_wrapped.title=გვერდების ცხრილურად ჩვენება -scroll_wrapped_label=ცხრილური გადაადგილება - -spread_none.title=ორ გვერდზე გაშლის გარეშე -spread_none_label=ცალგვერდიანი ჩვენება -spread_odd.title=ორ გვერდზე გაშლა, კენტი გვერდიდან დაწყებული -spread_odd_label=ორ გვერდზე კენტიდან -spread_even.title=ორ გვერდზე გაშლა, ლუწი გვერდიდან დაწყებული -spread_even_label=ორ გვერდზე ლუწიდან - -# Document properties dialog box -document_properties.title=დოკუმენტის შესახებ… -document_properties_label=დოკუმენტის შესახებ… -document_properties_file_name=ფაილის სახელი: -document_properties_file_size=ფაილის მოცულობა: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} კბ ({{size_b}} ბაიტი) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} მბ ({{size_b}} ბაიტი) -document_properties_title=სათაური: -document_properties_author=შემდგენი: -document_properties_subject=თემა: -document_properties_keywords=საკვანძო სიტყვები: -document_properties_creation_date=შექმნის თარიღი: -document_properties_modification_date=ჩასწორების თარიღი: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=შემქმნელი: -document_properties_producer=PDF-შემქმნელი: -document_properties_version=PDF-ვერსია: -document_properties_page_count=გვერდების რაოდენობა: -document_properties_page_size=გვერდის ზომა: -document_properties_page_size_unit_inches=დუიმი -document_properties_page_size_unit_millimeters=მმ -document_properties_page_size_orientation_portrait=შვეულად -document_properties_page_size_orientation_landscape=თარაზულად -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=სწრაფი შეთვალიერება: -document_properties_linearized_yes=დიახ -document_properties_linearized_no=არა -document_properties_close=დახურვა - -print_progress_message=დოკუმენტი მზადდება ამოსაბეჭდად… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=გაუქმება - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=გვერდითა ზოლის გამოჩენა/დამალვა -toggle_sidebar_notification.title=გვერდითა ზოლის ჩართვა/გამორთვა (დოკუმენტი შეიცავს სარჩევს/დანართს) -toggle_sidebar_label=გვერდითა ზოლის გამოჩენა/დამალვა -document_outline.title=დოკუმენტის სარჩევის ჩვენება (ორჯერ დაწკაპებით ყველა ელემენტის ჩამოშლა/აკეცვა) -document_outline_label=დოკუმენტის სარჩევი -attachments.title=დანართების ჩვენება -attachments_label=დანართები -thumbs.title=შეთვალიერება -thumbs_label=ესკიზები -findbar.title=პოვნა დოკუმენტში -findbar_label=ძიება - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=გვერდი {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=გვერდი {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=გვერდის შეთვალიერება {{page}} - -# Find panel button title and messages -find_input.title=ძიება -find_input.placeholder=პოვნა დოკუმენტში… -find_previous.title=ფრაზის წინა კონტექსტის პოვნა -find_previous_label=წინა -find_next.title=ფრაზის შემდეგი კონტექსტის პოვნა -find_next_label=შემდეგი -find_highlight=ყველას მონიშვნა -find_match_case_label=ემთხვევა მთავრული -find_entire_word_label=მთლიანი სიტყვები -find_reached_top=მიღწეულია დოკუმენტის დასაწყისი, გრძელდება ბოლოდან -find_reached_bottom=მიღწეულია დოკუმენტის ბოლო, გრძელდება დასაწყისიდან -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} / {{total}} თანხვედრიდან -find_match_count[two]={{current}} / {{total}} თანხვედრიდან -find_match_count[few]={{current}} / {{total}} თანხვედრიდან -find_match_count[many]={{current}} / {{total}} თანხვედრიდან -find_match_count[other]={{current}} / {{total}} თანხვედრიდან -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}}-ზე მეტი თანხვედრა -find_match_count_limit[one]={{limit}}-ზე მეტი თანხვედრა -find_match_count_limit[two]={{limit}}-ზე მეტი თანხვედრა -find_match_count_limit[few]={{limit}}-ზე მეტი თანხვედრა -find_match_count_limit[many]={{limit}}-ზე მეტი თანხვედრა -find_match_count_limit[other]={{limit}}-ზე მეტი თანხვედრა -find_not_found=ფრაზა ვერ მოიძებნა - -# Error panel labels -error_more_info=ვრცლად -error_less_info=შემოკლებულად -error_close=დახურვა -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=შეტყობინება: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=სტეკი: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ფაილი: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=ხაზი: {{line}} -rendering_error=შეცდომა, გვერდის ჩვენებისას. - -# Predefined zoom values -page_scale_width=გვერდის სიგანეზე -page_scale_fit=მთლიანი გვერდი -page_scale_auto=ავტომატური -page_scale_actual=საწყისი ზომა -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=შეცდომა -loading_error=შეცდომა, PDF-ფაილის ჩატვირთვისას. -invalid_file_error=არამართებული ან დაზიანებული PDF-ფაილი. -missing_file_error=ნაკლული PDF-ფაილი. -unexpected_response_error=სერვერის მოულოდნელი პასუხი. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} შენიშვნა] -password_label=შეიყვანეთ პაროლი PDF-ფაილის გასახსნელად. -password_invalid=არასწორი პაროლი. გთხოვთ, სცადოთ ხელახლა. -password_ok=კარგი -password_cancel=გაუქმება - -printing_not_supported=გაფრთხილება: ამობეჭდვა ამ ბრაუზერში არაა სრულად მხარდაჭერილი. -printing_not_ready=გაფრთხილება: PDF სრულად ჩატვირთული არაა, ამობეჭდვის დასაწყებად. -web_fonts_disabled=ვებშრიფტები გამორთულია: ჩაშენებული PDF-შრიფტების გამოყენება ვერ ხერხდება. -document_colors_not_allowed=PDF-დოკუმენტებს არ აქვს საკუთარი ფერების გამოყენების ნებართვა: ბრაუზერში გამორთულია „გვერდებისთვის საკუთარი ფერების გამოყენების უფლება“. diff --git a/cookbook/static/pdfjs/locale/kab/viewer.properties b/cookbook/static/pdfjs/locale/kab/viewer.properties deleted file mode 100644 index e3d0dc4b1..000000000 --- a/cookbook/static/pdfjs/locale/kab/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Asebter azewwar -previous_label=Azewwar -next.title=Asebter d-iteddun -next_label=Ddu ɣer zdat - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Asebter -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=ɣef {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} n {{pagesCount}}) - -zoom_out.title=Semẓi -zoom_out_label=Semẓi -zoom_in.title=Semɣeṛ -zoom_in_label=Semɣeṛ -zoom.title=Semɣeṛ/Semẓi -presentation_mode.title=Uɣal ɣer Uskar Tihawt -presentation_mode_label=Askar Tihawt -open_file.title=Ldi Afaylu -open_file_label=Ldi -print.title=Siggez -print_label=Siggez -download.title=Sider -download_label=Azdam -bookmark.title=Timeẓri tamirant (nɣel neɣ ldi ɣef usfaylu amaynut) -bookmark_label=Askan amiran - -# Secondary toolbar and context menu -tools.title=Ifecka -tools_label=Ifecka -first_page.title=Ddu ɣer usebter amezwaru -first_page.label=Ddu ɣer usebter amezwaru -first_page_label=Ddu ɣer usebter amezwaru -last_page.title=Ddu ɣer usebter aneggaru -last_page.label=Ddu ɣer usebter aneggaru -last_page_label=Ddu ɣer usebter aneggaru -page_rotate_cw.title=Tuzzya tusrigt -page_rotate_cw.label=Tuzzya tusrigt -page_rotate_cw_label=Tuzzya tusrigt -page_rotate_ccw.title=Tuzzya amgal-usrig -page_rotate_ccw.label=Tuzzya amgal-usrig -page_rotate_ccw_label=Tuzzya amgal-usrig - -cursor_text_select_tool.title=Rmed afecku n tefrant n uḍris -cursor_text_select_tool_label=Afecku n tefrant n uḍris -cursor_hand_tool.title=Rmed afecku afus -cursor_hand_tool_label=Afecku afus - -scroll_vertical.title=Seqdec adrurem ubdid -scroll_vertical_label=Adrurem ubdid -scroll_horizontal.title=Seqdec adrurem aglawan -scroll_horizontal_label=Adrurem aglawan -scroll_wrapped.title=Seqdec adrurem yuẓen -scroll_wrapped_label=Adrurem yuẓen - -spread_none.title=Ur sedday ara isiɣzaf n usebter -spread_none_label=Ulac isiɣzaf -spread_odd.title=Seddu isiɣzaf n usebter ibeddun s yisebtar irayuganen -spread_odd_label=Isiɣzaf irayuganen -spread_even.title=Seddu isiɣzaf n usebter ibeddun s yisebtar iyuganen -spread_even_label=Isiɣzaf iyuganen - -# Document properties dialog box -document_properties.title=Taɣaṛa n isemli… -document_properties_label=Taɣaṛa n isemli… -document_properties_file_name=Isem n ufaylu: -document_properties_file_size=Teɣzi n ufaylu: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KAṬ ({{size_b}} ibiten) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MAṬ ({{size_b}} iṭamḍanen) -document_properties_title=Azwel: -document_properties_author=Ameskar: -document_properties_subject=Amgay: -document_properties_keywords=Awalen n tsaruţ -document_properties_creation_date=Azemz n tmerna: -document_properties_modification_date=Azemz n usnifel: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Yerna-t: -document_properties_producer=Afecku n uselket PDF: -document_properties_version=Lqem PDF: -document_properties_page_count=Amḍan n isebtar: -document_properties_page_size=Tuγzi n usebter: -document_properties_page_size_unit_inches=deg -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=s teɣzi -document_properties_page_size_orientation_landscape=s tehri -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Asekkil -document_properties_page_size_name_legal=Usḍif -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Taskant Web taruradt: -document_properties_linearized_yes=Ih -document_properties_linearized_no=Ala -document_properties_close=Mdel - -print_progress_message=Aheggi i usiggez n isemli… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Sefsex - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Sken/Fer agalis adisan -toggle_sidebar_notification.title=Ffer/Sken agalis adisan (isemli yegber aɣawas/imeddayen) -toggle_sidebar_label=Sken/Fer agalis adisan -document_outline.title=Sken isemli (Senned snat tikal i wesemɣer/Afneẓ n iferdisen meṛṛa) -document_outline_label=Isɣalen n isebtar -attachments.title=Sken ticeqqufin yeddan -attachments_label=Ticeqqufin yeddan -thumbs.title=Sken tanfult. -thumbs_label=Tinfulin -findbar.title=Nadi deg isemli -findbar_label=Nadi - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Asebter {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Asebter {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Tanfult n usebter {{page}} - -# Find panel button title and messages -find_input.title=Nadi -find_input.placeholder=Nadi deg isemli… -find_previous.title=Aff-d tamseḍriwt n twinest n deffir -find_previous_label=Azewwar -find_next.title=Aff-d timseḍriwt n twinest d-iteddun -find_next_label=Ddu ɣer zdat -find_highlight=Err izirig imaṛṛa -find_match_case_label=Qadeṛ amasal n isekkilen -find_entire_word_label=Awalen iččuranen -find_reached_top=Yabbeḍ s afella n usebter, tuɣalin s wadda -find_reached_bottom=Tebḍeḍ s adda n usebter, tuɣalin s afella -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} seg {{total}} n tmeɣṛuḍin -find_match_count[two]={{current}} seg {{total}} n tmeɣṛuḍin -find_match_count[few]={{current}} seg {{total}} n tmeɣṛuḍin -find_match_count[many]={{current}} seg {{total}} n tmeɣṛuḍin -find_match_count[other]={{current}} seg {{total}} n tmeɣṛuḍin -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Ugar n {{limit}} n tmeɣṛuḍin -find_match_count_limit[one]=Ugar n {{limit}} n tmeɣṛuḍin -find_match_count_limit[two]=Ugar n {{limit}} n tmeɣṛuḍin -find_match_count_limit[few]=Ugar n {{limit}} n tmeɣṛuḍin -find_match_count_limit[many]=Ugar n {{limit}} n tmeɣṛuḍin -find_match_count_limit[other]=Ugar n {{limit}} n tmeɣṛuḍin -find_not_found=Ulac tawinest - -# Error panel labels -error_more_info=Ugar n telɣut -error_less_info=Drus n isalen -error_close=Mdel -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Izen: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Tanebdant: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Afaylu: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Izirig: {{line}} -rendering_error=Teḍra-d tuccḍa deg uskan n usebter. - -# Predefined zoom values -page_scale_width=Tehri n usebter -page_scale_fit=Asebter imaṛṛa -page_scale_auto=Asemɣeṛ/Asemẓi awurman -page_scale_actual=Teɣzi tilawt -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Teḍra-d tuccḍa deg alluy n PDF: -invalid_file_error=Afaylu PDF arameɣtu neɣ yexṣeṛ. -missing_file_error=Ulac afaylu PDF. -unexpected_response_error=Aqeddac yerra-d yir tiririt ur nettwaṛǧi ara. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Tabzimt {{type}}] -password_label=Sekcem awal uffir akken ad ldiḍ afaylu-yagi PDF -password_invalid=Awal uffir mačči d ameɣtu, Ɛreḍ tikelt-nniḍen. -password_ok=IH -password_cancel=Sefsex - -printing_not_supported=Ɣuṛ-k: Asiggez ur ittusefrak ara yakan imaṛṛa deg iminig-a. -printing_not_ready=Ɣuṛ-k: Afaylu PDF ur d-yuli ara imeṛṛa akken ad ittusiggez. -web_fonts_disabled=Tisefsiyin web ttwassensent; D awezɣi useqdec n tsefsiyin yettwarnan ɣer PDF. -document_colors_not_allowed=Isemliyen PDF ur zmiren ara ad sqedcen initen-nsen: 'Sireg isebtar akken ad fernen initen-nsen' ur yermid ara deg iminig. diff --git a/cookbook/static/pdfjs/locale/kk/viewer.properties b/cookbook/static/pdfjs/locale/kk/viewer.properties deleted file mode 100644 index 389b854b5..000000000 --- a/cookbook/static/pdfjs/locale/kk/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Алдыңғы парақ -previous_label=Алдыңғысы -next.title=Келесі парақ -next_label=Келесі - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Парақ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} ішінен -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=(парақ {{pageNumber}}, {{pagesCount}} ішінен) - -zoom_out.title=Кішірейту -zoom_out_label=Кішірейту -zoom_in.title=Үлкейту -zoom_in_label=Үлкейту -zoom.title=Масштаб -presentation_mode.title=Презентация режиміне ауысу -presentation_mode_label=Презентация режимі -open_file.title=Файлды ашу -open_file_label=Ашу -print.title=Баспаға шығару -print_label=Баспаға шығару -download.title=Жүктеп алу -download_label=Жүктеп алу -bookmark.title=Ағымдағы көрініс (көшіру не жаңа терезеде ашу) -bookmark_label=Ағымдағы көрініс - -# Secondary toolbar and context menu -tools.title=Құралдар -tools_label=Құралдар -first_page.title=Алғашқы параққа өту -first_page.label=Алғашқы параққа өту -first_page_label=Алғашқы параққа өту -last_page.title=Соңғы параққа өту -last_page.label=Соңғы параққа өту -last_page_label=Соңғы параққа өту -page_rotate_cw.title=Сағат тілі бағытымен айналдыру -page_rotate_cw.label=Сағат тілі бағытымен бұру -page_rotate_cw_label=Сағат тілі бағытымен бұру -page_rotate_ccw.title=Сағат тілі бағытына қарсы бұру -page_rotate_ccw.label=Сағат тілі бағытына қарсы бұру -page_rotate_ccw_label=Сағат тілі бағытына қарсы бұру - -cursor_text_select_tool.title=Мәтінді таңдау құралын іске қосу -cursor_text_select_tool_label=Мәтінді таңдау құралы -cursor_hand_tool.title=Қол құралын іске қосу -cursor_hand_tool_label=Қол құралы - -scroll_vertical.title=Вертикалды айналдыруды қолдану -scroll_vertical_label=Вертикалды айналдыру -scroll_horizontal.title=Горизонталды айналдыруды қолдану -scroll_horizontal_label=Горизонталды айналдыру -scroll_wrapped.title=Масштабталатын айналдыруды қолдану -scroll_wrapped_label=Масштабталатын айналдыру - -spread_none.title=Жазық беттер режимін қолданбау -spread_none_label=Жазық беттер режимсіз -spread_odd.title=Жазық беттер тақ нөмірлі беттерден басталады -spread_odd_label=Тақ нөмірлі беттер сол жақтан -spread_even.title=Жазық беттер жұп нөмірлі беттерден басталады -spread_even_label=Жұп нөмірлі беттер сол жақтан - -# Document properties dialog box -document_properties.title=Құжат қасиеттері… -document_properties_label=Құжат қасиеттері… -document_properties_file_name=Файл аты: -document_properties_file_size=Файл өлшемі: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} КБ ({{size_b}} байт) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} МБ ({{size_b}} байт) -document_properties_title=Тақырыбы: -document_properties_author=Авторы: -document_properties_subject=Тақырыбы: -document_properties_keywords=Кілт сөздер: -document_properties_creation_date=Жасалған күні: -document_properties_modification_date=Түзету күні: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Жасаған: -document_properties_producer=PDF өндірген: -document_properties_version=PDF нұсқасы: -document_properties_page_count=Беттер саны: -document_properties_page_size=Бет өлшемі: -document_properties_page_size_unit_inches=дюйм -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=тік -document_properties_page_size_orientation_landscape=жатық -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Жылдам Web көрінісі: -document_properties_linearized_yes=Иә -document_properties_linearized_no=Жоқ -document_properties_close=Жабу - -print_progress_message=Құжатты баспаға шығару үшін дайындау… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Бас тарту - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Бүйір панелін көрсету/жасыру -toggle_sidebar_notification.title=Бүйір панелін көрсету/жасыру (құжатта құрылымы/салынымдар бар) -toggle_sidebar_label=Бүйір панелін көрсету/жасыру -document_outline.title=Құжат құрылымын көрсету (барлық нәрселерді жазық қылу/жинау үшін қос шерту керек) -document_outline_label=Құжат құрамасы -attachments.title=Салынымдарды көрсету -attachments_label=Салынымдар -thumbs.title=Кіші көріністерді көрсету -thumbs_label=Кіші көріністер -findbar.title=Құжаттан табу -findbar_label=Табу - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Бет {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} парағы -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} парағы үшін кіші көрінісі - -# Find panel button title and messages -find_input.title=Табу -find_input.placeholder=Құжаттан табу… -find_previous.title=Осы сөздердің мәтіннен алдыңғы кездесуін табу -find_previous_label=Алдыңғысы -find_next.title=Осы сөздердің мәтіннен келесі кездесуін табу -find_next_label=Келесі -find_highlight=Барлығын түспен ерекшелеу -find_match_case_label=Регистрді ескеру -find_entire_word_label=Сөздер толығымен -find_reached_top=Құжаттың басына жеттік, соңынан бастап жалғастырамыз -find_reached_bottom=Құжаттың соңына жеттік, басынан бастап жалғастырамыз -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} / {{total}} сәйкестік -find_match_count[two]={{current}} / {{total}} сәйкестік -find_match_count[few]={{current}} / {{total}} сәйкестік -find_match_count[many]={{current}} / {{total}} сәйкестік -find_match_count[other]={{current}} / {{total}} сәйкестік -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} сәйкестіктен көп -find_match_count_limit[one]={{limit}} сәйкестіктен көп -find_match_count_limit[two]={{limit}} сәйкестіктен көп -find_match_count_limit[few]={{limit}} сәйкестіктен көп -find_match_count_limit[many]={{limit}} сәйкестіктен көп -find_match_count_limit[other]={{limit}} сәйкестіктен көп -find_not_found=Сөз(дер) табылмады - -# Error panel labels -error_more_info=Көбірек ақпарат -error_less_info=Азырақ ақпарат -error_close=Жабу -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (жинақ: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Хабарлама: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стек: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Файл: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Жол: {{line}} -rendering_error=Парақты өңдеу кезінде қате кетті. - -# Predefined zoom values -page_scale_width=Парақ ені -page_scale_fit=Парақты сыйдыру -page_scale_auto=Автомасштабтау -page_scale_actual=Нақты өлшемі -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Қате -loading_error=PDF жүктеу кезінде қате кетті. -invalid_file_error=Зақымдалған немесе қате PDF файл. -missing_file_error=PDF файлы жоқ. -unexpected_response_error=Сервердің күтпеген жауабы. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} аңдатпасы] -password_label=Бұл PDF файлын ашу үшін парольді енгізіңіз. -password_invalid=Пароль дұрыс емес. Қайталап көріңіз. -password_ok=ОК -password_cancel=Бас тарту - -printing_not_supported=Ескерту: Баспаға шығаруды бұл браузер толығымен қолдамайды. -printing_not_ready=Ескерту: Баспаға шығару үшін, бұл PDF толығымен жүктеліп алынбады. -web_fonts_disabled=Веб қаріптері сөндірілген: құрамына енгізілген PDF қаріптерін қолдану мүмкін емес. -document_colors_not_allowed=PDF құжаттарына өздік түстерді қолдану рұқсат етілмеген: бұл браузерде 'Веб-сайттарға өздерінің түстерін қолдануға рұқсат беру' мүмкіндігі сөндірулі тұр. diff --git a/cookbook/static/pdfjs/locale/km/viewer.properties b/cookbook/static/pdfjs/locale/km/viewer.properties deleted file mode 100644 index e5403cc16..000000000 --- a/cookbook/static/pdfjs/locale/km/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=ទំព័រ​មុន -previous_label=មុន -next.title=ទំព័រ​បន្ទាប់ -next_label=បន្ទាប់ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ទំព័រ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=នៃ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} នៃ {{pagesCount}}) - -zoom_out.title=​បង្រួម -zoom_out_label=​បង្រួម -zoom_in.title=​ពង្រីក -zoom_in_label=​ពង្រីក -zoom.title=ពង្រីក -presentation_mode.title=ប្ដូរ​ទៅ​របៀប​បទ​បង្ហាញ -presentation_mode_label=របៀប​បទ​បង្ហាញ -open_file.title=បើក​ឯកសារ -open_file_label=បើក -print.title=បោះពុម្ព -print_label=បោះពុម្ព -download.title=ទាញ​យក -download_label=ទាញ​យក -bookmark.title=ទិដ្ឋភាព​បច្ចុប្បន្ន (ចម្លង ឬ​បើក​នៅ​ក្នុង​បង្អួច​ថ្មី) -bookmark_label=ទិដ្ឋភាព​បច្ចុប្បន្ន - -# Secondary toolbar and context menu -tools.title=ឧបករណ៍ -tools_label=ឧបករណ៍ -first_page.title=ទៅកាន់​ទំព័រ​ដំបូង​ -first_page.label=ទៅកាន់​ទំព័រ​ដំបូង​ -first_page_label=ទៅកាន់​ទំព័រ​ដំបូង​ -last_page.title=ទៅកាន់​ទំព័រ​ចុងក្រោយ​ -last_page.label=ទៅកាន់​ទំព័រ​ចុងក្រោយ​ -last_page_label=ទៅកាន់​ទំព័រ​ចុងក្រោយ -page_rotate_cw.title=បង្វិល​ស្រប​ទ្រនិច​នាឡិកា -page_rotate_cw.label=បង្វិល​ស្រប​ទ្រនិច​នាឡិកា -page_rotate_cw_label=បង្វិល​ស្រប​ទ្រនិច​នាឡិកា -page_rotate_ccw.title=បង្វិល​ច្រាស​ទ្រនិច​នាឡិកា​​ -page_rotate_ccw.label=បង្វិល​ច្រាស​ទ្រនិច​នាឡិកា​​ -page_rotate_ccw_label=បង្វិល​ច្រាស​ទ្រនិច​នាឡិកា​​ - -cursor_text_select_tool.title=បើក​ឧបករណ៍​ជ្រើស​អត្ថបទ -cursor_text_select_tool_label=ឧបករណ៍​ជ្រើស​អត្ថបទ -cursor_hand_tool.title=បើក​ឧបករណ៍​ដៃ -cursor_hand_tool_label=ឧបករណ៍​ដៃ - -# Document properties dialog box -document_properties.title=លក្ខណ​សម្បត្តិ​ឯកសារ… -document_properties_label=លក្ខណ​សម្បត្តិ​ឯកសារ… -document_properties_file_name=ឈ្មោះ​ឯកសារ៖ -document_properties_file_size=ទំហំ​ឯកសារ៖ -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} បៃ) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} បៃ) -document_properties_title=ចំណងជើង៖ -document_properties_author=អ្នក​និពន្ធ៖ -document_properties_subject=ប្រធានបទ៖ -document_properties_keywords=ពាក្យ​គន្លឹះ៖ -document_properties_creation_date=កាលបរិច្ឆេទ​បង្កើត៖ -document_properties_modification_date=កាលបរិច្ឆេទ​កែប្រែ៖ -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=អ្នក​បង្កើត៖ -document_properties_producer=កម្មវិធី​បង្កើត PDF ៖ -document_properties_version=កំណែ PDF ៖ -document_properties_page_count=ចំនួន​ទំព័រ៖ -document_properties_close=បិទ - -print_progress_message=កំពុង​រៀបចំ​ឯកសារ​សម្រាប់​បោះពុម្ព… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=បោះបង់ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=បិទ/បើក​គ្រាប់​រំកិល -toggle_sidebar_notification.title=បិទ/បើក​របារ​ចំហៀង (ឯកសារ​មាន​មាតិកា​នៅ​ក្រៅ/attachments) -toggle_sidebar_label=បិទ/បើក​គ្រាប់​រំកិល -document_outline.title=បង្ហាញ​គ្រោង​ឯកសារ (ចុច​ទ្វេ​ដង​ដើម្បី​ពង្រីក/បង្រួម​ធាតុ​ទាំងអស់) -document_outline_label=គ្រោង​ឯកសារ -attachments.title=បង្ហាញ​ឯកសារ​ភ្ជាប់ -attachments_label=ឯកសារ​ភ្ជាប់ -thumbs.title=បង្ហាញ​រូបភាព​តូចៗ -thumbs_label=រួបភាព​តូចៗ -findbar.title=រក​នៅ​ក្នុង​ឯកសារ -findbar_label=រក - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=ទំព័រ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=រូបភាព​តូច​របស់​ទំព័រ {{page}} - -# Find panel button title and messages -find_input.title=រក -find_input.placeholder=រក​នៅ​ក្នុង​ឯកសារ... -find_previous.title=រក​ពាក្យ ឬ​ឃ្លា​ដែល​បាន​ជួប​មុន -find_previous_label=មុន -find_next.title=រក​ពាក្យ ឬ​ឃ្លា​ដែល​បាន​ជួប​បន្ទាប់ -find_next_label=បន្ទាប់ -find_highlight=បន្លិច​ទាំងអស់ -find_match_case_label=ករណី​ដំណូច -find_reached_top=បាន​បន្ត​ពី​ខាង​ក្រោម ទៅ​ដល់​ខាង​​លើ​នៃ​ឯកសារ -find_reached_bottom=បាន​បន្ត​ពី​ខាងលើ ទៅដល់​ចុង​​នៃ​ឯកសារ -find_not_found=រក​មិន​ឃើញ​ពាក្យ ឬ​ឃ្លា - -# Error panel labels -error_more_info=ព័ត៌មាន​បន្ថែម -error_less_info=ព័ត៌មាន​តិចតួច -error_close=បិទ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=សារ ៖ {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=ជង់ ៖ {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ឯកសារ ៖ {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=ជួរ ៖ {{line}} -rendering_error=មាន​កំហុស​បាន​កើតឡើង​ពេល​បង្ហាញ​ទំព័រ ។ - -# Predefined zoom values -page_scale_width=ទទឹង​ទំព័រ -page_scale_fit=សម​ទំព័រ -page_scale_auto=ពង្រីក​ស្វ័យប្រវត្តិ -page_scale_actual=ទំហំ​ជាក់ស្ដែង -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=កំហុស -loading_error=មាន​កំហុស​បាន​កើតឡើង​ពេល​កំពុង​ផ្ទុក PDF ។ -invalid_file_error=ឯកសារ PDF ខូច ឬ​មិន​ត្រឹមត្រូវ ។ -missing_file_error=បាត់​ឯកសារ PDF -unexpected_response_error=ការ​ឆ្លើយ​តម​ម៉ាស៊ីន​មេ​ដែល​មិន​បាន​រំពឹង។ - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} ចំណារ​ពន្យល់] -password_label=បញ្ចូល​ពាក្យសម្ងាត់​ដើម្បី​បើក​ឯកសារ PDF នេះ។ -password_invalid=ពាក្យសម្ងាត់​មិន​ត្រឹមត្រូវ។ សូម​ព្យាយាម​ម្ដងទៀត។ -password_ok=យល់​ព្រម -password_cancel=បោះបង់ - -printing_not_supported=ការ​ព្រមាន ៖ កា​រ​បោះពុម្ព​មិន​ត្រូវ​បាន​គាំទ្រ​ពេញលេញ​ដោយ​កម្មវិធី​រុករក​នេះ​ទេ ។ -printing_not_ready=ព្រមាន៖ PDF មិន​ត្រូវ​បាន​ផ្ទុក​ទាំងស្រុង​ដើម្បី​បោះពុម្ព​ទេ។ -web_fonts_disabled=បាន​បិទ​ពុម្ពអក្សរ​បណ្ដាញ ៖ មិន​អាច​ប្រើ​ពុម្ពអក្សរ PDF ដែល​បាន​បង្កប់​បាន​ទេ ។ -document_colors_not_allowed=ឯកសារ PDF មិន​ត្រូវ​បាន​អនុញ្ញាត​ឲ្យ​ប្រើ​ពណ៌​ផ្ទាល់​របស់​វា​ទេ៖ 'អនុញ្ញាត​​ឲ្យ​ទំព័រ​ជ្រើស​ពណ៌​ផ្ទាល់​ខ្លួន' ត្រូវ​បាន​ធ្វើ​ឲ្យ​អសកម្ម​ក្នុង​​កម្មវិធី​រុករក។ diff --git a/cookbook/static/pdfjs/locale/kn/viewer.properties b/cookbook/static/pdfjs/locale/kn/viewer.properties deleted file mode 100644 index cf3d0041c..000000000 --- a/cookbook/static/pdfjs/locale/kn/viewer.properties +++ /dev/null @@ -1,193 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=ಹಿಂದಿನ ಪುಟ -previous_label=ಹಿಂದಿನ -next.title=ಮುಂದಿನ ಪುಟ -next_label=ಮುಂದಿನ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ಪುಟ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} ರಲ್ಲಿ -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} ರಲ್ಲಿ {{pageNumber}}) - -zoom_out.title=ಕಿರಿದಾಗಿಸು -zoom_out_label=ಕಿರಿದಾಗಿಸಿ -zoom_in.title=ಹಿರಿದಾಗಿಸು -zoom_in_label=ಹಿರಿದಾಗಿಸಿ -zoom.title=ಗಾತ್ರಬದಲಿಸು -presentation_mode.title=ಪ್ರಸ್ತುತಿ (ಪ್ರಸೆಂಟೇಶನ್) ಕ್ರಮಕ್ಕೆ ಬದಲಾಯಿಸು -presentation_mode_label=ಪ್ರಸ್ತುತಿ (ಪ್ರಸೆಂಟೇಶನ್) ಕ್ರಮ -open_file.title=ಕಡತವನ್ನು ತೆರೆ -open_file_label=ತೆರೆಯಿರಿ -print.title=ಮುದ್ರಿಸು -print_label=ಮುದ್ರಿಸಿ -download.title=ಇಳಿಸು -download_label=ಇಳಿಸಿಕೊಳ್ಳಿ -bookmark.title=ಪ್ರಸಕ್ತ ನೋಟ (ಪ್ರತಿ ಮಾಡು ಅಥವ ಹೊಸ ಕಿಟಕಿಯಲ್ಲಿ ತೆರೆ) -bookmark_label=ಪ್ರಸಕ್ತ ನೋಟ - -# Secondary toolbar and context menu -tools.title=ಉಪಕರಣಗಳು -tools_label=ಉಪಕರಣಗಳು -first_page.title=ಮೊದಲ ಪುಟಕ್ಕೆ ತೆರಳು -first_page.label=ಮೊದಲ ಪುಟಕ್ಕೆ ತೆರಳು -first_page_label=ಮೊದಲ ಪುಟಕ್ಕೆ ತೆರಳು -last_page.title=ಕೊನೆಯ ಪುಟಕ್ಕೆ ತೆರಳು -last_page.label=ಕೊನೆಯ ಪುಟಕ್ಕೆ ತೆರಳು -last_page_label=ಕೊನೆಯ ಪುಟಕ್ಕೆ ತೆರಳು -page_rotate_cw.title=ಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು -page_rotate_cw.label=ಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು -page_rotate_cw_label=ಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು -page_rotate_ccw.title=ಅಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು -page_rotate_ccw.label=ಅಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು -page_rotate_ccw_label=ಅಪ್ರದಕ್ಷಿಣೆಯಲ್ಲಿ ತಿರುಗಿಸು - -cursor_text_select_tool.title=ಪಠ್ಯ ಆಯ್ಕೆ ಉಪಕರಣವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ -cursor_text_select_tool_label=ಪಠ್ಯ ಆಯ್ಕೆಯ ಉಪಕರಣ -cursor_hand_tool.title=ಕೈ ಉಪಕರಣವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ -cursor_hand_tool_label=ಕೈ ಉಪಕರಣ - - - -# Document properties dialog box -document_properties.title=ಡಾಕ್ಯುಮೆಂಟ್‌ ಗುಣಗಳು... -document_properties_label=ಡಾಕ್ಯುಮೆಂಟ್‌ ಗುಣಗಳು... -document_properties_file_name=ಕಡತದ ಹೆಸರು: -document_properties_file_size=ಕಡತದ ಗಾತ್ರ: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} ಬೈಟ್‍ಗಳು) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} ಬೈಟ್‍ಗಳು) -document_properties_title=ಶೀರ್ಷಿಕೆ: -document_properties_author=ಕರ್ತೃ: -document_properties_subject=ವಿಷಯ: -document_properties_keywords=ಮುಖ್ಯಪದಗಳು: -document_properties_creation_date=ರಚಿಸಿದ ದಿನಾಂಕ: -document_properties_modification_date=ಮಾರ್ಪಡಿಸಲಾದ ದಿನಾಂಕ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=ರಚಿಸಿದವರು: -document_properties_producer=PDF ಉತ್ಪಾದಕ: -document_properties_version=PDF ಆವೃತ್ತಿ: -document_properties_page_count=ಪುಟದ ಎಣಿಕೆ: -document_properties_page_size_unit_inches=ಇದರಲ್ಲಿ -document_properties_page_size_orientation_portrait=ಭಾವಚಿತ್ರ -document_properties_page_size_orientation_landscape=ಪ್ರಕೃತಿ ಚಿತ್ರ -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_close=ಮುಚ್ಚು - -print_progress_message=ಮುದ್ರಿಸುವುದಕ್ಕಾಗಿ ದಸ್ತಾವೇಜನ್ನು ಸಿದ್ಧಗೊಳಿಸಲಾಗುತ್ತಿದೆ… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ರದ್ದು ಮಾಡು - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=ಬದಿಪಟ್ಟಿಯನ್ನು ಹೊರಳಿಸು -toggle_sidebar_label=ಬದಿಪಟ್ಟಿಯನ್ನು ಹೊರಳಿಸು -document_outline_label=ದಸ್ತಾವೇಜಿನ ಹೊರರೇಖೆ -attachments.title=ಲಗತ್ತುಗಳನ್ನು ತೋರಿಸು -attachments_label=ಲಗತ್ತುಗಳು -thumbs.title=ಚಿಕ್ಕಚಿತ್ರದಂತೆ ತೋರಿಸು -thumbs_label=ಚಿಕ್ಕಚಿತ್ರಗಳು -findbar.title=ದಸ್ತಾವೇಜಿನಲ್ಲಿ ಹುಡುಕು -findbar_label=ಹುಡುಕು - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=ಪುಟ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=ಪುಟವನ್ನು ಚಿಕ್ಕಚಿತ್ರದಂತೆ ತೋರಿಸು {{page}} - -# Find panel button title and messages -find_input.title=ಹುಡುಕು -find_input.placeholder=ದಸ್ತಾವೇಜಿನಲ್ಲಿ ಹುಡುಕು… -find_previous.title=ವಾಕ್ಯದ ಹಿಂದಿನ ಇರುವಿಕೆಯನ್ನು ಹುಡುಕು -find_previous_label=ಹಿಂದಿನ -find_next.title=ವಾಕ್ಯದ ಮುಂದಿನ ಇರುವಿಕೆಯನ್ನು ಹುಡುಕು -find_next_label=ಮುಂದಿನ -find_highlight=ಎಲ್ಲವನ್ನು ಹೈಲೈಟ್ ಮಾಡು -find_match_case_label=ಕೇಸನ್ನು ಹೊಂದಿಸು -find_reached_top=ದಸ್ತಾವೇಜಿನ ಮೇಲ್ಭಾಗವನ್ನು ತಲುಪಿದೆ, ಕೆಳಗಿನಿಂದ ಆರಂಭಿಸು -find_reached_bottom=ದಸ್ತಾವೇಜಿನ ಕೊನೆಯನ್ನು ತಲುಪಿದೆ, ಮೇಲಿನಿಂದ ಆರಂಭಿಸು -find_not_found=ವಾಕ್ಯವು ಕಂಡು ಬಂದಿಲ್ಲ - -# Error panel labels -error_more_info=ಹೆಚ್ಚಿನ ಮಾಹಿತಿ -error_less_info=ಕಡಿಮೆ ಮಾಹಿತಿ -error_close=ಮುಚ್ಚು -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=ಸಂದೇಶ: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=ರಾಶಿ: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ಕಡತ: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=ಸಾಲು: {{line}} -rendering_error=ಪುಟವನ್ನು ನಿರೂಪಿಸುವಾಗ ಒಂದು ದೋಷ ಎದುರಾಗಿದೆ. - -# Predefined zoom values -page_scale_width=ಪುಟದ ಅಗಲ -page_scale_fit=ಪುಟದ ಸರಿಹೊಂದಿಕೆ -page_scale_auto=ಸ್ವಯಂಚಾಲಿತ ಗಾತ್ರಬದಲಾವಣೆ -page_scale_actual=ನಿಜವಾದ ಗಾತ್ರ -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=ದೋಷ -loading_error=PDF ಅನ್ನು ಲೋಡ್ ಮಾಡುವಾಗ ಒಂದು ದೋಷ ಎದುರಾಗಿದೆ. -invalid_file_error=ಅಮಾನ್ಯವಾದ ಅಥವ ಹಾಳಾದ PDF ಕಡತ. -missing_file_error=PDF ಕಡತ ಇಲ್ಲ. -unexpected_response_error=ಅನಿರೀಕ್ಷಿತವಾದ ಪೂರೈಕೆಗಣಕದ ಪ್ರತಿಕ್ರಿಯೆ. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} ಟಿಪ್ಪಣಿ] -password_label=PDF ಅನ್ನು ತೆರೆಯಲು ಗುಪ್ತಪದವನ್ನು ನಮೂದಿಸಿ. -password_invalid=ಅಮಾನ್ಯವಾದ ಗುಪ್ತಪದ, ದಯವಿಟ್ಟು ಇನ್ನೊಮ್ಮೆ ಪ್ರಯತ್ನಿಸಿ. -password_ok=OK -password_cancel=ರದ್ದು ಮಾಡು - -printing_not_supported=ಎಚ್ಚರಿಕೆ: ಈ ಜಾಲವೀಕ್ಷಕದಲ್ಲಿ ಮುದ್ರಣಕ್ಕೆ ಸಂಪೂರ್ಣ ಬೆಂಬಲವಿಲ್ಲ. -printing_not_ready=ಎಚ್ಚರಿಕೆ: PDF ಕಡತವು ಮುದ್ರಿಸಲು ಸಂಪೂರ್ಣವಾಗಿ ಲೋಡ್ ಆಗಿಲ್ಲ. -web_fonts_disabled=ಜಾಲ ಅಕ್ಷರಶೈಲಿಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ: ಅಡಕಗೊಳಿಸಿದ PDF ಅಕ್ಷರಶೈಲಿಗಳನ್ನು ಬಳಸಲು ಸಾಧ್ಯವಾಗಿಲ್ಲ. -document_colors_not_allowed=PDF ದಸ್ತಾವೇಜುಗಳು ತಮ್ಮದೆ ಆದ ಬಣ್ಣಗಳನ್ನು ಬಳಸಲು ಅನುಮತಿ ಇರುವುದಿಲ್ಲ: 'ಪುಟಗಳು ತಮ್ಮದೆ ಆದ ಬಣ್ಣವನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಅನುಮತಿಸು' ಅನ್ನು ಜಾಲವೀಕ್ಷಕದಲ್ಲಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿರುತ್ತದೆ. diff --git a/cookbook/static/pdfjs/locale/ko/viewer.properties b/cookbook/static/pdfjs/locale/ko/viewer.properties deleted file mode 100644 index ef688a956..000000000 --- a/cookbook/static/pdfjs/locale/ko/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=이전 페이지 -previous_label=이전 -next.title=다음 페이지 -next_label=다음 - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=페이지 -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=축소 -zoom_out_label=축소 -zoom_in.title=확대 -zoom_in_label=확대 -zoom.title=확대/축소 -presentation_mode.title=프레젠테이션 모드로 전환 -presentation_mode_label=프레젠테이션 모드 -open_file.title=파일 열기 -open_file_label=열기 -print.title=인쇄 -print_label=인쇄 -download.title=다운로드 -download_label=다운로드 -bookmark.title=현재 뷰 (복사하거나 새 창에 열기) -bookmark_label=현재 뷰 - -# Secondary toolbar and context menu -tools.title=도구 -tools_label=도구 -first_page.title=첫 페이지로 이동 -first_page.label=첫 페이지로 이동 -first_page_label=첫 페이지로 이동 -last_page.title=마지막 페이지로 이동 -last_page.label=마지막 페이지로 이동 -last_page_label=마지막 페이지로 이동 -page_rotate_cw.title=시계방향으로 회전 -page_rotate_cw.label=시계방향으로 회전 -page_rotate_cw_label=시계방향으로 회전 -page_rotate_ccw.title=시계 반대방향으로 회전 -page_rotate_ccw.label=시계 반대방향으로 회전 -page_rotate_ccw_label=시계 반대방향으로 회전 - -cursor_text_select_tool.title=텍스트 선택 도구 활성화 -cursor_text_select_tool_label=텍스트 선택 도구 -cursor_hand_tool.title=손 도구 활성화 -cursor_hand_tool_label=손 도구 - -scroll_vertical.title=세로 스크롤 사용 -scroll_vertical_label=세로 스크롤 -scroll_horizontal.title=가로 스크롤 사용 -scroll_horizontal_label=가로 스크롤 -scroll_wrapped.title=감싼 스크롤 사용 -scroll_wrapped_label=감싼 스크롤 - -spread_none.title=펼쳐진 페이지를 합치지 않음 -spread_none_label=펼쳐짐 없음 -spread_odd.title=홀수 페이지로 시작하게 펼쳐진 페이지 합침 -spread_odd_label=홀수 펼쳐짐 -spread_even.title=짝수 페이지로 시작하게 펼쳐진 페이지 합침 -spread_even_label=짝수 펼쳐짐 - -# Document properties dialog box -document_properties.title=문서 속성… -document_properties_label=문서 속성… -document_properties_file_name=파일 이름: -document_properties_file_size=파일 크기: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}}바이트) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}}바이트) -document_properties_title=제목: -document_properties_author=작성자: -document_properties_subject=주제: -document_properties_keywords=키워드: -document_properties_creation_date=작성 날짜: -document_properties_modification_date=수정 날짜: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=작성 프로그램: -document_properties_producer=PDF 변환 소프트웨어: -document_properties_version=PDF 버전: -document_properties_page_count=페이지 수: -document_properties_page_size=페이지 크기: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=세로 방향 -document_properties_page_size_orientation_landscape=가로 방향 -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=레터 -document_properties_page_size_name_legal=리걸 -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=빠른 웹 보기: -document_properties_linearized_yes=예 -document_properties_linearized_no=아니오 -document_properties_close=닫기 - -print_progress_message=인쇄 문서 준비 중… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=취소 - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=탐색창 표시/숨기기 -toggle_sidebar_notification.title=탐색창 표시/숨기기 (문서에 아웃라인/첨부파일 포함) -toggle_sidebar_label=탐색창 표시/숨기기 -document_outline.title=문서 아웃라인 보기(더블 클릭해서 모든 항목 펼치기/접기) -document_outline_label=문서 아웃라인 -attachments.title=첨부파일 보기 -attachments_label=첨부파일 -thumbs.title=미리보기 -thumbs_label=미리보기 -findbar.title=검색 -findbar_label=검색 - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}} 페이지 -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} 페이지 -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} 페이지 미리보기 - -# Find panel button title and messages -find_input.title=찾기 -find_input.placeholder=문서에서 찾기… -find_previous.title=지정 문자열에 일치하는 1개 부분을 검색 -find_previous_label=이전 -find_next.title=지정 문자열에 일치하는 다음 부분을 검색 -find_next_label=다음 -find_highlight=모두 강조 표시 -find_match_case_label=대/소문자 구분 -find_entire_word_label=단어 단위로 -find_reached_top=문서 처음까지 검색하고 끝으로 돌아와 검색했습니다. -find_reached_bottom=문서 끝까지 검색하고 앞으로 돌아와 검색했습니다. -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} 중 {{current}} 일치 -find_match_count[two]={{total}} 중 {{current}} 일치 -find_match_count[few]={{total}} 중 {{current}} 일치 -find_match_count[many]={{total}} 중 {{current}} 일치 -find_match_count[other]={{total}} 중 {{current}} 일치 -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} 이상 일치 -find_match_count_limit[one]={{limit}} 이상 일치 -find_match_count_limit[two]={{limit}} 이상 일치 -find_match_count_limit[few]={{limit}} 이상 일치 -find_match_count_limit[many]={{limit}} 이상 일치 -find_match_count_limit[other]={{limit}} 이상 일치 -find_not_found=검색 결과 없음 - -# Error panel labels -error_more_info=정보 더 보기 -error_less_info=정보 간단히 보기 -error_close=닫기 -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (빌드: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=메시지: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=스택: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=파일: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=줄 번호: {{line}} -rendering_error=페이지를 렌더링하는 동안 오류가 발생했습니다. - -# Predefined zoom values -page_scale_width=페이지 너비에 맞춤 -page_scale_fit=페이지에 맞춤 -page_scale_auto=자동 맞춤 -page_scale_actual=실제 크기에 맞춤 -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=오류 -loading_error=PDF를 로드하는 동안 오류가 발생했습니다. -invalid_file_error=잘못되었거나 손상된 PDF 파일. -missing_file_error=PDF 파일 없음. -unexpected_response_error=예상치 못한 서버 응답입니다. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} 주석] -password_label=이 PDF 파일을 열 수 있는 비밀번호를 입력하세요. -password_invalid=잘못된 비밀번호입니다. 다시 시도하세요. -password_ok=확인 -password_cancel=취소 - -printing_not_supported=경고: 이 브라우저는 인쇄를 완전히 지원하지 않습니다. -printing_not_ready=경고: 이 PDF를 인쇄를 할 수 있을 정도로 읽어들이지 못했습니다. -web_fonts_disabled=웹 폰트가 비활성화됨: 내장된 PDF 글꼴을 사용할 수 없습니다. -document_colors_not_allowed=PDF 문서의 자체 색상 허용 안됨: “페이지 자체 색상 허용”이 브라우저에서 비활성화 되어 있습니다. diff --git a/cookbook/static/pdfjs/locale/lij/viewer.properties b/cookbook/static/pdfjs/locale/lij/viewer.properties deleted file mode 100644 index 71a53062d..000000000 --- a/cookbook/static/pdfjs/locale/lij/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pagina primma -previous_label=Precedente -next.title=Pagina dòppo -next_label=Pròscima - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Diminoisci zoom -zoom_out_label=Diminoisci zoom -zoom_in.title=Aomenta zoom -zoom_in_label=Aomenta zoom -zoom.title=Zoom -presentation_mode.title=Vanni into mòddo de prezentaçion -presentation_mode_label=Mòddo de prezentaçion -open_file.title=Arvi file -open_file_label=Arvi -print.title=Stanpa -print_label=Stanpa -download.title=Descaregamento -download_label=Descaregamento -bookmark.title=Vixon corente (còpia ò arvi inte 'n neuvo barcon) -bookmark_label=Vixon corente - -# Secondary toolbar and context menu -tools.title=Atressi -tools_label=Atressi -first_page.title=Vanni a-a primma pagina -first_page.label=Vanni a-a primma pagina -first_page_label=Vanni a-a primma pagina -last_page.title=Vanni a l'urtima pagina -last_page.label=Vanni a l'urtima pagina -last_page_label=Vanni a l'urtima pagina -page_rotate_cw.title=Gia into verso oraio -page_rotate_cw.label=Gia in senso do releuio -page_rotate_cw_label=Gia into verso oraio -page_rotate_ccw.title=Gia into verso antioraio -page_rotate_ccw.label=Gia in senso do releuio a-a reversa -page_rotate_ccw_label=Gia into verso antioraio - -cursor_text_select_tool.title=Abilita strumento de seleçion do testo -cursor_text_select_tool_label=Strumento de seleçion do testo -cursor_hand_tool.title=Abilita strumento man -cursor_hand_tool_label=Strumento man - -scroll_vertical.title=Deuvia rebelamento verticale -scroll_vertical_label=Rebelamento verticale -scroll_horizontal.title=Deuvia rebelamento orizontâ -scroll_horizontal_label=Rebelamento orizontâ -scroll_wrapped.title=Deuvia rebelamento incapsolou -scroll_wrapped_label=Rebelamento incapsolou - -spread_none.title=No unite a-a difuxon de pagina -spread_none_label=No difuxon -spread_odd.title=Uniscite a-a difuxon de pagina co-o numero dèspa -spread_odd_label=Difuxon dèspa -spread_even.title=Uniscite a-a difuxon de pagina co-o numero pari -spread_even_label=Difuxon pari - -# Document properties dialog box -document_properties.title=Propietæ do documento… -document_properties_label=Propietæ do documento… -document_properties_file_name=Nomme schedaio: -document_properties_file_size=Dimenscion schedaio: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} byte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byte) -document_properties_title=Titolo: -document_properties_author=Aoto: -document_properties_subject=Ogetto: -document_properties_keywords=Paròlle ciave: -document_properties_creation_date=Dæta creaçion: -document_properties_modification_date=Dæta cangiamento: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Aotô originale: -document_properties_producer=Produtô PDF: -document_properties_version=Verscion PDF: -document_properties_page_count=Contezzo pagine: -document_properties_page_size=Dimenscion da pagina: -document_properties_page_size_unit_inches=dii gròsci -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=drito -document_properties_page_size_orientation_landscape=desteizo -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letia -document_properties_page_size_name_legal=Lezze -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista veloce do Web: -document_properties_linearized_yes=Sci -document_properties_linearized_no=No -document_properties_close=Særa - -print_progress_message=Praparo o documento pe-a stanpa… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Anulla - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Ativa/dizativa bara de scianco -toggle_sidebar_notification.title=Cangia bara de löo (o documento o contegne di alegæ) -toggle_sidebar_label=Ativa/dizativa bara de scianco -document_outline.title=Fanni vedde o contorno do documento (scicca doggio pe espande/ridue tutti i elementi) -document_outline_label=Contorno do documento -attachments.title=Fanni vedde alegæ -attachments_label=Alegæ -thumbs.title=Mostra miniatue -thumbs_label=Miniatue -findbar.title=Treuva into documento -findbar_label=Treuva - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatua da pagina {{page}} - -# Find panel button title and messages -find_input.title=Treuva -find_input.placeholder=Treuva into documento… -find_previous.title=Treuva a ripetiçion precedente do testo da çercâ -find_previous_label=Precedente -find_next.title=Treuva a ripetiçion dòppo do testo da çercâ -find_next_label=Segoente -find_highlight=Evidençia -find_match_case_label=Maioscole/minoscole -find_entire_word_label=Poula intrega -find_reached_top=Razonto a fin da pagina, continoa da l'iniçio -find_reached_bottom=Razonto l'iniçio da pagina, continoa da-a fin -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} corispondensa -find_match_count[two]={{current}} de {{total}} corispondense -find_match_count[few]={{current}} de {{total}} corispondense -find_match_count[many]={{current}} de {{total}} corispondense -find_match_count[other]={{current}} de {{total}} corispondense -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Ciù de {{limit}} corispondense -find_match_count_limit[one]=Ciù de {{limit}} corispondensa -find_match_count_limit[two]=Ciù de {{limit}} corispondense -find_match_count_limit[few]=Ciù de {{limit}} corispondense -find_match_count_limit[many]=Ciù de {{limit}} corispondense -find_match_count_limit[other]=Ciù de {{limit}} corispondense -find_not_found=Testo no trovou - -# Error panel labels -error_more_info=Ciù informaçioin -error_less_info=Meno informaçioin -error_close=Særa -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mesaggio: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Schedaio: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linia: {{line}} -rendering_error=Gh'é stæto 'n'erô itno rendering da pagina. - -# Predefined zoom values -page_scale_width=Larghessa pagina -page_scale_fit=Adatta a una pagina -page_scale_auto=Zoom aotomatico -page_scale_actual=Dimenscioin efetive -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Erô -loading_error=S'é verificou 'n'erô itno caregamento do PDF. -invalid_file_error=O schedaio PDF o l'é no valido ò aroinou. -missing_file_error=O schedaio PDF o no gh'é. -unexpected_response_error=Risposta inprevista do-u server - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotaçion: {{type}}] -password_label=Dimme a paròlla segreta pe arvî sto schedaio PDF. -password_invalid=Paròlla segreta sbalia. Preuva torna. -password_ok=Va ben -password_cancel=Anulla - -printing_not_supported=Atençion: a stanpa a no l'é conpletamente soportâ da sto navegatô. -printing_not_ready=Atençion: o PDF o no l'é ancon caregou conpletamente pe-a stanpa. -web_fonts_disabled=I font do web en dizativæ: inposcibile adeuviâ i carateri do PDF. -document_colors_not_allowed=No l'é poscibile adeuviâ i pròpi coî pe-i documenti PDF: l'opçion do navegatô “Permetti a-e pagine de çerne i pròpi coî in cangio de quelli inpostæ” a l'é dizativâ. diff --git a/cookbook/static/pdfjs/locale/lo/viewer.properties b/cookbook/static/pdfjs/locale/lo/viewer.properties deleted file mode 100644 index 00d3309c0..000000000 --- a/cookbook/static/pdfjs/locale/lo/viewer.properties +++ /dev/null @@ -1,152 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=ຫນ້າກ່ອນຫນ້າ -previous_label=ກ່ອນຫນ້າ -next.title=ຫນ້າຖັດໄປ -next_label=ຖັດໄປ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ຫນ້າ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=ຈາກ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} ຈາກ {{pagesCount}}) - -zoom_out.title=ຂະຫຍາຍອອກ -zoom_out_label=ຂະຫຍາຍອອກ -zoom_in.title=ຂະຫຍາຍເຂົ້າ -zoom_in_label=ຂະຫຍາຍເຂົ້າ -zoom.title=ຂະຫຍາຍ -presentation_mode.title=ສັບປ່ຽນເປັນໂຫມດການນຳສະເຫນີ -presentation_mode_label=ໂຫມດການນຳສະເຫນີ -open_file.title=ເປີດໄຟລ໌ -open_file_label=ເປີດ -print.title=ພິມ -print_label=ພິມ -download.title=ດາວໂຫລດ -download_label=ດາວໂຫລດ -bookmark.title=ມຸມມອງປະຈຸບັນ (ສຳເນົາ ຫລື ເປີດໃນວິນໂດໃຫມ່) -bookmark_label=ມຸມມອງປະຈຸບັນ - -# Secondary toolbar and context menu -tools.title=ເຄື່ອງມື -tools_label=ເຄື່ອງມື -first_page.title=ໄປທີ່ຫນ້າທຳອິດ -first_page.label=ໄປທີ່ຫນ້າທຳອິດ -first_page_label=ໄປທີ່ຫນ້າທຳອິດ -last_page.title=ໄປທີ່ຫນ້າສຸດທ້າຍ -last_page.label=ໄປທີ່ຫນ້າສຸດທ້າຍ -last_page_label=ໄປທີ່ຫນ້າສຸດທ້າຍ -page_rotate_cw.title=ຫມູນຕາມເຂັມໂມງ -page_rotate_cw.label=ຫມູນຕາມເຂັມໂມງ -page_rotate_cw_label=ຫມູນຕາມເຂັມໂມງ -page_rotate_ccw.title=ຫມູນທວນເຂັມໂມງ -page_rotate_ccw.label=ຫມູນທວນເຂັມໂມງ -page_rotate_ccw_label=ຫມູນທວນເຂັມໂມງ - - - - -# Document properties dialog box -document_properties_file_name=ຊື່ໄຟລ໌: -document_properties_file_size=ຂະຫນາດໄຟລ໌: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=ລວງຕັ້ງ -document_properties_page_size_orientation_landscape=ລວງນອນ -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=ຈົດໝາຍ -document_properties_page_size_name_legal=ຂໍ້ກົດຫມາຍ -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_close=ປິດ - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_close=ຍົກເລີກ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=ເປີດ/ປິດແຖບຂ້າງ -toggle_sidebar_notification.title=ເປີດ/ປິດແຖບຂ້າງ (ເອກະສານມີເຄົ້າຮ່າງ/ໄຟລ໌ແນບ) -toggle_sidebar_label=ເປີດ/ປິດແຖບຂ້າງ -document_outline_label=ເຄົ້າຮ່າງເອກະສານ -findbar_label=ຄົ້ນຫາ - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. - -# Find panel button title and messages -find_input.title=ຄົ້ນຫາ -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. - -# Error panel labels -error_more_info=ຂໍ້ມູນເພີ່ມເຕີມ -error_less_info=ຂໍ້ມູນນ້ອຍລົງ -error_close=ປິດ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -rendering_error=ມີຂໍ້ຜິດພາດເກີດຂື້ນຂະນະທີ່ກຳລັງເຣັນເດີຫນ້າ. - -# Predefined zoom values -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. - -# Loading indicator messages -loading_error_indicator=ຂໍ້ຜິດພາດ -loading_error=ມີຂໍ້ຜິດພາດເກີດຂື້ນຂະນະທີ່ກຳລັງໂຫລດ PDF. -invalid_file_error=ໄຟລ໌ PDF ບໍ່ຖືກຕ້ອງຫລືເສຍຫາຍ. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -password_ok=ຕົກລົງ -password_cancel=ຍົກເລີກ - diff --git a/cookbook/static/pdfjs/locale/locale.properties b/cookbook/static/pdfjs/locale/locale.properties deleted file mode 100644 index 411c19830..000000000 --- a/cookbook/static/pdfjs/locale/locale.properties +++ /dev/null @@ -1,309 +0,0 @@ -[ach] -@import url(ach/viewer.properties) - -[af] -@import url(af/viewer.properties) - -[an] -@import url(an/viewer.properties) - -[ar] -@import url(ar/viewer.properties) - -[ast] -@import url(ast/viewer.properties) - -[az] -@import url(az/viewer.properties) - -[be] -@import url(be/viewer.properties) - -[bg] -@import url(bg/viewer.properties) - -[bn] -@import url(bn/viewer.properties) - -[bo] -@import url(bo/viewer.properties) - -[br] -@import url(br/viewer.properties) - -[brx] -@import url(brx/viewer.properties) - -[bs] -@import url(bs/viewer.properties) - -[ca] -@import url(ca/viewer.properties) - -[cak] -@import url(cak/viewer.properties) - -[cs] -@import url(cs/viewer.properties) - -[cy] -@import url(cy/viewer.properties) - -[da] -@import url(da/viewer.properties) - -[de] -@import url(de/viewer.properties) - -[dsb] -@import url(dsb/viewer.properties) - -[el] -@import url(el/viewer.properties) - -[en-CA] -@import url(en-CA/viewer.properties) - -[en-GB] -@import url(en-GB/viewer.properties) - -[en-US] -@import url(en-US/viewer.properties) - -[eo] -@import url(eo/viewer.properties) - -[es-AR] -@import url(es-AR/viewer.properties) - -[es-CL] -@import url(es-CL/viewer.properties) - -[es-ES] -@import url(es-ES/viewer.properties) - -[es-MX] -@import url(es-MX/viewer.properties) - -[et] -@import url(et/viewer.properties) - -[eu] -@import url(eu/viewer.properties) - -[fa] -@import url(fa/viewer.properties) - -[ff] -@import url(ff/viewer.properties) - -[fi] -@import url(fi/viewer.properties) - -[fr] -@import url(fr/viewer.properties) - -[fy-NL] -@import url(fy-NL/viewer.properties) - -[ga-IE] -@import url(ga-IE/viewer.properties) - -[gd] -@import url(gd/viewer.properties) - -[gl] -@import url(gl/viewer.properties) - -[gn] -@import url(gn/viewer.properties) - -[gu-IN] -@import url(gu-IN/viewer.properties) - -[he] -@import url(he/viewer.properties) - -[hi-IN] -@import url(hi-IN/viewer.properties) - -[hr] -@import url(hr/viewer.properties) - -[hsb] -@import url(hsb/viewer.properties) - -[hu] -@import url(hu/viewer.properties) - -[hy-AM] -@import url(hy-AM/viewer.properties) - -[hye] -@import url(hye/viewer.properties) - -[ia] -@import url(ia/viewer.properties) - -[id] -@import url(id/viewer.properties) - -[is] -@import url(is/viewer.properties) - -[it] -@import url(it/viewer.properties) - -[ja] -@import url(ja/viewer.properties) - -[ka] -@import url(ka/viewer.properties) - -[kab] -@import url(kab/viewer.properties) - -[kk] -@import url(kk/viewer.properties) - -[km] -@import url(km/viewer.properties) - -[kn] -@import url(kn/viewer.properties) - -[ko] -@import url(ko/viewer.properties) - -[lij] -@import url(lij/viewer.properties) - -[lo] -@import url(lo/viewer.properties) - -[lt] -@import url(lt/viewer.properties) - -[ltg] -@import url(ltg/viewer.properties) - -[lv] -@import url(lv/viewer.properties) - -[meh] -@import url(meh/viewer.properties) - -[mk] -@import url(mk/viewer.properties) - -[mr] -@import url(mr/viewer.properties) - -[ms] -@import url(ms/viewer.properties) - -[my] -@import url(my/viewer.properties) - -[nb-NO] -@import url(nb-NO/viewer.properties) - -[ne-NP] -@import url(ne-NP/viewer.properties) - -[nl] -@import url(nl/viewer.properties) - -[nn-NO] -@import url(nn-NO/viewer.properties) - -[oc] -@import url(oc/viewer.properties) - -[pa-IN] -@import url(pa-IN/viewer.properties) - -[pl] -@import url(pl/viewer.properties) - -[pt-BR] -@import url(pt-BR/viewer.properties) - -[pt-PT] -@import url(pt-PT/viewer.properties) - -[rm] -@import url(rm/viewer.properties) - -[ro] -@import url(ro/viewer.properties) - -[ru] -@import url(ru/viewer.properties) - -[scn] -@import url(scn/viewer.properties) - -[si] -@import url(si/viewer.properties) - -[sk] -@import url(sk/viewer.properties) - -[sl] -@import url(sl/viewer.properties) - -[son] -@import url(son/viewer.properties) - -[sq] -@import url(sq/viewer.properties) - -[sr] -@import url(sr/viewer.properties) - -[sv-SE] -@import url(sv-SE/viewer.properties) - -[ta] -@import url(ta/viewer.properties) - -[te] -@import url(te/viewer.properties) - -[th] -@import url(th/viewer.properties) - -[tl] -@import url(tl/viewer.properties) - -[tr] -@import url(tr/viewer.properties) - -[trs] -@import url(trs/viewer.properties) - -[uk] -@import url(uk/viewer.properties) - -[ur] -@import url(ur/viewer.properties) - -[uz] -@import url(uz/viewer.properties) - -[vi] -@import url(vi/viewer.properties) - -[wo] -@import url(wo/viewer.properties) - -[xh] -@import url(xh/viewer.properties) - -[zh-CN] -@import url(zh-CN/viewer.properties) - -[zh-TW] -@import url(zh-TW/viewer.properties) - diff --git a/cookbook/static/pdfjs/locale/lt/viewer.properties b/cookbook/static/pdfjs/locale/lt/viewer.properties deleted file mode 100644 index dbdc82136..000000000 --- a/cookbook/static/pdfjs/locale/lt/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Ankstesnis puslapis -previous_label=Ankstesnis -next.title=Kitas puslapis -next_label=Kitas - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Puslapis -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=iš {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} iš {{pagesCount}}) - -zoom_out.title=Sumažinti -zoom_out_label=Sumažinti -zoom_in.title=Padidinti -zoom_in_label=Padidinti -zoom.title=Mastelis -presentation_mode.title=Pereiti į pateikties veikseną -presentation_mode_label=Pateikties veiksena -open_file.title=Atverti failą -open_file_label=Atverti -print.title=Spausdinti -print_label=Spausdinti -download.title=Parsiųsti -download_label=Parsiųsti -bookmark.title=Esamojo rodinio saitas (kopijavimui ar atvėrimui kitame lange) -bookmark_label=Esamasis rodinys - -# Secondary toolbar and context menu -tools.title=Priemonės -tools_label=Priemonės -first_page.title=Eiti į pirmą puslapį -first_page.label=Eiti į pirmą puslapį -first_page_label=Eiti į pirmą puslapį -last_page.title=Eiti į paskutinį puslapį -last_page.label=Eiti į paskutinį puslapį -last_page_label=Eiti į paskutinį puslapį -page_rotate_cw.title=Pasukti pagal laikrodžio rodyklę -page_rotate_cw.label=Pasukti pagal laikrodžio rodyklę -page_rotate_cw_label=Pasukti pagal laikrodžio rodyklę -page_rotate_ccw.title=Pasukti prieš laikrodžio rodyklę -page_rotate_ccw.label=Pasukti prieš laikrodžio rodyklę -page_rotate_ccw_label=Pasukti prieš laikrodžio rodyklę - -cursor_text_select_tool.title=Įjungti teksto žymėjimo įrankį -cursor_text_select_tool_label=Teksto žymėjimo įrankis -cursor_hand_tool.title=Įjungti vilkimo įrankį -cursor_hand_tool_label=Vilkimo įrankis - -scroll_vertical.title=Naudoti vertikalų slinkimą -scroll_vertical_label=Vertikalus slinkimas -scroll_horizontal.title=Naudoti horizontalų slinkimą -scroll_horizontal_label=Horizontalus slinkimas -scroll_wrapped.title=Naudoti išklotą slinkimą -scroll_wrapped_label=Išklotas slinkimas - -spread_none.title=Nesujungti puslapių sklaidų -spread_none_label=Be sklaidų -spread_odd.title=Sujungti puslapių sklaidas pradedant nelyginiais puslapiais -spread_odd_label=Nelyginės sklaidos -spread_even.title=Sujungti puslapių sklaidas pradedant lyginiais puslapiais -spread_even_label=Lyginės sklaidos - -# Document properties dialog box -document_properties.title=Dokumento savybės… -document_properties_label=Dokumento savybės… -document_properties_file_name=Failo vardas: -document_properties_file_size=Failo dydis: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} B) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} B) -document_properties_title=Antraštė: -document_properties_author=Autorius: -document_properties_subject=Tema: -document_properties_keywords=Reikšminiai žodžiai: -document_properties_creation_date=Sukūrimo data: -document_properties_modification_date=Modifikavimo data: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Kūrėjas: -document_properties_producer=PDF generatorius: -document_properties_version=PDF versija: -document_properties_page_count=Puslapių skaičius: -document_properties_page_size=Puslapio dydis: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=stačias -document_properties_page_size_orientation_landscape=gulsčias -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Laiškas -document_properties_page_size_name_legal=Dokumentas -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Spartus žiniatinklio rodinys: -document_properties_linearized_yes=Taip -document_properties_linearized_no=Ne -document_properties_close=Užverti - -print_progress_message=Dokumentas ruošiamas spausdinimui… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Atsisakyti - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Rodyti / slėpti šoninį polangį -toggle_sidebar_notification.title=Parankinė (dokumentas turi struktūrą / priedų) -toggle_sidebar_label=Šoninis polangis -document_outline.title=Rodyti dokumento struktūrą (spustelėkite dukart norėdami išplėsti/suskleisti visus elementus) -document_outline_label=Dokumento struktūra -attachments.title=Rodyti priedus -attachments_label=Priedai -thumbs.title=Rodyti puslapių miniatiūras -thumbs_label=Miniatiūros -findbar.title=Ieškoti dokumente -findbar_label=Rasti - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}} puslapis -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} puslapis -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} puslapio miniatiūra - -# Find panel button title and messages -find_input.title=Rasti -find_input.placeholder=Rasti dokumente… -find_previous.title=Ieškoti ankstesnio frazės egzemplioriaus -find_previous_label=Ankstesnis -find_next.title=Ieškoti tolesnio frazės egzemplioriaus -find_next_label=Tolesnis -find_highlight=Viską paryškinti -find_match_case_label=Skirti didžiąsias ir mažąsias raides -find_entire_word_label=Ištisi žodžiai -find_reached_top=Pasiekus dokumento pradžią, paieška pratęsta nuo pabaigos -find_reached_bottom=Pasiekus dokumento pabaigą, paieška pratęsta nuo pradžios -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} iš {{total}} atitikmens -find_match_count[two]={{current}} iš {{total}} atitikmenų -find_match_count[few]={{current}} iš {{total}} atitikmenų -find_match_count[many]={{current}} iš {{total}} atitikmenų -find_match_count[other]={{current}} iš {{total}} atitikmens -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Daugiau nei {{limit}} atitikmenų -find_match_count_limit[one]=Daugiau nei {{limit}} atitikmuo -find_match_count_limit[two]=Daugiau nei {{limit}} atitikmenys -find_match_count_limit[few]=Daugiau nei {{limit}} atitikmenys -find_match_count_limit[many]=Daugiau nei {{limit}} atitikmenų -find_match_count_limit[other]=Daugiau nei {{limit}} atitikmuo -find_not_found=Ieškoma frazė nerasta - -# Error panel labels -error_more_info=Išsamiau -error_less_info=Glausčiau -error_close=Užverti -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v. {{version}} (darinys: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Pranešimas: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Dėklas: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Failas: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Eilutė: {{line}} -rendering_error=Atvaizduojant puslapį įvyko klaida. - -# Predefined zoom values -page_scale_width=Priderinti prie lapo pločio -page_scale_fit=Pritaikyti prie lapo dydžio -page_scale_auto=Automatinis mastelis -page_scale_actual=Tikras dydis -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Klaida -loading_error=Įkeliant PDF failą įvyko klaida. -invalid_file_error=Tai nėra PDF failas arba jis yra sugadintas. -missing_file_error=PDF failas nerastas. -unexpected_response_error=Netikėtas serverio atsakas. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[„{{type}}“ tipo anotacija] -password_label=Įveskite slaptažodį šiam PDF failui atverti. -password_invalid=Slaptažodis neteisingas. Bandykite dar kartą. -password_ok=Gerai -password_cancel=Atsisakyti - -printing_not_supported=Dėmesio! Spausdinimas šioje naršyklėje nėra pilnai realizuotas. -printing_not_ready=Dėmesio! PDF failas dar nėra pilnai įkeltas spausdinimui. -web_fonts_disabled=Saityno šriftai išjungti – PDF faile esančių šriftų naudoti negalima. -document_colors_not_allowed=PDF dokumentams neleidžiama nurodyti savo spalvų, nes išjungta naršyklės nuostata „Leisti tinklalapiams nurodyti spalvas“. diff --git a/cookbook/static/pdfjs/locale/ltg/viewer.properties b/cookbook/static/pdfjs/locale/ltg/viewer.properties deleted file mode 100644 index ecdb72352..000000000 --- a/cookbook/static/pdfjs/locale/ltg/viewer.properties +++ /dev/null @@ -1,220 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Īprīkšejā lopa -previous_label=Īprīkšejā -next.title=Nuokomuo lopa -next_label=Nuokomuo - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Lopa -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=nu {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} nu {{pagesCount}}) - -zoom_out.title=Attuolynuot -zoom_out_label=Attuolynuot -zoom_in.title=Pītuvynuot -zoom_in_label=Pītuvynuot -zoom.title=Palelynuojums -presentation_mode.title=Puorslēgtīs iz Prezentacejis režymu -presentation_mode_label=Prezentacejis režyms -open_file.title=Attaiseit failu -open_file_label=Attaiseit -print.title=Drukuošona -print_label=Drukōt -download.title=Lejupīluode -download_label=Lejupīluodeit -bookmark.title=Pošreizejais skots (kopēt voi attaiseit jaunā lūgā) -bookmark_label=Pošreizejais skots - -# Secondary toolbar and context menu -tools.title=Reiki -tools_label=Reiki -first_page.title=Īt iz pyrmū lopu -first_page.label=Īt iz pyrmū lopu -first_page_label=Īt iz pyrmū lopu -last_page.title=Īt iz piedejū lopu -last_page.label=Īt iz piedejū lopu -last_page_label=Īt iz piedejū lopu -page_rotate_cw.title=Pagrīzt pa pulksteni -page_rotate_cw.label=Pagrīzt pa pulksteni -page_rotate_cw_label=Pagrīzt pa pulksteni -page_rotate_ccw.title=Pagrīzt pret pulksteni -page_rotate_ccw.label=Pagrīzt pret pulksteni -page_rotate_ccw_label=Pagrīzt pret pulksteni - -cursor_text_select_tool.title=Aktivizēt teksta izvieles reiku -cursor_text_select_tool_label=Teksta izvieles reiks -cursor_hand_tool.title=Aktivēt rūkys reiku -cursor_hand_tool_label=Rūkys reiks - -scroll_vertical.title=Izmontōt vertikalū ritinōšonu -scroll_vertical_label=Vertikalō ritinōšona -scroll_horizontal.title=Izmontōt horizontalū ritinōšonu -scroll_horizontal_label=Horizontalō ritinōšona -scroll_wrapped.title=Izmontōt mārūgojamū ritinōšonu -scroll_wrapped_label=Mārūgojamō ritinōšona - -spread_none.title=Naizmontōt lopu atvāruma režimu -spread_none_label=Bez atvārumim -spread_odd.title=Izmontōt lopu atvārumus sōkut nu napōra numeru lopom -spread_odd_label=Napōra lopys pa kreisi -spread_even.title=Izmontōt lopu atvārumus sōkut nu pōra numeru lopom -spread_even_label=Pōra lopys pa kreisi - -# Document properties dialog box -document_properties.title=Dokumenta īstatiejumi… -document_properties_label=Dokumenta īstatiejumi… -document_properties_file_name=Faila nūsaukums: -document_properties_file_size=Faila izmārs: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} biti) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} biti) -document_properties_title=Nūsaukums: -document_properties_author=Autors: -document_properties_subject=Tema: -document_properties_keywords=Atslāgi vuordi: -document_properties_creation_date=Izveides datums: -document_properties_modification_date=lobuošonys datums: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Radeituojs: -document_properties_producer=PDF producents: -document_properties_version=PDF verseja: -document_properties_page_count=Lopu skaits: -document_properties_page_size=Lopas izmārs: -document_properties_page_size_unit_inches=collas -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portreta orientaceja -document_properties_page_size_orientation_landscape=ainovys orientaceja -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Jā -document_properties_linearized_no=Nā -document_properties_close=Aiztaiseit - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Atceļt - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Puorslēgt suonu jūslu -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Puorslēgt suonu jūslu -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Dokumenta saturs -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Paruodeit seiktālus -thumbs_label=Seiktāli -findbar.title=Mekleit dokumentā -findbar_label=Mekleit - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Lopa {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Lopys {{page}} seiktāls - -# Find panel button title and messages -find_input.title=Mekleit -find_input.placeholder=Mekleit dokumentā… -find_previous.title=Atrast īprīkšejū -find_previous_label=Īprīkšejā -find_next.title=Atrast nuokamū -find_next_label=Nuokomuo -find_highlight=Īkruosuot vysys -find_match_case_label=Lelū, mozū burtu jiuteigs -find_reached_top=Sasnīgts dokumenta suokums, turpynojom nu beigom -find_reached_bottom=Sasnīgtys dokumenta beigys, turpynojom nu suokuma -find_not_found=Frāze nav atrosta - -# Error panel labels -error_more_info=Vairuok informacejis -error_less_info=mozuok informacejis -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Ziņuojums: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Steks: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Ryndeņa: {{line}} -rendering_error=Attālojūt lopu rodās klaida - -# Predefined zoom values -page_scale_width=Lopys plotumā -page_scale_fit=Ītylpynūt lopu -page_scale_auto=Automatiskais izmārs -page_scale_actual=Patīsais izmārs -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Klaida -loading_error=Īluodejūt PDF nūtyka klaida. -invalid_file_error=Nadereigs voi būjuots PDF fails. -missing_file_error=PDF fails nav atrosts. -unexpected_response_error=Unexpected server response. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Īvodit paroli, kab attaiseitu PDF failu. -password_invalid=Napareiza parole, raugit vēļreiz. -password_ok=Labi -password_cancel=Atceļt - -printing_not_supported=Uzmaneibu: Drukuošona nu itei puorlūka dorbojās tikai daleji. -printing_not_ready=Uzmaneibu: PDF nav pilneibā īluodeits drukuošonai. -web_fonts_disabled=Šķārsteikla fonti nav aktivizāti: Navar īgult PDF fontus. -document_colors_not_allowed=PDF dokumentym nav atļauts izmantuot pošym sovys kruosys: „Atļaut lopom izavieleit pošom sovys kruosys“ ir deaktiveits puorlyukā. diff --git a/cookbook/static/pdfjs/locale/lv/viewer.properties b/cookbook/static/pdfjs/locale/lv/viewer.properties deleted file mode 100644 index 18ed55efb..000000000 --- a/cookbook/static/pdfjs/locale/lv/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Iepriekšējā lapa -previous_label=Iepriekšējā -next.title=Nākamā lapa -next_label=Nākamā - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Lapa -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=no {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} no {{pagesCount}}) - -zoom_out.title=Attālināt\u0020 -zoom_out_label=Attālināt -zoom_in.title=Pietuvināt -zoom_in_label=Pietuvināt -zoom.title=Palielinājums -presentation_mode.title=Pārslēgties uz Prezentācijas režīmu -presentation_mode_label=Prezentācijas režīms -open_file.title=Atvērt failu -open_file_label=Atvērt -print.title=Drukāšana -print_label=Drukāt -download.title=Lejupielāde -download_label=Lejupielādēt -bookmark.title=Pašreizējais skats (kopēt vai atvērt jaunā logā) -bookmark_label=Pašreizējais skats - -# Secondary toolbar and context menu -tools.title=Rīki -tools_label=Rīki -first_page.title=Iet uz pirmo lapu -first_page.label=Iet uz pirmo lapu -first_page_label=Iet uz pirmo lapu -last_page.title=Iet uz pēdējo lapu -last_page.label=Iet uz pēdējo lapu -last_page_label=Iet uz pēdējo lapu -page_rotate_cw.title=Pagriezt pa pulksteni -page_rotate_cw.label=Pagriezt pa pulksteni -page_rotate_cw_label=Pagriezt pa pulksteni -page_rotate_ccw.title=Pagriezt pret pulksteni -page_rotate_ccw.label=Pagriezt pret pulksteni -page_rotate_ccw_label=Pagriezt pret pulksteni - -cursor_text_select_tool.title=Aktivizēt teksta izvēles rīku -cursor_text_select_tool_label=Teksta izvēles rīks -cursor_hand_tool.title=Aktivēt rokas rīku -cursor_hand_tool_label=Rokas rīks - -scroll_vertical.title=Izmantot vertikālo ritināšanu -scroll_vertical_label=Vertikālā ritināšana -scroll_horizontal.title=Izmantot horizontālo ritināšanu -scroll_horizontal_label=Horizontālā ritināšana -scroll_wrapped.title=Izmantot apkļauto ritināšanu -scroll_wrapped_label=Apkļautā ritināšana - -spread_none.title=Nepievienoties lapu izpletumiem -spread_none_label=Neizmantot izpletumus -spread_odd.title=Izmantot lapu izpletumus sākot ar nepāra numuru lapām -spread_odd_label=Nepāra izpletumi -spread_even.title=Izmantot lapu izpletumus sākot ar pāra numuru lapām -spread_even_label=Pāra izpletumi - -# Document properties dialog box -document_properties.title=Dokumenta iestatījumi… -document_properties_label=Dokumenta iestatījumi… -document_properties_file_name=Faila nosaukums: -document_properties_file_size=Faila izmērs: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} biti) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} biti) -document_properties_title=Nosaukums: -document_properties_author=Autors: -document_properties_subject=Tēma: -document_properties_keywords=Atslēgas vārdi: -document_properties_creation_date=Izveides datums: -document_properties_modification_date=LAbošanas datums: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Radītājs: -document_properties_producer=PDF producents: -document_properties_version=PDF versija: -document_properties_page_count=Lapu skaits: -document_properties_page_size=Papīra izmērs: -document_properties_page_size_unit_inches=collas -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portretorientācija -document_properties_page_size_orientation_landscape=ainavorientācija -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Vēstule -document_properties_page_size_name_legal=Juridiskie teksti -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Ātrā tīmekļa skats: -document_properties_linearized_yes=Jā -document_properties_linearized_no=Nē -document_properties_close=Aizvērt - -print_progress_message=Gatavo dokumentu drukāšanai... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Atcelt - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Pārslēgt sānu joslu -toggle_sidebar_notification.title=Pārslēgt sānu joslu (dokumenta saturu un pielikumus) -toggle_sidebar_label=Pārslēgt sānu joslu -document_outline.title=Rādīt dokumenta struktūru (veiciet dubultklikšķi lai izvērstu/sakļautu visus vienumus) -document_outline_label=Dokumenta saturs -attachments.title=Rādīt pielikumus -attachments_label=Pielikumi -thumbs.title=Parādīt sīktēlus -thumbs_label=Sīktēli -findbar.title=Meklēt dokumentā -findbar_label=Meklēt - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Lapa {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Lapas {{page}} sīktēls - -# Find panel button title and messages -find_input.title=Meklēt -find_input.placeholder=Meklēt dokumentā… -find_previous.title=Atrast iepriekšējo -find_previous_label=Iepriekšējā -find_next.title=Atrast nākamo -find_next_label=Nākamā -find_highlight=Iekrāsot visas -find_match_case_label=Lielo, mazo burtu jutīgs -find_entire_word_label=Veselus vārdus -find_reached_top=Sasniegts dokumenta sākums, turpinām no beigām -find_reached_bottom=Sasniegtas dokumenta beigas, turpinām no sākuma -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} no {{total}} rezultāta -find_match_count[two]={{current}} no {{total}} rezultātiem -find_match_count[few]={{current}} no {{total}} rezultātiem -find_match_count[many]={{current}} no {{total}} rezultātiem -find_match_count[other]={{current}} no {{total}} rezultātiem -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Vairāk nekā {{limit}} rezultāti -find_match_count_limit[one]=Vairāk nekā {{limit}} rezultāti -find_match_count_limit[two]=Vairāk nekā {{limit}} rezultāti -find_match_count_limit[few]=Vairāk nekā {{limit}} rezultāti -find_match_count_limit[many]=Vairāk nekā {{limit}} rezultāti -find_match_count_limit[other]=Vairāk nekā {{limit}} rezultāti -find_not_found=Frāze nav atrasta - -# Error panel labels -error_more_info=Vairāk informācijas -error_less_info=MAzāk informācijas -error_close=Close -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Ziņojums: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Steks: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rindiņa: {{line}} -rendering_error=Attēlojot lapu radās kļūda - -# Predefined zoom values -page_scale_width=Lapas platumā -page_scale_fit=Ietilpinot lapu -page_scale_auto=Automātiskais izmērs -page_scale_actual=Patiesais izmērs -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Kļūda -loading_error=Ielādējot PDF notika kļūda. -invalid_file_error=Nederīgs vai bojāts PDF fails. -missing_file_error=PDF fails nav atrasts. -unexpected_response_error=Negaidīa servera atbilde. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} anotācija] -password_label=Ievadiet paroli, lai atvērtu PDF failu. -password_invalid=Nepareiza parole, mēģiniet vēlreiz. -password_ok=Labi -password_cancel=Atcelt - -printing_not_supported=Uzmanību: Drukāšana no šī pārlūka darbojas tikai daļēji. -printing_not_ready=Uzmanību: PDF nav pilnībā ielādēts drukāšanai. -web_fonts_disabled=Tīmekļa fonti nav aktivizēti: Nevar iegult PDF fontus. -document_colors_not_allowed=PDF dokumentiem nav atļauts izmantot pašiem savas krāsas: „Atļaut lapām izvēlēties pašām savas krāsas“ ir deaktivēts pārlūkā. diff --git a/cookbook/static/pdfjs/locale/meh/viewer.properties b/cookbook/static/pdfjs/locale/meh/viewer.properties deleted file mode 100644 index 7a1bf04a6..000000000 --- a/cookbook/static/pdfjs/locale/meh/viewer.properties +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página yata - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom.title=Nasa´a ka´nu/Nasa´a luli -open_file_label=Síne - -# Secondary toolbar and context menu - - - - -# Document properties dialog box -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=Kuvi -document_properties_close=Nakasɨ - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Nkuvi-ka - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -findbar_label=Nánuku - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. - -# Find panel button title and messages -find_input.title=Nánuku -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} - -# Error panel labels -error_close=Nakasɨ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number - -# Predefined zoom values -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -password_cancel=Nkuvi-ka - diff --git a/cookbook/static/pdfjs/locale/mk/viewer.properties b/cookbook/static/pdfjs/locale/mk/viewer.properties deleted file mode 100644 index 85350255a..000000000 --- a/cookbook/static/pdfjs/locale/mk/viewer.properties +++ /dev/null @@ -1,145 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Претходна страница -previous_label=Претходна -next.title=Следна страница -next_label=Следна - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom_out.title=Намалување -zoom_out_label=Намали -zoom_in.title=Зголемување -zoom_in_label=Зголеми -zoom.title=Променување на големина -presentation_mode.title=Премини во презентациски режим -presentation_mode_label=Презентациски режим -open_file.title=Отворање датотека -open_file_label=Отвори -print.title=Печатење -print_label=Печати -download.title=Преземање -download_label=Преземи -bookmark.title=Овој преглед (копирај или отвори во нов прозорец) -bookmark_label=Овој преглед - -# Secondary toolbar and context menu -tools.title=Алатки -first_page.label=Оди до првата страница -last_page.label=Оди до последната страница -page_rotate_cw.label=Ротирај по стрелките на часовникот -page_rotate_ccw.label=Ротирај спротивно од стрелките на часовникот - - - - -# Document properties dialog box -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_close=Откажи - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Вклучи странична лента -toggle_sidebar_label=Вклучи странична лента -thumbs.title=Прикажување на икони -thumbs_label=Икони -findbar.title=Најди во документот -findbar_label=Најди - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Страница {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Икона од страница {{page}} - -# Find panel button title and messages -find_previous.title=Најди ја предходната појава на фразата -find_previous_label=Претходно -find_next.title=Најди ја следната појава на фразата -find_next_label=Следно -find_highlight=Означи сѐ -find_match_case_label=Токму така -find_reached_top=Барањето стигна до почетокот на документот и почнува од крајот -find_reached_bottom=Барањето стигна до крајот на документот и почнува од почеток -find_not_found=Фразата не е пронајдена - -# Error panel labels -error_more_info=Повеќе информации -error_less_info=Помалку информации -error_close=Затвори -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Порака: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Датотека: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Линија: {{line}} -rendering_error=Настана грешка при прикажувањето на страницата. - -# Predefined zoom values -page_scale_width=Ширина на страница -page_scale_fit=Цела страница -page_scale_auto=Автоматска големина -page_scale_actual=Вистинска големина -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. - -# Loading indicator messages -loading_error_indicator=Грешка -loading_error=Настана грешка при вчитувањето на PDF-от. -invalid_file_error=Невалидна или корумпирана PDF датотека. -missing_file_error=Недостасува PDF документ. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -password_cancel=Откажи - -printing_not_supported=Предупредување: Печатењето не е целосно поддржано во овој прелистувач. -printing_not_ready=Предупредување: PDF документот не е целосно вчитан за печатење. -web_fonts_disabled=Интернет фонтовите се оневозможени: не може да се користат вградените PDF фонтови. -document_colors_not_allowed=PDF-документите немаат дозвола да користат сопствени бои: Поставката „Дозволи страниците сами да ги избираат своите бои“ е деактивирана од прелистувачот. diff --git a/cookbook/static/pdfjs/locale/mr/viewer.properties b/cookbook/static/pdfjs/locale/mr/viewer.properties deleted file mode 100644 index 25229ea4f..000000000 --- a/cookbook/static/pdfjs/locale/mr/viewer.properties +++ /dev/null @@ -1,238 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=मागील पृष्ठ -previous_label=मागील -next.title=पुढील पृष्ठ -next_label=पुढील - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=पृष्ठ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}}पैकी -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} पैकी {{pageNumber}}) - -zoom_out.title=छोटे करा -zoom_out_label=छोटे करा -zoom_in.title=मोठे करा -zoom_in_label=मोठे करा -zoom.title=लहान किंवा मोठे करा -presentation_mode.title=प्रस्तुतिकरण मोडचा वापर करा -presentation_mode_label=प्रस्तुतिकरण मोड -open_file.title=फाइल उघडा -open_file_label=उघडा -print.title=छपाई करा -print_label=छपाई करा -download.title=डाउनलोड करा -download_label=डाउनलोड करा -bookmark.title=सध्याचे अवलोकन (नवीन पटलात प्रत बनवा किंवा उघडा) -bookmark_label=सध्याचे अवलोकन - -# Secondary toolbar and context menu -tools.title=साधने -tools_label=साधने -first_page.title=पहिल्या पृष्ठावर जा -first_page.label=पहिल्या पृष्ठावर जा -first_page_label=पहिल्या पृष्ठावर जा -last_page.title=शेवटच्या पृष्ठावर जा -last_page.label=शेवटच्या पृष्ठावर जा -last_page_label=शेवटच्या पृष्ठावर जा -page_rotate_cw.title=घड्याळाच्या काट्याच्या दिशेने फिरवा -page_rotate_cw.label=घड्याळाच्या काट्याच्या दिशेने फिरवा -page_rotate_cw_label=घड्याळाच्या काट्याच्या दिशेने फिरवा -page_rotate_ccw.title=घड्याळाच्या काट्याच्या उलट दिशेने फिरवा -page_rotate_ccw.label=घड्याळाच्या काट्याच्या उलट दिशेने फिरवा -page_rotate_ccw_label=घड्याळाच्या काट्याच्या उलट दिशेने फिरवा - -cursor_text_select_tool.title=मजकूर निवड साधन कार्यान्वयीत करा -cursor_text_select_tool_label=मजकूर निवड साधन -cursor_hand_tool.title=हात साधन कार्यान्वित करा -cursor_hand_tool_label=हस्त साधन - -scroll_vertical.title=अनुलंब स्क्रोलिंग वापरा -scroll_vertical_label=अनुलंब स्क्रोलिंग -scroll_horizontal.title=क्षैतिज स्क्रोलिंग वापरा -scroll_horizontal_label=क्षैतिज स्क्रोलिंग - - -# Document properties dialog box -document_properties.title=दस्तऐवज गुणधर्म… -document_properties_label=दस्तऐवज गुणधर्म… -document_properties_file_name=फाइलचे नाव: -document_properties_file_size=फाइल आकार: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} बाइट्स) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} बाइट्स) -document_properties_title=शिर्षक: -document_properties_author=लेखक: -document_properties_subject=विषय: -document_properties_keywords=मुख्यशब्द: -document_properties_creation_date=निर्माण दिनांक: -document_properties_modification_date=दुरूस्ती दिनांक: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=निर्माता: -document_properties_producer=PDF निर्माता: -document_properties_version=PDF आवृत्ती: -document_properties_page_count=पृष्ठ संख्या: -document_properties_page_size=पृष्ठ आकार: -document_properties_page_size_unit_inches=इंच -document_properties_page_size_unit_millimeters=मीमी -document_properties_page_size_orientation_portrait=उभी मांडणी -document_properties_page_size_orientation_landscape=आडवे -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=जलद वेब दृष्य: -document_properties_linearized_yes=हो -document_properties_linearized_no=नाही -document_properties_close=बंद करा - -print_progress_message=छपाई करीता पृष्ठ तयार करीत आहे… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=रद्द करा - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=बाजूचीपट्टी टॉगल करा -toggle_sidebar_notification.title=बाजूची पट्टी टॉगल करा (दस्तऐवजामध्ये रुपरेषा/जोडण्या आहेत) -toggle_sidebar_label=बाजूचीपट्टी टॉगल करा -document_outline.title=दस्तऐवज बाह्यरेखा दर्शवा (विस्तृत करण्यासाठी दोनवेळा क्लिक करा /सर्व घटक दाखवा) -document_outline_label=दस्तऐवज रूपरेषा -attachments.title=जोडपत्र दाखवा -attachments_label=जोडपत्र -thumbs.title=थंबनेल्स् दाखवा -thumbs_label=थंबनेल्स् -findbar.title=दस्तऐवजात शोधा -findbar_label=शोधा - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=पृष्ठ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=पृष्ठाचे थंबनेल {{page}} - -# Find panel button title and messages -find_input.title=शोधा -find_input.placeholder=दस्तऐवजात शोधा… -find_previous.title=वाकप्रयोगची मागील घटना शोधा -find_previous_label=मागील -find_next.title=वाकप्रयोगची पुढील घटना शोधा -find_next_label=पुढील -find_highlight=सर्व ठळक करा -find_match_case_label=आकार जुळवा -find_entire_word_label=संपूर्ण शब्द -find_reached_top=दस्तऐवजाच्या शीर्षकास पोहचले, तळपासून पुढे -find_reached_bottom=दस्तऐवजाच्या तळाला पोहचले, शीर्षकापासून पुढे -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} पैकी {{current}} सुसंगत -find_match_count[two]={{total}} पैकी {{current}} सुसंगत -find_match_count[few]={{total}} पैकी {{current}} सुसंगत -find_match_count[many]={{total}} पैकी {{current}} सुसंगत -find_match_count[other]={{total}} पैकी {{current}} सुसंगत -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} पेक्षा अधिक जुळण्या -find_match_count_limit[one]={{limit}} पेक्षा अधिक जुळण्या -find_match_count_limit[two]={{limit}} पेक्षा अधिक जुळण्या -find_match_count_limit[few]={{limit}} पेक्षा अधिक जुळण्या -find_match_count_limit[many]={{limit}} पेक्षा अधिक जुळण्या -find_match_count_limit[other]={{limit}} पेक्षा अधिक जुळण्या -find_not_found=वाकप्रयोग आढळले नाही - -# Error panel labels -error_more_info=आणखी माहिती -error_less_info=कमी माहिती -error_close=बंद करा -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=संदेश: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=स्टॅक: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=फाइल: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=रेष: {{line}} -rendering_error=पृष्ठ दाखवतेवेळी त्रुटी आढळली. - -# Predefined zoom values -page_scale_width=पृष्ठाची रूंदी -page_scale_fit=पृष्ठ बसवा -page_scale_auto=स्वयं लाहन किंवा मोठे करणे -page_scale_actual=प्रत्यक्ष आकार -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=त्रुटी -loading_error=PDF लोड करतेवेळी त्रुटी आढळली. -invalid_file_error=अवैध किंवा दोषीत PDF फाइल. -missing_file_error=न आढळणारी PDF फाइल. -unexpected_response_error=अनपेक्षित सर्व्हर प्रतिसाद. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} टिपण्णी] -password_label=ही PDF फाइल उघडण्याकरिता पासवर्ड द्या. -password_invalid=अवैध पासवर्ड. कृपया पुन्हा प्रयत्न करा. -password_ok=ठीक आहे -password_cancel=रद्द करा - -printing_not_supported=सावधानता: या ब्राउझरतर्फे छपाइ पूर्णपणे समर्थीत नाही. -printing_not_ready=सावधानता: छपाईकरिता PDF पूर्णतया लोड झाले नाही. -web_fonts_disabled=वेब टंक असमर्थीत आहेत: एम्बेडेड PDF टंक वापर अशक्य. -document_colors_not_allowed=PDF दस्तऐवजांना त्यांचे रंग वापरण्यास अनुमती नाही: ब्राउझरमध्ये ' पृष्ठांना त्यांचे रंग निवडण्यास अनुमती द्या' बंद केले आहे. diff --git a/cookbook/static/pdfjs/locale/ms/viewer.properties b/cookbook/static/pdfjs/locale/ms/viewer.properties deleted file mode 100644 index 3bc7907b8..000000000 --- a/cookbook/static/pdfjs/locale/ms/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Halaman Dahulu -previous_label=Dahulu -next.title=Halaman Berikut -next_label=Berikut - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Halaman -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=daripada {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} daripada {{pagesCount}}) - -zoom_out.title=Zum Keluar -zoom_out_label=Zum Keluar -zoom_in.title=Zum Masuk -zoom_in_label=Zum Masuk -zoom.title=Zum -presentation_mode.title=Tukar ke Mod Persembahan -presentation_mode_label=Mod Persembahan -open_file.title=Buka Fail -open_file_label=Buka -print.title=Cetak -print_label=Cetak -download.title=Muat turun -download_label=Muat turun -bookmark.title=Paparan semasa (salin atau buka dalam tetingkap baru) -bookmark_label=Paparan Semasa - -# Secondary toolbar and context menu -tools.title=Alatan -tools_label=Alatan -first_page.title=Pergi ke Halaman Pertama -first_page.label=Pergi ke Halaman Pertama -first_page_label=Pergi ke Halaman Pertama -last_page.title=Pergi ke Halaman Terakhir -last_page.label=Pergi ke Halaman Terakhir -last_page_label=Pergi ke Halaman Terakhir -page_rotate_cw.title=Berputar ikut arah Jam -page_rotate_cw.label=Berputar ikut arah Jam -page_rotate_cw_label=Berputar ikut arah Jam -page_rotate_ccw.title=Pusing berlawan arah jam -page_rotate_ccw.label=Pusing berlawan arah jam -page_rotate_ccw_label=Pusing berlawan arah jam - -cursor_text_select_tool.title=Dayakan Alatan Pilihan Teks -cursor_text_select_tool_label=Alatan Pilihan Teks -cursor_hand_tool.title=Dayakan Alatan Tangan -cursor_hand_tool_label=Alatan Tangan - -scroll_vertical.title=Guna Skrol Menegak -scroll_vertical_label=Skrol Menegak -scroll_horizontal.title=Guna Skrol Mengufuk -scroll_horizontal_label=Skrol Mengufuk -scroll_wrapped.title=Guna Skrol Berbalut -scroll_wrapped_label=Skrol Berbalut - -spread_none.title=Jangan hubungkan hamparan halaman -spread_none_label=Tanpa Hamparan -spread_odd.title=Hubungkan hamparan halaman dengan halaman nombor ganjil -spread_odd_label=Hamparan Ganjil -spread_even.title=Hubungkan hamparan halaman dengan halaman nombor genap -spread_even_label=Hamparan Seimbang - -# Document properties dialog box -document_properties.title=Sifat Dokumen… -document_properties_label=Sifat Dokumen… -document_properties_file_name=Nama fail: -document_properties_file_size=Saiz fail: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bait) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bait) -document_properties_title=Tajuk: -document_properties_author=Pengarang: -document_properties_subject=Subjek: -document_properties_keywords=Kata kunci: -document_properties_creation_date=Masa Dicipta: -document_properties_modification_date=Tarikh Ubahsuai: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Pencipta: -document_properties_producer=Pengeluar PDF: -document_properties_version=Versi PDF: -document_properties_page_count=Kiraan Laman: -document_properties_page_size=Saiz Halaman: -document_properties_page_size_unit_inches=dalam -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=potret -document_properties_page_size_orientation_landscape=landskap -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Paparan Web Pantas: -document_properties_linearized_yes=Ya -document_properties_linearized_no=Tidak -document_properties_close=Tutup - -print_progress_message=Menyediakan dokumen untuk dicetak… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Batal - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Togol Bar Sisi -toggle_sidebar_notification.title=Togol Sidebar (dokumen mengandungi rangka/attachments) -toggle_sidebar_label=Togol Bar Sisi -document_outline.title=Papar Rangka Dokumen (klik-dua-kali untuk kembangkan/kolaps semua item) -document_outline_label=Rangka Dokumen -attachments.title=Papar Lampiran -attachments_label=Lampiran -thumbs.title=Papar Thumbnails -thumbs_label=Imej kecil -findbar.title=Cari didalam Dokumen -findbar_label=Cari - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Halaman {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Halaman Imej kecil {{page}} - -# Find panel button title and messages -find_input.title=Cari -find_input.placeholder=Cari dalam dokumen… -find_previous.title=Cari teks frasa berkenaan yang terdahulu -find_previous_label=Dahulu -find_next.title=Cari teks frasa berkenaan yang berikut -find_next_label=Berikut -find_highlight=Serlahkan semua -find_match_case_label=Huruf sepadan -find_entire_word_label=Seluruh perkataan -find_reached_top=Mencapai teratas daripada dokumen, sambungan daripada bawah -find_reached_bottom=Mencapai terakhir daripada dokumen, sambungan daripada atas -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} daripada {{total}} padanan -find_match_count[two]={{current}} daripada {{total}} padanan -find_match_count[few]={{current}} daripada {{total}} padanan -find_match_count[many]={{current}} daripada {{total}} padanan -find_match_count[other]={{current}} daripada {{total}} padanan -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Lebih daripada {{limit}} padanan -find_match_count_limit[one]=Lebih daripada {{limit}} padanan -find_match_count_limit[two]=Lebih daripada {{limit}} padanan -find_match_count_limit[few]=Lebih daripada {{limit}} padanan -find_match_count_limit[many]=Lebih daripada {{limit}} padanan -find_match_count_limit[other]=Lebih daripada {{limit}} padanan -find_not_found=Frasa tidak ditemui - -# Error panel labels -error_more_info=Maklumat Lanjut -error_less_info=Kurang Informasi -error_close=Tutup -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mesej: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Timbun: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fail: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Garis: {{line}} -rendering_error=Ralat berlaku ketika memberikan halaman. - -# Predefined zoom values -page_scale_width=Lebar Halaman -page_scale_fit=Muat Halaman -page_scale_auto=Zoom Automatik -page_scale_actual=Saiz Sebenar -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Ralat -loading_error=Masalah berlaku semasa menuatkan sebuah PDF. -invalid_file_error=Tidak sah atau fail PDF rosak. -missing_file_error=Fail PDF Hilang. -unexpected_response_error=Respon pelayan yang tidak dijangka. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Anotasi] -password_label=Masukan kata kunci untuk membuka fail PDF ini. -password_invalid=Kata laluan salah. Cuba lagi. -password_ok=OK -password_cancel=Batal - -printing_not_supported=Amaran: Cetakan ini tidak sepenuhnya disokong oleh pelayar ini. -printing_not_ready=Amaran: PDF tidak sepenuhnya dimuatkan untuk dicetak. -web_fonts_disabled=Fon web dinyahdayakan: tidak dapat menggunakan fon terbenam PDF. -document_colors_not_allowed=Dokumen PDF tidak dibenarkan untuk menggunakan warna sendiri: “Izinkan halaman untuk memilih warna sendiri” telah dinyahaktifkan dalam pelayar. diff --git a/cookbook/static/pdfjs/locale/my/viewer.properties b/cookbook/static/pdfjs/locale/my/viewer.properties deleted file mode 100644 index f5676198f..000000000 --- a/cookbook/static/pdfjs/locale/my/viewer.properties +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=အရင် စာမျက်နှာ -previous_label=အရင်နေရာ -next.title=ရှေ့ စာမျက်နှာ -next_label=နောက်တခု - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=စာမျက်နှာ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} ၏ -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} ၏ {{pageNumber}}) - -zoom_out.title=ချုံ့ပါ -zoom_out_label=ချုံ့ပါ -zoom_in.title=ချဲ့ပါ -zoom_in_label=ချဲ့ပါ -zoom.title=ချုံ့/ချဲ့ပါ -presentation_mode.title=ဆွေးနွေးတင်ပြစနစ်သို့ ကူးပြောင်းပါ -presentation_mode_label=ဆွေးနွေးတင်ပြစနစ် -open_file.title=ဖိုင်အားဖွင့်ပါ။ -open_file_label=ဖွင့်ပါ -print.title=ပုံနှိုပ်ပါ -print_label=ပုံနှိုပ်ပါ -download.title=ကူးဆွဲ -download_label=ကူးဆွဲ -bookmark.title=လက်ရှိ မြင်ကွင်း (ဝင်းဒိုးအသစ်မှာ ကူးပါ သို့မဟုတ် ဖွင့်ပါ) -bookmark_label=လက်ရှိ မြင်ကွင်း - -# Secondary toolbar and context menu -tools.title=ကိရိယာများ -tools_label=ကိရိယာများ -first_page.title=ပထမ စာမျက်နှာသို့ -first_page.label=ပထမ စာမျက်နှာသို့ -first_page_label=ပထမ စာမျက်နှာသို့ -last_page.title=နောက်ဆုံး စာမျက်နှာသို့ -last_page.label=နောက်ဆုံး စာမျက်နှာသို့ -last_page_label=နောက်ဆုံး စာမျက်နှာသို့ -page_rotate_cw.title=နာရီလက်တံ အတိုင်း -page_rotate_cw.label=နာရီလက်တံ အတိုင်း -page_rotate_cw_label=နာရီလက်တံ အတိုင်း -page_rotate_ccw.title=နာရီလက်တံ ပြောင်းပြန် -page_rotate_ccw.label=နာရီလက်တံ ပြောင်းပြန် -page_rotate_ccw_label=နာရီလက်တံ ပြောင်းပြန် - - - - -# Document properties dialog box -document_properties.title=မှတ်တမ်းမှတ်ရာ ဂုဏ်သတ္တိများ -document_properties_label=မှတ်တမ်းမှတ်ရာ ဂုဏ်သတ္တိများ -document_properties_file_name=ဖိုင် : -document_properties_file_size=ဖိုင်ဆိုဒ် : -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} ကီလိုဘိုတ် ({{size_b}}ဘိုတ်) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=ခေါင်းစဉ်‌ - -document_properties_author=ရေးသားသူ: -document_properties_subject=အကြောင်းအရာ:\u0020 -document_properties_keywords=သော့ချက် စာလုံး: -document_properties_creation_date=ထုတ်လုပ်ရက်စွဲ: -document_properties_modification_date=ပြင်ဆင်ရက်စွဲ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=ဖန်တီးသူ: -document_properties_producer=PDF ထုတ်လုပ်သူ: -document_properties_version=PDF ဗားရှင်း: -document_properties_page_count=စာမျက်နှာအရေအတွက်: -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_close=ပိတ် - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ပယ်​ဖျက်ပါ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=ဘေးတန်းဖွင့်ပိတ် -toggle_sidebar_notification.title=ဘေးဘားတန်းကို အဖွင့်/အပိတ် လုပ်ရန် (စာတမ်းတွင် outline/attachments ပါဝင်နိုင်သည်) -toggle_sidebar_label=ဖွင့်ပိတ် ဆလိုက်ဒါ -document_outline.title=စာတမ်းအကျဉ်းချုပ်ကို ပြပါ (စာရင်းအားလုံးကို ချုံ့/ချဲ့ရန် ကလစ်နှစ်ချက်နှိပ်ပါ) -document_outline_label=စာတမ်းအကျဉ်းချုပ် -attachments.title=တွဲချက်များ ပြပါ -attachments_label=တွဲထားချက်များ -thumbs.title=ပုံရိပ်ငယ်များကို ပြပါ -thumbs_label=ပုံရိပ်ငယ်များ -findbar.title=Find in Document -findbar_label=ရှာဖွေပါ - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=စာမျက်နှာ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=စာမျက်နှာရဲ့ ပုံရိပ်ငယ် {{page}} - -# Find panel button title and messages -find_input.title=ရှာဖွေပါ -find_input.placeholder=စာတမ်းထဲတွင် ရှာဖွေရန်… -find_previous.title=စကားစုရဲ့ အရင် ​ဖြစ်ပွားမှုကို ရှာဖွေပါ -find_previous_label=နောက်သို့ -find_next.title=စကားစုရဲ့ နောက်ထပ် ​ဖြစ်ပွားမှုကို ရှာဖွေပါ -find_next_label=ရှေ့သို့ -find_highlight=အားလုံးကို မျဉ်းသားပါ -find_match_case_label=စာလုံး တိုက်ဆိုင်ပါ -find_reached_top=စာမျက်နှာထိပ် ရောက်နေပြီ၊ အဆုံးကနေ ပြန်စပါ -find_reached_bottom=စာမျက်နှာအဆုံး ရောက်နေပြီ၊ ထိပ်ကနေ ပြန်စပါ -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_not_found=စကားစု မတွေ့ရဘူး - -# Error panel labels -error_more_info=နောက်ထပ်အချက်အလက်များ -error_less_info=အနည်းငယ်မျှသော သတင်းအချက်အလက် -error_close=ပိတ် -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=မက်ဆေ့ - {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=အထပ် - {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ဖိုင် {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=လိုင်း - {{line}} -rendering_error=စာမျက်နှာကို ပုံဖော်နေချိန်မှာ အမှားတစ်ခုတွေ့ရပါတယ်။ - -# Predefined zoom values -page_scale_width=စာမျက်နှာ အကျယ် -page_scale_fit=စာမျက်နှာ ကွက်တိ -page_scale_auto=အလိုအလျောက် ချုံ့ချဲ့ -page_scale_actual=အမှန်တကယ်ရှိတဲ့ အရွယ် -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=အမှား -loading_error=PDF ဖိုင် ကိုဆွဲတင်နေချိန်မှာ အမှားတစ်ခုတွေ့ရပါတယ်။ -invalid_file_error=မရသော သို့ ပျက်နေသော PDF ဖိုင် -missing_file_error=PDF ပျောက်ဆုံး -unexpected_response_error=မမျှော်လင့်ထားသော ဆာဗာမှ ပြန်ကြားချက် - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} အဓိပ္ပာယ်ဖွင့်ဆိုချက်] -password_label=ယခု PDF ကို ဖွင့်ရန် စကားဝှက်ကို ရိုက်ပါ။ -password_invalid=စာဝှက် မှားသည်။ ထပ်ကြိုးစားကြည့်ပါ။ -password_ok=OK -password_cancel=ပယ်​ဖျက်ပါ - -printing_not_supported=သတိပေးချက်၊ပရင့်ထုတ်ခြင်းကိုဤဘယောက်ဆာသည် ပြည့်ဝစွာထောက်ပံ့မထားပါ ။ -printing_not_ready=သတိပေးချက်: ယခု PDF ဖိုင်သည် ပုံနှိပ်ရန် မပြည့်စုံပါ -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. -document_colors_not_allowed=PDF ဖိုင်အား ၎င်းဤ ကိုယ်ပိုင်အရောင်များကို အသုံးပြုခွင့်မပေးထားပါ ။ 'စာမျက်နှာအားလုံးအားအရောင်ရွေးချယ်ခွင့်' အား ယခု ဘယောက်ဆာတွင် ပိတ်ထားခြင်းကြောင့်ဖြစ် သှ် diff --git a/cookbook/static/pdfjs/locale/nb-NO/viewer.properties b/cookbook/static/pdfjs/locale/nb-NO/viewer.properties deleted file mode 100644 index 5612abb0b..000000000 --- a/cookbook/static/pdfjs/locale/nb-NO/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Forrige side -previous_label=Forrige -next.title=Neste side -next_label=Neste - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Side -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=av {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} av {{pagesCount}}) - -zoom_out.title=Zoom ut -zoom_out_label=Zoom ut -zoom_in.title=Zoom inn -zoom_in_label=Zoom inn -zoom.title=Zoom -presentation_mode.title=Bytt til presentasjonsmodus -presentation_mode_label=Presentasjonsmodus -open_file.title=Åpne fil -open_file_label=Åpne -print.title=Skriv ut -print_label=Skriv ut -download.title=Last ned -download_label=Last ned -bookmark.title=Nåværende visning (kopier eller åpne i et nytt vindu) -bookmark_label=Nåværende visning - -# Secondary toolbar and context menu -tools.title=Verktøy -tools_label=Verktøy -first_page.title=Gå til første side -first_page.label=Gå til første side -first_page_label=Gå til første side -last_page.title=Gå til siste side -last_page.label=Gå til siste side -last_page_label=Gå til siste side -page_rotate_cw.title=Roter med klokken -page_rotate_cw.label=Roter med klokken -page_rotate_cw_label=Roter med klokken -page_rotate_ccw.title=Roter mot klokken -page_rotate_ccw.label=Roter mot klokken -page_rotate_ccw_label=Roter mot klokken - -cursor_text_select_tool.title=Aktiver tekstmarkeringsverktøy -cursor_text_select_tool_label=Tekstmarkeringsverktøy -cursor_hand_tool.title=Aktiver handverktøy -cursor_hand_tool_label=Handverktøy - -scroll_vertical.title=Bruk vertikal rulling -scroll_vertical_label=Vertikal rulling -scroll_horizontal.title=Bruk horisontal rulling -scroll_horizontal_label=Horisontal rulling -scroll_wrapped.title=Bruk flersiderulling -scroll_wrapped_label=Flersiderulling - -spread_none.title=Vis enkeltsider -spread_none_label=Enkeltsider -spread_odd.title=Vis oppslag med ulike sidenumre til venstre -spread_odd_label=Oppslag med forside -spread_even.title=Vis oppslag med like sidenumre til venstre -spread_even_label=Oppslag uten forside - -# Document properties dialog box -document_properties.title=Dokumentegenskaper … -document_properties_label=Dokumentegenskaper … -document_properties_file_name=Filnavn: -document_properties_file_size=Filstørrelse: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Dokumentegenskaper … -document_properties_author=Forfatter: -document_properties_subject=Emne: -document_properties_keywords=Nøkkelord: -document_properties_creation_date=Opprettet dato: -document_properties_modification_date=Endret dato: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Opprettet av: -document_properties_producer=PDF-verktøy: -document_properties_version=PDF-versjon: -document_properties_page_count=Sideantall: -document_properties_page_size=Sidestørrelse: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=stående -document_properties_page_size_orientation_landscape=liggende -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Hurtig nettvisning: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nei -document_properties_close=Lukk - -print_progress_message=Forbereder dokument for utskrift … -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Avbryt - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Slå av/på sidestolpe -toggle_sidebar_notification.title=Vis/gjem sidestolpe (dokumentet inneholder oversikt/vedlegg) -toggle_sidebar_label=Slå av/på sidestolpe -document_outline.title=Vis dokumentdisposisjonen (dobbeltklikk for å utvide/skjule alle elementer) -document_outline_label=Dokumentdisposisjon -attachments.title=Vis vedlegg -attachments_label=Vedlegg -thumbs.title=Vis miniatyrbilde -thumbs_label=Miniatyrbilde -findbar.title=Finn i dokumentet -findbar_label=Finn - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Side {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Side {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatyrbilde av side {{page}} - -# Find panel button title and messages -find_input.title=Søk -find_input.placeholder=Søk i dokument… -find_previous.title=Finn forrige forekomst av frasen -find_previous_label=Forrige -find_next.title=Finn neste forekomst av frasen -find_next_label=Neste -find_highlight=Uthev alle -find_match_case_label=Skill store/små bokstaver -find_entire_word_label=Hele ord -find_reached_top=Nådde toppen av dokumentet, fortsetter fra bunnen -find_reached_bottom=Nådde bunnen av dokumentet, fortsetter fra toppen -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} av {{total}} treff -find_match_count[two]={{current}} av {{total}} treff -find_match_count[few]={{current}} av {{total}} treff -find_match_count[many]={{current}} av {{total}} treff -find_match_count[other]={{current}} av {{total}} treff -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mer enn {{limit}} treff -find_match_count_limit[one]=Mer enn {{limit}} treff -find_match_count_limit[two]=Mer enn {{limit}} treff -find_match_count_limit[few]=Mer enn {{limit}} treff -find_match_count_limit[many]=Mer enn {{limit}} treff -find_match_count_limit[other]=Mer enn {{limit}} treff -find_not_found=Fant ikke teksten - -# Error panel labels -error_more_info=Mer info -error_less_info=Mindre info -error_close=Lukk -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (bygg: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Melding: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stakk: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fil: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linje: {{line}} -rendering_error=En feil oppstod ved opptegning av siden. - -# Predefined zoom values -page_scale_width=Sidebredde -page_scale_fit=Tilpass til siden -page_scale_auto=Automatisk zoom -page_scale_actual=Virkelig størrelse -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Feil -loading_error=En feil oppstod ved lasting av PDF. -invalid_file_error=Ugyldig eller skadet PDF-fil. -missing_file_error=Manglende PDF-fil. -unexpected_response_error=Uventet serverrespons. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} annotasjon] -password_label=Skriv inn passordet for å åpne denne PDF-filen. -password_invalid=Ugyldig passord. Prøv igjen. -password_ok=OK -password_cancel=Avbryt - -printing_not_supported=Advarsel: Utskrift er ikke fullstendig støttet av denne nettleseren. -printing_not_ready=Advarsel: PDF er ikke fullstendig innlastet for utskrift. -web_fonts_disabled=Web-fonter er avslått: Kan ikke bruke innbundne PDF-fonter. -document_colors_not_allowed=PDF-dokumenter tillates ikke å bruke deres egne farger: "Tillat sider å velge egne farger" er deaktivert i nettleseren. diff --git a/cookbook/static/pdfjs/locale/ne-NP/viewer.properties b/cookbook/static/pdfjs/locale/ne-NP/viewer.properties deleted file mode 100644 index 13bf69ba9..000000000 --- a/cookbook/static/pdfjs/locale/ne-NP/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=अघिल्लो पृष्ठ -previous_label=अघिल्लो -next.title=पछिल्लो पृष्ठ -next_label=पछिल्लो - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=पृष्ठ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} मध्ये -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pagesCount}} को {{pageNumber}}) - -zoom_out.title=जुम घटाउनुहोस् -zoom_out_label=जुम घटाउनुहोस् -zoom_in.title=जुम बढाउनुहोस् -zoom_in_label=जुम बढाउनुहोस् -zoom.title=जुम गर्नुहोस् -presentation_mode.title=प्रस्तुति मोडमा जानुहोस् -presentation_mode_label=प्रस्तुति मोड -open_file.title=फाइल खोल्नुहोस् -open_file_label=खोल्नुहोस् -print.title=मुद्रण गर्नुहोस् -print_label=मुद्रण गर्नुहोस् -download.title=डाउनलोडहरू -download_label=डाउनलोडहरू -bookmark.title=वर्तमान दृश्य (प्रतिलिपि गर्नुहोस् वा नयाँ सञ्झ्यालमा खुल्नुहोस्) -bookmark_label=हालको दृश्य - -# Secondary toolbar and context menu -tools.title=औजारहरू -tools_label=औजारहरू -first_page.title=पहिलो पृष्ठमा जानुहोस् -first_page.label=पहिलो पृष्ठमा जानुहोस् -first_page_label=पहिलो पृष्ठमा जानुहोस् -last_page.title=पछिल्लो पृष्ठमा जानुहोस् -last_page.label=पछिल्लो पृष्ठमा जानुहोस् -last_page_label=पछिल्लो पृष्ठमा जानुहोस् -page_rotate_cw.title=घडीको दिशामा घुमाउनुहोस् -page_rotate_cw.label=घडीको दिशामा घुमाउनुहोस् -page_rotate_cw_label=घडीको दिशामा घुमाउनुहोस् -page_rotate_ccw.title=घडीको विपरित दिशामा घुमाउनुहोस् -page_rotate_ccw.label=घडीको विपरित दिशामा घुमाउनुहोस् -page_rotate_ccw_label=घडीको विपरित दिशामा घुमाउनुहोस् - -cursor_text_select_tool.title=पाठ चयन उपकरण सक्षम गर्नुहोस् -cursor_text_select_tool_label=पाठ चयन उपकरण -cursor_hand_tool.title=हाते उपकरण सक्षम गर्नुहोस् -cursor_hand_tool_label=हाते उपकरण - -# Document properties dialog box -document_properties.title=कागजात विशेषताहरू... -document_properties_label=कागजात विशेषताहरू... -document_properties_file_name=फाइल नाम: -document_properties_file_size=फाइल आकार: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=शीर्षक: -document_properties_author=लेखक: -document_properties_subject=विषयः -document_properties_keywords=शब्दकुञ्जीः -document_properties_creation_date=सिर्जना गरिएको मिति: -document_properties_modification_date=परिमार्जित मिति: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=सर्जक: -document_properties_producer=PDF निर्माता: -document_properties_version=PDF संस्करण -document_properties_page_count=पृष्ठ गणना: -document_properties_close=बन्द गर्नुहोस् - -print_progress_message=मुद्रणका लागि कागजात तयारी गरिदै… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=रद्द गर्नुहोस् - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=टगल साइडबार -toggle_sidebar_notification.title=साइडबार टगल गर्नुहोस् (कागजातमा समावेश भएको कुराहरू रूपरेखा/attachments) -toggle_sidebar_label=टगल साइडबार -document_outline.title=कागजातको रूपरेखा देखाउनुहोस् (सबै वस्तुहरू विस्तार/पतन गर्न डबल-क्लिक गर्नुहोस्) -document_outline_label=दस्तावेजको रूपरेखा -attachments.title=संलग्नहरू देखाउनुहोस् -attachments_label=संलग्नकहरू -thumbs.title=थम्बनेलहरू देखाउनुहोस् -thumbs_label=थम्बनेलहरू -findbar.title=कागजातमा फेला पार्नुहोस् -findbar_label=फेला पार्नुहोस् - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=पृष्ठ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} पृष्ठको थम्बनेल - -# Find panel button title and messages -find_input.title=फेला पार्नुहोस् -find_input.placeholder=कागजातमा फेला पार्नुहोस्… -find_previous.title=यस वाक्यांशको अघिल्लो घटना फेला पार्नुहोस् -find_previous_label=अघिल्लो -find_next.title=यस वाक्यांशको पछिल्लो घटना फेला पार्नुहोस् -find_next_label=अर्को -find_highlight=सबै हाइलाइट गर्ने -find_match_case_label=केस जोडा मिलाउनुहोस् -find_reached_top=पृष्ठको शिर्षमा पुगीयो, तलबाट जारी गरिएको थियो -find_reached_bottom=पृष्ठको अन्त्यमा पुगीयो, शिर्षबाट जारी गरिएको थियो -find_not_found=वाक्यांश फेला परेन - -# Error panel labels -error_more_info=थप जानकारी -error_less_info=कम जानकारी -error_close=बन्द गर्नुहोस् -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=सन्देश: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=स्ट्याक: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=फाइल: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=लाइन: {{line}} -rendering_error=पृष्ठ प्रतिपादन गर्दा एउटा त्रुटि देखापर्‍यो। - -# Predefined zoom values -page_scale_width=पृष्ठ चौडाइ -page_scale_fit=पृष्ठ ठिक्क मिल्ने -page_scale_auto=स्वचालित जुम -page_scale_actual=वास्तविक आकार -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=त्रुटि -loading_error=यो PDF लोड गर्दा एउटा त्रुटि देखापर्‍यो। -invalid_file_error=अवैध वा दुषित PDF फाइल। -missing_file_error=हराईरहेको PDF फाइल। -unexpected_response_error=अप्रत्याशित सर्भर प्रतिक्रिया। - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=यस PDF फाइललाई खोल्न गोप्यशब्द प्रविष्ट गर्नुहोस्। -password_invalid=अवैध गोप्यशब्द। पुनः प्रयास गर्नुहोस्। -password_ok=ठिक छ -password_cancel=रद्द गर्नुहोस् - -printing_not_supported=चेतावनी: यो ब्राउजरमा मुद्रण पूर्णतया समर्थित छैन। -printing_not_ready=चेतावनी: PDF मुद्रणका लागि पूर्णतया लोड भएको छैन। -web_fonts_disabled=वेब फन्ट असक्षम छन्: एम्बेडेड PDF फन्ट प्रयोग गर्न असमर्थ। -document_colors_not_allowed=PDF कागजातहरूलाई आफ्नै रङ प्रयोग गर्न अनुमति छैन: 'पृष्ठलाई आफ्नै रङ चयन गर्न अनुमति दिने' ब्राउजरमा निष्क्रिय गरिएको छ। diff --git a/cookbook/static/pdfjs/locale/nl/viewer.properties b/cookbook/static/pdfjs/locale/nl/viewer.properties deleted file mode 100644 index af8fb681e..000000000 --- a/cookbook/static/pdfjs/locale/nl/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Vorige pagina -previous_label=Vorige -next.title=Volgende pagina -next_label=Volgende - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=van {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} van {{pagesCount}}) - -zoom_out.title=Uitzoomen -zoom_out_label=Uitzoomen -zoom_in.title=Inzoomen -zoom_in_label=Inzoomen -zoom.title=Zoomen -presentation_mode.title=Wisselen naar presentatiemodus -presentation_mode_label=Presentatiemodus -open_file.title=Bestand openen -open_file_label=Openen -print.title=Afdrukken -print_label=Afdrukken -download.title=Downloaden -download_label=Downloaden -bookmark.title=Huidige weergave (kopiëren of openen in nieuw venster) -bookmark_label=Huidige weergave - -# Secondary toolbar and context menu -tools.title=Hulpmiddelen -tools_label=Hulpmiddelen -first_page.title=Naar eerste pagina gaan -first_page.label=Naar eerste pagina gaan -first_page_label=Naar eerste pagina gaan -last_page.title=Naar laatste pagina gaan -last_page.label=Naar laatste pagina gaan -last_page_label=Naar laatste pagina gaan -page_rotate_cw.title=Rechtsom draaien -page_rotate_cw.label=Rechtsom draaien -page_rotate_cw_label=Rechtsom draaien -page_rotate_ccw.title=Linksom draaien -page_rotate_ccw.label=Linksom draaien -page_rotate_ccw_label=Linksom draaien - -cursor_text_select_tool.title=Tekstselectiehulpmiddel inschakelen -cursor_text_select_tool_label=Tekstselectiehulpmiddel -cursor_hand_tool.title=Handhulpmiddel inschakelen -cursor_hand_tool_label=Handhulpmiddel - -scroll_vertical.title=Verticaal scrollen gebruiken -scroll_vertical_label=Verticaal scrollen -scroll_horizontal.title=Horizontaal scrollen gebruiken -scroll_horizontal_label=Horizontaal scrollen -scroll_wrapped.title=Scrollen met terugloop gebruiken -scroll_wrapped_label=Scrollen met terugloop - -spread_none.title=Dubbele pagina’s niet samenvoegen -spread_none_label=Geen dubbele pagina’s -spread_odd.title=Dubbele pagina’s samenvoegen vanaf oneven pagina’s -spread_odd_label=Oneven dubbele pagina’s -spread_even.title=Dubbele pagina’s samenvoegen vanaf even pagina’s -spread_even_label=Even dubbele pagina’s - -# Document properties dialog box -document_properties.title=Documenteigenschappen… -document_properties_label=Documenteigenschappen… -document_properties_file_name=Bestandsnaam: -document_properties_file_size=Bestandsgrootte: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titel: -document_properties_author=Auteur: -document_properties_subject=Onderwerp: -document_properties_keywords=Trefwoorden: -document_properties_creation_date=Aanmaakdatum: -document_properties_modification_date=Wijzigingsdatum: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Maker: -document_properties_producer=PDF-producent: -document_properties_version=PDF-versie: -document_properties_page_count=Aantal pagina’s: -document_properties_page_size=Paginagrootte: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=staand -document_properties_page_size_orientation_landscape=liggend -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Snelle webweergave: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nee -document_properties_close=Sluiten - -print_progress_message=Document voorbereiden voor afdrukken… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Annuleren - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Zijbalk in-/uitschakelen -toggle_sidebar_notification.title=Zijbalk in-/uitschakelen (document bevat overzicht/bijlagen) -toggle_sidebar_label=Zijbalk in-/uitschakelen -document_outline.title=Documentoverzicht tonen (dubbelklik om alle items uit/samen te vouwen) -document_outline_label=Documentoverzicht -attachments.title=Bijlagen tonen -attachments_label=Bijlagen -thumbs.title=Miniaturen tonen -thumbs_label=Miniaturen -findbar.title=Zoeken in document -findbar_label=Zoeken - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pagina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatuur van pagina {{page}} - -# Find panel button title and messages -find_input.title=Zoeken -find_input.placeholder=Zoeken in document… -find_previous.title=De vorige overeenkomst van de tekst zoeken -find_previous_label=Vorige -find_next.title=De volgende overeenkomst van de tekst zoeken -find_next_label=Volgende -find_highlight=Alles markeren -find_match_case_label=Hoofdlettergevoelig -find_entire_word_label=Hele woorden -find_reached_top=Bovenkant van document bereikt, doorgegaan vanaf onderkant -find_reached_bottom=Onderkant van document bereikt, doorgegaan vanaf bovenkant -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} van {{total}} overeenkomst -find_match_count[two]={{current}} van {{total}} overeenkomsten -find_match_count[few]={{current}} van {{total}} overeenkomsten -find_match_count[many]={{current}} van {{total}} overeenkomsten -find_match_count[other]={{current}} van {{total}} overeenkomsten -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Meer dan {{limit}} overeenkomsten -find_match_count_limit[one]=Meer dan {{limit}} overeenkomst -find_match_count_limit[two]=Meer dan {{limit}} overeenkomsten -find_match_count_limit[few]=Meer dan {{limit}} overeenkomsten -find_match_count_limit[many]=Meer dan {{limit}} overeenkomsten -find_match_count_limit[other]=Meer dan {{limit}} overeenkomsten -find_not_found=Tekst niet gevonden - -# Error panel labels -error_more_info=Meer informatie -error_less_info=Minder informatie -error_close=Sluiten -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Bericht: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Bestand: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Regel: {{line}} -rendering_error=Er is een fout opgetreden bij het weergeven van de pagina. - -# Predefined zoom values -page_scale_width=Paginabreedte -page_scale_fit=Hele pagina -page_scale_auto=Automatisch zoomen -page_scale_actual=Werkelijke grootte -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fout -loading_error=Er is een fout opgetreden bij het laden van de PDF. -invalid_file_error=Ongeldig of beschadigd PDF-bestand. -missing_file_error=PDF-bestand ontbreekt. -unexpected_response_error=Onverwacht serverantwoord. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}-aantekening] -password_label=Voer het wachtwoord in om dit PDF-bestand te openen. -password_invalid=Ongeldig wachtwoord. Probeer het opnieuw. -password_ok=OK -password_cancel=Annuleren - -printing_not_supported=Waarschuwing: afdrukken wordt niet volledig ondersteund door deze browser. -printing_not_ready=Waarschuwing: de PDF is niet volledig geladen voor afdrukken. -web_fonts_disabled=Weblettertypen zijn uitgeschakeld: gebruik van ingebedde PDF-lettertypen is niet mogelijk. -document_colors_not_allowed=PDF-documenten mogen hun eigen kleuren niet gebruiken: ‘Pagina’s toestaan om hun eigen kleuren te kiezen’ is uitgeschakeld in de browser. diff --git a/cookbook/static/pdfjs/locale/nn-NO/viewer.properties b/cookbook/static/pdfjs/locale/nn-NO/viewer.properties deleted file mode 100644 index ad6de8f81..000000000 --- a/cookbook/static/pdfjs/locale/nn-NO/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Føregåande side -previous_label=Føregåande -next.title=Neste side -next_label=Neste - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Side -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=av {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} av {{pagesCount}}) - -zoom_out.title=Zoom ut -zoom_out_label=Zoom ut -zoom_in.title=Zoom inn -zoom_in_label=Zoom inn -zoom.title=Zoom -presentation_mode.title=Byt til presentasjonsmodus -presentation_mode_label=Presentasjonsmodus -open_file.title=Opne fil -open_file_label=Opne -print.title=Skriv ut -print_label=Skriv ut -download.title=Last ned -download_label=Last ned -bookmark.title=Gjeldande vising (kopier eller opne i nytt vindauge) -bookmark_label=Gjeldande vising - -# Secondary toolbar and context menu -tools.title=Verktøy -tools_label=Verktøy -first_page.title=Gå til første side -first_page.label=Gå til første side -first_page_label=Gå til første side -last_page.title=Gå til siste side -last_page.label=Gå til siste side -last_page_label=Gå til siste side -page_rotate_cw.title=Roter med klokka -page_rotate_cw.label=Roter med klokka -page_rotate_cw_label=Roter med klokka -page_rotate_ccw.title=Roter mot klokka -page_rotate_ccw.label=Roter mot klokka -page_rotate_ccw_label=Roter mot klokka - -cursor_text_select_tool.title=Aktiver tekstmarkeringsverktøy -cursor_text_select_tool_label=Tekstmarkeringsverktøy -cursor_hand_tool.title=Aktiver handverktøy -cursor_hand_tool_label=Handverktøy - -scroll_vertical.title=Bruk vertikal rulling -scroll_vertical_label=Vertikal rulling -scroll_horizontal.title=Bruk horisontal rulling -scroll_horizontal_label=Horisontal rulling -scroll_wrapped.title=Bruk fleirsiderulling -scroll_wrapped_label=Fleirsiderulling - -spread_none.title=Vis enkeltsider -spread_none_label=Enkeltside -spread_odd.title=Vis oppslag med ulike sidenummer til venstre -spread_odd_label=Oppslag med framside -spread_even.title=Vis oppslag med like sidenummmer til venstre -spread_even_label=Oppslag utan framside - -# Document properties dialog box -document_properties.title=Dokumenteigenskapar… -document_properties_label=Dokumenteigenskapar… -document_properties_file_name=Filnamn: -document_properties_file_size=Filstorleik: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Tittel: -document_properties_author=Forfattar: -document_properties_subject=Emne: -document_properties_keywords=Stikkord: -document_properties_creation_date=Dato oppretta: -document_properties_modification_date=Dato endra: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Oppretta av: -document_properties_producer=PDF-verktøy: -document_properties_version=PDF-versjon: -document_properties_page_count=Sidetal: -document_properties_page_size=Sidestørrelse: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=ståande -document_properties_page_size_orientation_landscape=liggande -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Brev -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Rask nettvising: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nei -document_properties_close=Lat att - -print_progress_message=Førebur dokumentet for utskrift… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Avbryt - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Slå av/på sidestolpe -toggle_sidebar_notification.title=Vis/gøym sidestolpen (dokumentet inneheld oversikt/vedlegg) -toggle_sidebar_label=Slå av/på sidestolpe -document_outline.title=Vis dokumentdisposisjonen (dobbelklikk for å utvide/gøyme alle elementa) -document_outline_label=Dokumentdisposisjon -attachments.title=Vis vedlegg -attachments_label=Vedlegg -thumbs.title=Vis miniatyrbilde -thumbs_label=Miniatyrbilde -findbar.title=Finn i dokumentet -findbar_label=Finn - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Side {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Side {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatyrbilde av side {{page}} - -# Find panel button title and messages -find_input.title=Søk -find_input.placeholder=Søk i dokument… -find_previous.title=Finn førre førekomst av frasen -find_previous_label=Førre -find_next.title=Finn neste førekomst av frasen -find_next_label=Neste -find_highlight=Uthev alle -find_match_case_label=Skil store/små bokstavar -find_entire_word_label=Heile ord -find_reached_top=Nådde toppen av dokumentet, fortset frå botnen -find_reached_bottom=Nådde botnen av dokumentet, fortset frå toppen -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} av {{total}} treff -find_match_count[two]={{current}} av {{total}} treff -find_match_count[few]={{current}} av {{total}} treff -find_match_count[many]={{current}} av {{total}} treff -find_match_count[other]={{current}} av {{total}} treff -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Meir enn {{limit}} treff -find_match_count_limit[one]=Meir enn {{limit}} treff -find_match_count_limit[two]=Meir enn {{limit}} treff -find_match_count_limit[few]=Meir enn {{limit}} treff -find_match_count_limit[many]=Meir enn {{limit}} treff -find_match_count_limit[other]=Meir enn {{limit}} treff -find_not_found=Fann ikkje teksten - -# Error panel labels -error_more_info=Meir info -error_less_info=Mindre info -error_close=Lat att -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (bygg: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Melding: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stakk: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fil: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linje: {{line}} -rendering_error=Ein feil oppstod under vising av sida. - -# Predefined zoom values -page_scale_width=Sidebreidde -page_scale_fit=Tilpass til sida -page_scale_auto=Automatisk skalering -page_scale_actual=Verkeleg storleik -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Feil -loading_error=Ein feil oppstod ved lasting av PDF. -invalid_file_error=Ugyldig eller korrupt PDF-fil. -missing_file_error=Manglande PDF-fil. -unexpected_response_error=Uventa tenarrespons. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} annotasjon] -password_label=Skriv inn passordet for å opne denne PDF-fila. -password_invalid=Ugyldig passord. Prøv igjen. -password_ok=OK -password_cancel=Avbryt - -printing_not_supported=Åtvaring: Utskrift er ikkje fullstendig støtta av denne nettlesaren. -printing_not_ready=Åtvaring: PDF ikkje fullstendig innlasta for utskrift. -web_fonts_disabled=Web-skrifter er slått av: Kan ikkje bruke innbundne PDF-skrifter. -document_colors_not_allowed=PDF-dokument kan ikkje bruke eigne fargar: «Tillat sider å velje eigne fargar» er deaktivert i nettlesaren. diff --git a/cookbook/static/pdfjs/locale/oc/viewer.properties b/cookbook/static/pdfjs/locale/oc/viewer.properties deleted file mode 100644 index 3732e943b..000000000 --- a/cookbook/static/pdfjs/locale/oc/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pagina precedenta -previous_label=Precedent -next.title=Pagina seguenta -next_label=Seguent - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=sus {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} sus {{pagesCount}}) - -zoom_out.title=Zoom arrièr -zoom_out_label=Zoom arrièr -zoom_in.title=Zoom avant -zoom_in_label=Zoom avant -zoom.title=Zoom -presentation_mode.title=Bascular en mòde presentacion -presentation_mode_label=Mòde Presentacion -open_file.title=Dobrir lo fichièr -open_file_label=Dobrir -print.title=Imprimir -print_label=Imprimir -download.title=Telecargar -download_label=Telecargar -bookmark.title=Afichatge corrent (copiar o dobrir dins una fenèstra novèla) -bookmark_label=Afichatge actual - -# Secondary toolbar and context menu -tools.title=Aisinas -tools_label=Aisinas -first_page.title=Anar a la primièra pagina -first_page.label=Anar a la primièra pagina -first_page_label=Anar a la primièra pagina -last_page.title=Anar a la darrièra pagina -last_page.label=Anar a la darrièra pagina -last_page_label=Anar a la darrièra pagina -page_rotate_cw.title=Rotacion orària -page_rotate_cw.label=Rotacion orària -page_rotate_cw_label=Rotacion orària -page_rotate_ccw.title=Rotacion antiorària -page_rotate_ccw.label=Rotacion antiorària -page_rotate_ccw_label=Rotacion antiorària - -cursor_text_select_tool.title=Activar l'aisina de seleccion de tèxte -cursor_text_select_tool_label=Aisina de seleccion de tèxte -cursor_hand_tool.title=Activar l’aisina man -cursor_hand_tool_label=Aisina man - -scroll_vertical.title=Utilizar lo desfilament vertical -scroll_vertical_label=Desfilament vertical -scroll_horizontal.title=Utilizar lo desfilament orizontal -scroll_horizontal_label=Desfilament orizontal -scroll_wrapped.title=Activar lo desfilament continú -scroll_wrapped_label=Desfilament continú - -spread_none.title=Agropar pas las paginas doas a doas -spread_none_label=Una sola pagina -spread_odd.title=Mostrar doas paginas en començant per las paginas imparas a esquèrra -spread_odd_label=Dobla pagina, impara a drecha -spread_even.title=Mostrar doas paginas en començant per las paginas paras a esquèrra -spread_even_label=Dobla pagina, para a drecha - -# Document properties dialog box -document_properties.title=Proprietats del document… -document_properties_label=Proprietats del document… -document_properties_file_name=Nom del fichièr : -document_properties_file_size=Talha del fichièr : -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} Ko ({{size_b}} octets) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} Mo ({{size_b}} octets) -document_properties_title=Títol : -document_properties_author=Autor : -document_properties_subject=Subjècte : -document_properties_keywords=Mots claus : -document_properties_creation_date=Data de creacion : -document_properties_modification_date=Data de modificacion : -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator : -document_properties_producer=Aisina de conversion PDF : -document_properties_version=Version PDF : -document_properties_page_count=Nombre de paginas : -document_properties_page_size=Talha de la pagina : -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=retrait -document_properties_page_size_orientation_landscape=païsatge -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letra -document_properties_page_size_name_legal=Document juridic -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista web rapida : -document_properties_linearized_yes=Òc -document_properties_linearized_no=Non -document_properties_close=Tampar - -print_progress_message=Preparacion del document per l’impression… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Anullar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Afichar/amagar lo panèl lateral -toggle_sidebar_notification.title=Afichar/amagar lo panèl lateral (lo document conten esquèmas/pèças juntas) -toggle_sidebar_label=Afichar/amagar lo panèl lateral -document_outline.title=Mostrar los esquèmas del document (dobleclicar per espandre/reduire totes los elements) -document_outline_label=Marcapaginas del document -attachments.title=Visualizar las pèças juntas -attachments_label=Pèças juntas -thumbs.title=Afichar las vinhetas -thumbs_label=Vinhetas -findbar.title=Cercar dins lo document -findbar_label=Recercar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pagina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Vinheta de la pagina {{page}} - -# Find panel button title and messages -find_input.title=Recercar -find_input.placeholder=Cercar dins lo document… -find_previous.title=Tròba l'ocurréncia precedenta de la frasa -find_previous_label=Precedent -find_next.title=Tròba l'ocurréncia venenta de la frasa -find_next_label=Seguent -find_highlight=Suslinhar tot -find_match_case_label=Respectar la cassa -find_entire_word_label=Mots entièrs -find_reached_top=Naut de la pagina atenh, perseguida del bas -find_reached_bottom=Bas de la pagina atench, perseguida al començament -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=Occuréncia {{current}} sus {{total}} -find_match_count[two]=Occuréncia {{current}} sus {{total}} -find_match_count[few]=Occuréncia {{current}} sus {{total}} -find_match_count[many]=Occuréncia {{current}} sus {{total}} -find_match_count[other]=Occuréncia {{current}} sus {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mai de {{limit}} occuréncias -find_match_count_limit[one]=Mai de {{limit}} occuréncia -find_match_count_limit[two]=Mai de {{limit}} occuréncias -find_match_count_limit[few]=Mai de {{limit}} occuréncias -find_match_count_limit[many]=Mai de {{limit}} occuréncias -find_match_count_limit[other]=Mai de {{limit}} occuréncias -find_not_found=Frasa pas trobada - -# Error panel labels -error_more_info=Mai de detalhs -error_less_info=Mens d'informacions -error_close=Tampar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (identificant de compilacion : {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Messatge : {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pila : {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fichièr : {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linha : {{line}} -rendering_error=Una error s'es produita pendent l'afichatge de la pagina. - -# Predefined zoom values -page_scale_width=Largor plena -page_scale_fit=Pagina entièra -page_scale_auto=Zoom automatic -page_scale_actual=Talha vertadièra -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=Una error s'es produita pendent lo cargament del fichièr PDF. -invalid_file_error=Fichièr PDF invalid o corromput. -missing_file_error=Fichièr PDF mancant. -unexpected_response_error=Responsa de servidor imprevista. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} a {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotacion {{type}}] -password_label=Picatz lo senhal per dobrir aqueste fichièr PDF. -password_invalid=Senhal incorrècte. Tornatz ensajar. -password_ok=D'acòrdi -password_cancel=Anullar - -printing_not_supported=Atencion : l'impression es pas completament gerida per aqueste navegador. -printing_not_ready=Atencion : lo PDF es pas entièrament cargat per lo poder imprimir. -web_fonts_disabled=Las poliças web son desactivadas : impossible d'utilizar las poliças integradas al PDF. -document_colors_not_allowed=Los documents PDF pòdon pas utilizar lors pròprias colors : « Autorizar las paginas web d'utilizar lors pròprias colors » es desactivat dins lo navegador. diff --git a/cookbook/static/pdfjs/locale/pa-IN/viewer.properties b/cookbook/static/pdfjs/locale/pa-IN/viewer.properties deleted file mode 100644 index e1ccb6541..000000000 --- a/cookbook/static/pdfjs/locale/pa-IN/viewer.properties +++ /dev/null @@ -1,246 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=ਪਿਛਲਾ ਸਫ਼ਾ -previous_label=ਪਿੱਛੇ -next.title=ਅਗਲਾ ਸਫ਼ਾ -next_label=ਅੱਗੇ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=ਸਫ਼ਾ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} ਵਿੱਚੋਂ -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages={{pagesCount}}) ਵਿੱਚੋਂ ({{pageNumber}} - -zoom_out.title=ਜ਼ੂਮ ਆਉਟ -zoom_out_label=ਜ਼ੂਮ ਆਉਟ -zoom_in.title=ਜ਼ੂਮ ਇਨ -zoom_in_label=ਜ਼ੂਮ ਇਨ -zoom.title=ਜ਼ੂਨ -presentation_mode.title=ਪਰਿਜੈਂਟੇਸ਼ਨ ਮੋਡ ਵਿੱਚ ਜਾਓ -presentation_mode_label=ਪਰਿਜੈਂਟੇਸ਼ਨ ਮੋਡ -open_file.title=ਫਾਈਲ ਨੂੰ ਖੋਲ੍ਹੋ -open_file_label=ਖੋਲ੍ਹੋ -print.title=ਪਰਿੰਟ -print_label=ਪਰਿੰਟ -download.title=ਡਾਊਨਲੋਡ -download_label=ਡਾਊਨਲੋਡ -bookmark.title=ਮੌਜੂਦਾ ਝਲਕ (ਨਵੀਂ ਵਿੰਡੋ ਵਿੱਚ ਕਾਪੀ ਕਰੋ ਜਾਂ ਖੋਲ੍ਹੋ) -bookmark_label=ਮੌਜੂਦਾ ਝਲਕ - -# Secondary toolbar and context menu -tools.title=ਟੂਲ -tools_label=ਟੂਲ -first_page.title=ਪਹਿਲੇ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -first_page.label=ਪਹਿਲੇ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -first_page_label=ਪਹਿਲੇ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -last_page.title=ਆਖਰੀ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -last_page.label=ਆਖਰੀ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -last_page_label=ਆਖਰੀ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ -page_rotate_cw.title=ਸੱਜੇ ਦਾਅ ਘੁੰਮਾਓ -page_rotate_cw.label=ਸੱਜੇ ਦਾਅ ਘੁੰਮਾਉ -page_rotate_cw_label=ਸੱਜੇ ਦਾਅ ਘੁੰਮਾਓ -page_rotate_ccw.title=ਖੱਬੇ ਦਾਅ ਘੁੰਮਾਓ -page_rotate_ccw.label=ਖੱਬੇ ਦਾਅ ਘੁੰਮਾਉ -page_rotate_ccw_label=ਖੱਬੇ ਦਾਅ ਘੁੰਮਾਓ - -cursor_text_select_tool.title=ਲਿਖਤ ਚੋਣ ਟੂਲ ਸਮਰੱਥ ਕਰੋ -cursor_text_select_tool_label=ਲਿਖਤ ਚੋਣ ਟੂਲ -cursor_hand_tool.title=ਹੱਥ ਟੂਲ ਸਮਰੱਥ ਕਰੋ -cursor_hand_tool_label=ਹੱਥ ਟੂਲ - -scroll_vertical.title=ਖੜ੍ਹਵੇਂ ਸਕਰਾਉਣ ਨੂੰ ਵਰਤੋਂ -scroll_vertical_label=ਖੜ੍ਹਵਾਂ ਸਰਕਾਉਣਾ -scroll_horizontal.title=ਲੇਟਵੇਂ ਸਰਕਾਉਣ ਨੂੰ ਵਰਤੋਂ -scroll_horizontal_label=ਲੇਟਵਾਂ ਸਰਕਾਉਣਾ -scroll_wrapped.title=ਸਮੇਟੇ ਸਰਕਾਉਣ ਨੂੰ ਵਰਤੋਂ -scroll_wrapped_label=ਸਮੇਟਿਆ ਸਰਕਾਉਣਾ - -spread_none.title=ਸਫ਼ਾ ਫੈਲਾਅ ਵਿੱਚ ਸ਼ਾਮਲ ਨਾ ਹੋਵੋ -spread_none_label=ਕੋਈ ਫੈਲਾਅ ਨਹੀਂ -spread_odd.title=ਅਜੀਬ-ਨੰਬਰ ਵਾਲੇ ਪੰਨਿਆਂ ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਪੰਨੇ ਸਪਰਸ਼ਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਵੋ -spread_even.title=ਜਿਸਤ ਨੰਬਰ ਵਾਲੇ ਸਫ਼ਿਆਂ ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਸਫਿਆਂ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਵੋ - -# Document properties dialog box -document_properties.title=…ਦਸਤਾਵੇਜ਼ ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ -document_properties_label=…ਦਸਤਾਵੇਜ਼ ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ -document_properties_file_name=ਫਾਈਲ ਦਾ ਨਾਂ: -document_properties_file_size=ਫਾਈਲ ਦਾ ਆਕਾਰ: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} ਬਾਈਟ) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} ਬਾਈਟ) -document_properties_title=ਟਾਈਟਲ: -document_properties_author=ਲੇਖਕ: -document_properties_subject=ਵਿਸ਼ਾ: -document_properties_keywords=ਸ਼ਬਦ: -document_properties_creation_date=ਬਣਾਉਣ ਦੀ ਮਿਤੀ: -document_properties_modification_date=ਸੋਧ ਦੀ ਮਿਤੀ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=ਨਿਰਮਾਤਾ: -document_properties_producer=PDF ਪ੍ਰੋਡਿਊਸਰ: -document_properties_version=PDF ਵਰਜਨ: -document_properties_page_count=ਸਫ਼ੇ ਦੀ ਗਿਣਤੀ: -document_properties_page_size=ਸਫ਼ਾ ਆਕਾਰ: -document_properties_page_size_unit_inches=ਇੰਚ -document_properties_page_size_unit_millimeters=ਮਿਮੀ -document_properties_page_size_orientation_portrait=ਪੋਰਟਰੇਟ -document_properties_page_size_orientation_landscape=ਲੈਂਡਸਕੇਪ -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=ਲੈਟਰ -document_properties_page_size_name_legal=ਕਨੂੰਨੀ -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=ਤੇਜ਼ ਵੈੱਬ ਝਲਕ: -document_properties_linearized_yes=ਹਾਂ -document_properties_linearized_no=ਨਹੀਂ -document_properties_close=ਬੰਦ ਕਰੋ - -print_progress_message=…ਪਰਿੰਟ ਕਰਨ ਲਈ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਤਿਆਰ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ਰੱਦ ਕਰੋ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=ਬਾਹੀ ਬਦਲੋ -toggle_sidebar_notification.title=ਬਾਹੀ ਨੂੰ ਬਦਲੋ (ਦਸਤਾਵੇਜ਼ ਖਾਕਾ/ਅਟੈਚਮੈਂਟਾਂ ਰੱਖਦਾ ਹੈ) -toggle_sidebar_label=ਬਾਹੀ ਬਦਲੋ -document_outline.title=ਦਸਤਾਵੇਜ਼ ਖਾਕਾ ਦਿਖਾਓ (ਸਾਰੀਆਂ ਆਈਟਮਾਂ ਨੂੰ ਫੈਲਾਉਣ/ਸਮੇਟਣ ਲਈ ਦੋ ਵਾਰ ਕਲਿੱਕ ਕਰੋ) -document_outline_label=ਦਸਤਾਵੇਜ਼ ਖਾਕਾ -attachments.title=ਅਟੈਚਮੈਂਟ ਵੇਖਾਓ -attachments_label=ਅਟੈਚਮੈਂਟਾਂ -thumbs.title=ਥੰਮਨੇਲ ਨੂੰ ਵੇਖਾਓ -thumbs_label=ਥੰਮਨੇਲ -findbar.title=ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਲੱਭੋ -findbar_label=ਲੱਭੋ - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=ਸਫ਼ਾ {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=ਸਫ਼ਾ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} ਸਫ਼ੇ ਦਾ ਥੰਮਨੇਲ - -# Find panel button title and messages -find_input.title=ਲੱਭੋ -find_input.placeholder=…ਦਸਤਾਵੇਜ਼ 'ਚ ਲੱਭੋ -find_previous.title=ਵਾਕ ਦੀ ਪਿਛਲੀ ਮੌਜੂਦਗੀ ਲੱਭੋ -find_previous_label=ਪਿੱਛੇ -find_next.title=ਵਾਕ ਦੀ ਅਗਲੀ ਮੌਜੂਦਗੀ ਲੱਭੋ -find_next_label=ਅੱਗੇ -find_highlight=ਸਭ ਉਭਾਰੋ -find_match_case_label=ਅੱਖਰ ਆਕਾਰ ਨੂੰ ਮਿਲਾਉ -find_entire_word_label=ਪੂਰੇ ਸ਼ਬਦ -find_reached_top=ਦਸਤਾਵੇਜ਼ ਦੇ ਉੱਤੇ ਆ ਗਏ ਹਾਂ, ਥੱਲੇ ਤੋਂ ਜਾਰੀ ਰੱਖਿਆ ਹੈ -find_reached_bottom=ਦਸਤਾਵੇਜ਼ ਦੇ ਅੰਤ ਉੱਤੇ ਆ ਗਏ ਹਾਂ, ਉੱਤੇ ਤੋਂ ਜਾਰੀ ਰੱਖਿਆ ਹੈ -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} ਵਿੱਚੋਂ {{current}} ਮੇਲ -find_match_count[two]={{total}} ਵਿੱਚੋਂ {{current}} ਮੇਲ -find_match_count[few]={{total}} ਵਿੱਚੋਂ {{current}} ਮੇਲ -find_match_count[many]={{total}} ਵਿੱਚੋਂ {{current}} ਮੇਲ -find_match_count[other]={{total}} ਵਿੱਚੋਂ {{current}} ਮੇਲ -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} ਮੇਲਾਂ ਤੋਂ ਵੱਧ -find_match_count_limit[one]={{limit}} ਮੇਲ ਤੋਂ ਵੱਧ -find_match_count_limit[two]={{limit}} ਮੇਲਾਂ ਤੋਂ ਵੱਧ -find_match_count_limit[few]={{limit}} ਮੇਲਾਂ ਤੋਂ ਵੱਧ -find_match_count_limit[many]={{limit}} ਮੇਲਾਂ ਤੋਂ ਵੱਧ -find_match_count_limit[other]={{limit}} ਮੇਲਾਂ ਤੋਂ ਵੱਧ -find_not_found=ਵਾਕ ਨਹੀਂ ਲੱਭਿਆ - -# Error panel labels -error_more_info=ਹੋਰ ਜਾਣਕਾਰੀ -error_less_info=ਘੱਟ ਜਾਣਕਾਰੀ -error_close=ਬੰਦ ਕਰੋ -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (ਬਿਲਡ: {{build}} -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=ਸੁਨੇਹਾ: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=ਸਟੈਕ: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ਫਾਈਲ: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=ਲਾਈਨ: {{line}} -rendering_error=ਸਫ਼ਾ ਰੈਡਰ ਕਰਨ ਦੇ ਦੌਰਾਨ ਗਲਤੀ ਆਈ ਹੈ। - -# Predefined zoom values -page_scale_width=ਸਫ਼ੇ ਦੀ ਚੌੜਾਈ -page_scale_fit=ਸਫ਼ਾ ਫਿੱਟ -page_scale_auto=ਆਟੋਮੈਟਿਕ ਜ਼ੂਮ ਕਰੋ -page_scale_actual=ਆਟੋਮੈਟਿਕ ਆਕਾਰ -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=ਗਲਤੀ -loading_error=PDF ਲੋਡ ਕਰਨ ਦੇ ਦੌਰਾਨ ਗਲਤੀ ਆਈ ਹੈ। -invalid_file_error=ਗਲਤ ਜਾਂ ਨਿਕਾਰਾ PDF ਫਾਈਲ ਹੈ। -missing_file_error=ਨਾ-ਮੌਜੂਦ PDF ਫਾਈਲ। -unexpected_response_error=ਅਣਜਾਣ ਸਰਵਰ ਜਵਾਬ। - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} ਵਿਆਖਿਆ] -password_label=ਇਹ PDF ਫਾਈਲ ਨੂੰ ਖੋਲ੍ਹਣ ਲਈ ਪਾਸਵਰਡ ਦਿਉ। -password_invalid=ਗਲਤ ਪਾਸਵਰਡ। ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ। -password_ok=ਠੀਕ ਹੈ -password_cancel=ਰੱਦ ਕਰੋ - -printing_not_supported=ਸਾਵਧਾਨ: ਇਹ ਬਰਾਊਜ਼ਰ ਪਰਿੰਟ ਕਰਨ ਲਈ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸਹਾਇਕ ਨਹੀਂ ਹੈ। -printing_not_ready=ਸਾਵਧਾਨ: PDF ਨੂੰ ਪਰਿੰਟ ਕਰਨ ਲਈ ਪੂਰੀ ਤਰ੍ਹਾਂ ਲੋਡ ਨਹੀਂ ਹੈ। -web_fonts_disabled=ਵੈਬ ਫੋਂਟ ਬੰਦ ਹਨ: ਇੰਬੈਡ PDF ਫੋਂਟ ਨੂੰ ਵਰਤਣ ਲਈ ਅਸਮਰੱਥ ਹੈ। -document_colors_not_allowed=PDF ਦਸਤਾਵੇਜ਼ਾਂ ਨੂੰ ਆਪਣੇ ਰੰਗ ਵਰਤਣ ਦੀ ਇਜ਼ਾਜ਼ਤ ਨਹੀਂ ਹੈ।: ਬਰਾਊਜ਼ਰ ਵਿੱਚ “ਸਫ਼ਿਆਂ ਨੂੰ ਆਪਣੇ ਰੰਗ ਚੁਣਨ ਦੀ ਇਜ਼ਾਜ਼ਤ ਦਿਓ” ਨਾ-ਸਰਗਰਮ ਹੈ। diff --git a/cookbook/static/pdfjs/locale/pl/viewer.properties b/cookbook/static/pdfjs/locale/pl/viewer.properties deleted file mode 100644 index c18ea5ed8..000000000 --- a/cookbook/static/pdfjs/locale/pl/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Poprzednia strona -previous_label=Poprzednia -next.title=Następna strona -next_label=Następna - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Strona -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=z {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} z {{pagesCount}}) - -zoom_out.title=Pomniejsz -zoom_out_label=Pomniejsz -zoom_in.title=Powiększ -zoom_in_label=Powiększ -zoom.title=Skala -presentation_mode.title=Przełącz na tryb prezentacji -presentation_mode_label=Tryb prezentacji -open_file.title=Otwórz plik -open_file_label=Otwórz -print.title=Drukuj -print_label=Drukuj -download.title=Pobierz -download_label=Pobierz -bookmark.title=Bieżąca pozycja (skopiuj lub otwórz jako odnośnik w nowym oknie) -bookmark_label=Bieżąca pozycja - -# Secondary toolbar and context menu -tools.title=Narzędzia -tools_label=Narzędzia -first_page.title=Przejdź do pierwszej strony -first_page.label=Przejdź do pierwszej strony -first_page_label=Przejdź do pierwszej strony -last_page.title=Przejdź do ostatniej strony -last_page.label=Przejdź do ostatniej strony -last_page_label=Przejdź do ostatniej strony -page_rotate_cw.title=Obróć zgodnie z ruchem wskazówek zegara -page_rotate_cw.label=Obróć zgodnie z ruchem wskazówek zegara -page_rotate_cw_label=Obróć zgodnie z ruchem wskazówek zegara -page_rotate_ccw.title=Obróć przeciwnie do ruchu wskazówek zegara -page_rotate_ccw.label=Obróć przeciwnie do ruchu wskazówek zegara -page_rotate_ccw_label=Obróć przeciwnie do ruchu wskazówek zegara - -cursor_text_select_tool.title=Włącz narzędzie zaznaczania tekstu -cursor_text_select_tool_label=Narzędzie zaznaczania tekstu -cursor_hand_tool.title=Włącz narzędzie rączka -cursor_hand_tool_label=Narzędzie rączka - -scroll_vertical.title=Przewijaj dokument w pionie -scroll_vertical_label=Przewijanie pionowe -scroll_horizontal.title=Przewijaj dokument w poziomie -scroll_horizontal_label=Przewijanie poziome -scroll_wrapped.title=Strony dokumentu wyświetlaj i przewijaj w kolumnach -scroll_wrapped_label=Widok dwóch stron - -spread_none.title=Nie ustawiaj stron obok siebie -spread_none_label=Brak kolumn -spread_odd.title=Strony nieparzyste ustawiaj na lewo od parzystych -spread_odd_label=Nieparzyste po lewej -spread_even.title=Strony parzyste ustawiaj na lewo od nieparzystych -spread_even_label=Parzyste po lewej - -# Document properties dialog box -document_properties.title=Właściwości dokumentu… -document_properties_label=Właściwości dokumentu… -document_properties_file_name=Nazwa pliku: -document_properties_file_size=Rozmiar pliku: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} B) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} B) -document_properties_title=Tytuł: -document_properties_author=Autor: -document_properties_subject=Temat: -document_properties_keywords=Słowa kluczowe: -document_properties_creation_date=Data utworzenia: -document_properties_modification_date=Data modyfikacji: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Utworzony przez: -document_properties_producer=PDF wyprodukowany przez: -document_properties_version=Wersja PDF: -document_properties_page_count=Liczba stron: -document_properties_page_size=Wymiary strony: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=pionowa -document_properties_page_size_orientation_landscape=pozioma -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=US Letter -document_properties_page_size_name_legal=US Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}}×{{height}} {{unit}} (orientacja {{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}}×{{height}} {{unit}} ({{name}}, orientacja {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Szybki podgląd w Internecie: -document_properties_linearized_yes=tak -document_properties_linearized_no=nie -document_properties_close=Zamknij - -print_progress_message=Przygotowywanie dokumentu do druku… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Anuluj - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Przełącz panel boczny -toggle_sidebar_notification.title=Przełącz panel boczny (dokument zawiera konspekt/załączniki) -toggle_sidebar_label=Przełącz panel boczny -document_outline.title=Konspekt dokumentu (podwójne kliknięcie rozwija lub zwija wszystkie pozycje) -document_outline_label=Konspekt dokumentu -attachments.title=Załączniki -attachments_label=Załączniki -thumbs.title=Miniatury -thumbs_label=Miniatury -findbar.title=Znajdź w dokumencie -findbar_label=Znajdź - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas={{page}}. strona -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}}. strona -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura {{page}}. strony - -# Find panel button title and messages -find_input.title=Znajdź -find_input.placeholder=Znajdź w dokumencie… -find_previous.title=Znajdź poprzednie wystąpienie tekstu -find_previous_label=Poprzednie -find_next.title=Znajdź następne wystąpienie tekstu -find_next_label=Następne -find_highlight=Wyróżnianie wszystkich -find_match_case_label=Rozróżnianie wielkości liter -find_entire_word_label=Całe słowa -find_reached_top=Początek dokumentu. Wyszukiwanie od końca. -find_reached_bottom=Koniec dokumentu. Wyszukiwanie od początku. -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=Pierwsze z {{total}} trafień -find_match_count[two]=Drugie z {{total}} trafień -find_match_count[few]={{current}}. z {{total}} trafień -find_match_count[many]={{current}}. z {{total}} trafień -find_match_count[other]={{current}}. z {{total}} trafień -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Brak trafień. -find_match_count_limit[one]=Więcej niż jedno trafienie. -find_match_count_limit[two]=Więcej niż dwa trafienia. -find_match_count_limit[few]=Więcej niż {{limit}} trafienia. -find_match_count_limit[many]=Więcej niż {{limit}} trafień. -find_match_count_limit[other]=Więcej niż {{limit}} trafień. -find_not_found=Nie znaleziono tekstu - -# Error panel labels -error_more_info=Więcej informacji -error_less_info=Mniej informacji -error_close=Zamknij -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (kompilacja: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Komunikat: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stos: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Plik: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Wiersz: {{line}} -rendering_error=Podczas renderowania strony wystąpił błąd. - -# Predefined zoom values -page_scale_width=Szerokość strony -page_scale_fit=Dopasowanie strony -page_scale_auto=Skala automatyczna -page_scale_actual=Rozmiar oryginalny -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Błąd -loading_error=Podczas wczytywania dokumentu PDF wystąpił błąd. -invalid_file_error=Nieprawidłowy lub uszkodzony plik PDF. -missing_file_error=Brak pliku PDF. -unexpected_response_error=Nieoczekiwana odpowiedź serwera. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Adnotacja: {{type}}] -password_label=Wprowadź hasło, aby otworzyć ten dokument PDF. -password_invalid=Nieprawidłowe hasło. Proszę spróbować ponownie. -password_ok=OK -password_cancel=Anuluj - -printing_not_supported=Ostrzeżenie: drukowanie nie jest w pełni obsługiwane przez tę przeglądarkę. -printing_not_ready=Ostrzeżenie: dokument PDF nie jest całkowicie wczytany, więc nie można go wydrukować. -web_fonts_disabled=Czcionki sieciowe są wyłączone: nie można użyć osadzonych czcionek PDF. -document_colors_not_allowed=Dokumenty PDF nie mogą używać własnych kolorów: opcja „Pozwalaj stronom stosować inne kolory” w przeglądarce jest nieaktywna. diff --git a/cookbook/static/pdfjs/locale/pt-BR/viewer.properties b/cookbook/static/pdfjs/locale/pt-BR/viewer.properties deleted file mode 100644 index 5947d2d43..000000000 --- a/cookbook/static/pdfjs/locale/pt-BR/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Próxima página -next_label=Próxima - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reduzir -zoom_out_label=Reduzir -zoom_in.title=Ampliar -zoom_in_label=Ampliar -zoom.title=Zoom -presentation_mode.title=Alternar para o modo de apresentação -presentation_mode_label=Modo de apresentação -open_file.title=Abrir arquivo -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Download -download_label=Download -bookmark.title=Visualização atual (copiar ou abrir em uma nova janela) -bookmark_label=Visualização atual - -# Secondary toolbar and context menu -tools.title=Ferramentas -tools_label=Ferramentas -first_page.title=Ir para a primeira página -first_page.label=Ir para a primeira página -first_page_label=Ir para a primeira página -last_page.title=Ir para a última página -last_page.label=Ir para a última página -last_page_label=Ir para a última página -page_rotate_cw.title=Girar no sentido horário -page_rotate_cw.label=Girar no sentido horário -page_rotate_cw_label=Girar no sentido horário -page_rotate_ccw.title=Girar no sentido anti-horário -page_rotate_ccw.label=Girar no sentido anti-horário -page_rotate_ccw_label=Girar no sentido anti-horário - -cursor_text_select_tool.title=Ativar a ferramenta de seleção de texto -cursor_text_select_tool_label=Ferramenta de seleção de texto -cursor_hand_tool.title=Ativar ferramenta de mão -cursor_hand_tool_label=Ferramenta de mão - -scroll_vertical.title=Usar rolagem vertical -scroll_vertical_label=Rolagem vertical -scroll_horizontal.title=Usar rolagem horizontal -scroll_horizontal_label=Rolagem horizontal -scroll_wrapped.title=Usar rolagem contida -scroll_wrapped_label=Rolagem contida - -spread_none.title=Não reagrupar páginas -spread_none_label=Não estender -spread_odd.title=Agrupar páginas começando em páginas com números ímpares -spread_odd_label=Estender ímpares -spread_even.title=Agrupar páginas começando em páginas com números pares -spread_even_label=Estender pares - -# Document properties dialog box -document_properties.title=Propriedades do documento… -document_properties_label=Propriedades do documento… -document_properties_file_name=Nome do arquivo: -document_properties_file_size=Tamanho do arquivo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Assunto: -document_properties_keywords=Palavras-chave: -document_properties_creation_date=Data da criação: -document_properties_modification_date=Data da modificação: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Criação: -document_properties_producer=Criador do PDF: -document_properties_version=Versão do PDF: -document_properties_page_count=Número de páginas: -document_properties_page_size=Tamanho da página: -document_properties_page_size_unit_inches=pol. -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=retrato -document_properties_page_size_orientation_landscape=paisagem -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Jurídico -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Visualização rápida da Web: -document_properties_linearized_yes=Sim -document_properties_linearized_no=Não -document_properties_close=Fechar - -print_progress_message=Preparando documento para impressão… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Alternar painel -toggle_sidebar_notification.title=Alternar o painel (documento contém marcadores e anexos) -toggle_sidebar_label=Alternar painel -document_outline.title=Mostrar a estrutura do documento (duplo-clique para expandir/recolher todos os ítens) -document_outline_label=Estrutura do documento -attachments.title=Mostrar anexos -attachments_label=Anexos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Procurar no documento -findbar_label=Procurar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura da página {{page}} - -# Find panel button title and messages -find_input.title=Procurar -find_input.placeholder=Procurar no documento… -find_previous.title=Procurar a ocorrência anterior da frase -find_previous_label=Anterior -find_next.title=Procurar a próxima ocorrência da frase -find_next_label=Próxima -find_highlight=Realçar tudo -find_match_case_label=Diferenciar maiúsculas/minúsculas -find_entire_word_label=Palavras completas -find_reached_top=Início do documento alcançado, continuando do fim -find_reached_bottom=Fim do documento alcançado, continuando do início -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} ocorrência -find_match_count[two]={{current}} de {{total}} ocorrências -find_match_count[few]={{current}} de {{total}} ocorrências -find_match_count[many]={{current}} de {{total}} ocorrências -find_match_count[other]={{current}} de {{total}} ocorrências -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mais de {{limit}} ocorrências -find_match_count_limit[one]=Mais de {{limit}} ocorrência -find_match_count_limit[two]=Mais de {{limit}} ocorrências -find_match_count_limit[few]=Mais de {{limit}} ocorrências -find_match_count_limit[many]=Mais de {{limit}} ocorrências -find_match_count_limit[other]=Mais de {{limit}} ocorrências -find_not_found=Frase não encontrada - -# Error panel labels -error_more_info=Mais informações -error_less_info=Menos informações -error_close=Fechar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (compilação: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensagem: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Pilha: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Arquivo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linha: {{line}} -rendering_error=Ocorreu um erro ao renderizar a página. - -# Predefined zoom values -page_scale_width=Largura da página -page_scale_fit=Ajustar à janela -page_scale_auto=Zoom automático -page_scale_actual=Tamanho real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Erro -loading_error=Ocorreu um erro ao carregar o PDF. -invalid_file_error=Arquivo PDF corrompido ou inválido. -missing_file_error=Arquivo PDF ausente. -unexpected_response_error=Resposta inesperada do servidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotação {{type}}] -password_label=Forneça a senha para abrir este arquivo PDF. -password_invalid=Senha inválida. Tente novamente. -password_ok=OK -password_cancel=Cancelar - -printing_not_supported=Aviso: a impressão não é totalmente suportada neste navegador. -printing_not_ready=Aviso: o PDF não está totalmente carregado para impressão. -web_fonts_disabled=As fontes web estão desativadas: não foi possível usar fontes incorporadas do PDF. -document_colors_not_allowed=Documentos PDF não estão autorizados a usar as próprias cores: a opção “Permitir que as páginas escolham suas próprias cores” está desativada no navegador. diff --git a/cookbook/static/pdfjs/locale/pt-PT/viewer.properties b/cookbook/static/pdfjs/locale/pt-PT/viewer.properties deleted file mode 100644 index 5129a5226..000000000 --- a/cookbook/static/pdfjs/locale/pt-PT/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Página anterior -previous_label=Anterior -next.title=Página seguinte -next_label=Seguinte - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Página -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=de {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} de {{pagesCount}}) - -zoom_out.title=Reduzir -zoom_out_label=Reduzir -zoom_in.title=Ampliar -zoom_in_label=Ampliar -zoom.title=Zoom -presentation_mode.title=Trocar para o modo de apresentação -presentation_mode_label=Modo de apresentação -open_file.title=Abrir ficheiro -open_file_label=Abrir -print.title=Imprimir -print_label=Imprimir -download.title=Transferir -download_label=Transferir -bookmark.title=Vista atual (copiar ou abrir numa nova janela) -bookmark_label=Visão atual - -# Secondary toolbar and context menu -tools.title=Ferramentas -tools_label=Ferramentas -first_page.title=Ir para a primeira página -first_page.label=Ir para a primeira página -first_page_label=Ir para a primeira página -last_page.title=Ir para a última página -last_page.label=Ir para a última página -last_page_label=Ir para a última página -page_rotate_cw.title=Rodar à direita -page_rotate_cw.label=Rodar à direita -page_rotate_cw_label=Rodar à direita -page_rotate_ccw.title=Rodar à esquerda -page_rotate_ccw.label=Rodar à esquerda -page_rotate_ccw_label=Rodar à esquerda - -cursor_text_select_tool.title=Ativar ferramenta de seleção de texto -cursor_text_select_tool_label=Ferramenta de seleção de texto -cursor_hand_tool.title=Ativar ferramenta de mão -cursor_hand_tool_label=Ferramenta de mão - -scroll_vertical.title=Utilizar deslocação vertical -scroll_vertical_label=Deslocação vertical -scroll_horizontal.title=Utilizar deslocação horizontal -scroll_horizontal_label=Deslocação horizontal -scroll_wrapped.title=Utilizar deslocação encapsulada -scroll_wrapped_label=Deslocação encapsulada - -spread_none.title=Não juntar páginas dispersas -spread_none_label=Sem spreads -spread_odd.title=Juntar páginas dispersas a partir de páginas com números ímpares -spread_odd_label=Spreads ímpares -spread_even.title=Juntar páginas dispersas a partir de páginas com números pares -spread_even_label=Spreads pares - -# Document properties dialog box -document_properties.title=Propriedades do documento… -document_properties_label=Propriedades do documento… -document_properties_file_name=Nome do ficheiro: -document_properties_file_size=Tamanho do ficheiro: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Título: -document_properties_author=Autor: -document_properties_subject=Assunto: -document_properties_keywords=Palavras-chave: -document_properties_creation_date=Data de criação: -document_properties_modification_date=Data de modificação: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Criador: -document_properties_producer=Produtor de PDF: -document_properties_version=Versão do PDF: -document_properties_page_count=N.º de páginas: -document_properties_page_size=Tamanho da página: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=retrato -document_properties_page_size_orientation_landscape=paisagem -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Carta -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista rápida web: -document_properties_linearized_yes=Sim -document_properties_linearized_no=Não -document_properties_close=Fechar - -print_progress_message=A preparar o documento para impressão… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Cancelar - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Alternar barra lateral -toggle_sidebar_notification.title=Alternar barra lateral (documento contém contorno/anexos) -toggle_sidebar_label=Alternar barra lateral -document_outline.title=Mostrar esquema do documento (duplo clique para expandir/colapsar todos os itens) -document_outline_label=Esquema do documento -attachments.title=Mostrar anexos -attachments_label=Anexos -thumbs.title=Mostrar miniaturas -thumbs_label=Miniaturas -findbar.title=Localizar em documento -findbar_label=Localizar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Página {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Página {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura da página {{page}} - -# Find panel button title and messages -find_input.title=Localizar -find_input.placeholder=Localizar em documento… -find_previous.title=Localizar ocorrência anterior da frase -find_previous_label=Anterior -find_next.title=Localizar ocorrência seguinte da frase -find_next_label=Seguinte -find_highlight=Destacar tudo -find_match_case_label=Correspondência -find_entire_word_label=Palavras completas -find_reached_top=Topo do documento atingido, a continuar a partir do fundo -find_reached_bottom=Fim do documento atingido, a continuar a partir do topo -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} de {{total}} correspondência -find_match_count[two]={{current}} de {{total}} correspondências -find_match_count[few]={{current}} de {{total}} correspondências -find_match_count[many]={{current}} de {{total}} correspondências -find_match_count[other]={{current}} de {{total}} correspondências -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mais de {{limit}} correspondências -find_match_count_limit[one]=Mais de {{limit}} correspondência -find_match_count_limit[two]=Mais de {{limit}} correspondências -find_match_count_limit[few]=Mais de {{limit}} correspondências -find_match_count_limit[many]=Mais de {{limit}} correspondências -find_match_count_limit[other]=Mais de {{limit}} correspondências -find_not_found=Frase não encontrada - -# Error panel labels -error_more_info=Mais informação -error_less_info=Menos informação -error_close=Fechar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (compilação: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensagem: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ficheiro: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linha: {{line}} -rendering_error=Ocorreu um erro ao processar a página. - -# Predefined zoom values -page_scale_width=Ajustar à largura -page_scale_fit=Ajustar à página -page_scale_auto=Zoom automático -page_scale_actual=Tamanho real -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Erro -loading_error=Ocorreu um erro ao carregar o PDF. -invalid_file_error=Ficheiro PDF inválido ou danificado. -missing_file_error=Ficheiro PDF inexistente. -unexpected_response_error=Resposta inesperada do servidor. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotação {{type}}] -password_label=Introduza a palavra-passe para abrir este ficheiro PDF. -password_invalid=Palavra-passe inválida. Por favor, tente novamente. -password_ok=OK -password_cancel=Cancelar - -printing_not_supported=Aviso: a impressão não é totalmente suportada por este navegador. -printing_not_ready=Aviso: o PDF ainda não está totalmente carregado. -web_fonts_disabled=Os tipos de letra web estão desativados: não é possível utilizar os tipos de letra PDF embutidos. -document_colors_not_allowed=Os documentos PDF não permitem a utilização das suas próprias cores: “Permitir às páginas escolher as suas próprias cores” está desativado no navegador. diff --git a/cookbook/static/pdfjs/locale/rm/viewer.properties b/cookbook/static/pdfjs/locale/rm/viewer.properties deleted file mode 100644 index 99aca5c6b..000000000 --- a/cookbook/static/pdfjs/locale/rm/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pagina precedenta -previous_label=Enavos -next.title=Proxima pagina -next_label=Enavant - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=da {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} da {{pagesCount}}) - -zoom_out.title=Empitschnir -zoom_out_label=Empitschnir -zoom_in.title=Engrondir -zoom_in_label=Engrondir -zoom.title=Zoom -presentation_mode.title=Midar en il modus da preschentaziun -presentation_mode_label=Modus da preschentaziun -open_file.title=Avrir datoteca -open_file_label=Avrir -print.title=Stampar -print_label=Stampar -download.title=Telechargiar -download_label=Telechargiar -bookmark.title=Vista actuala (copiar u avrir en ina nova fanestra) -bookmark_label=Vista actuala - -# Secondary toolbar and context menu -tools.title=Utensils -tools_label=Utensils -first_page.title=Siglir a l'emprima pagina -first_page.label=Siglir a l'emprima pagina -first_page_label=Siglir a l'emprima pagina -last_page.title=Siglir a la davosa pagina -last_page.label=Siglir a la davosa pagina -last_page_label=Siglir a la davosa pagina -page_rotate_cw.title=Rotar en direcziun da l'ura -page_rotate_cw.label=Rotar en direcziun da l'ura -page_rotate_cw_label=Rotar en direcziun da l'ura -page_rotate_ccw.title=Rotar en direcziun cuntraria a l'ura -page_rotate_ccw.label=Rotar en direcziun cuntraria a l'ura -page_rotate_ccw_label=Rotar en direcziun cuntraria a l'ura - -cursor_text_select_tool.title=Activar l'utensil per selecziunar text -cursor_text_select_tool_label=Utensil per selecziunar text -cursor_hand_tool.title=Activar l'utensil da maun -cursor_hand_tool_label=Utensil da maun - -scroll_vertical.title=Utilisar il defilar vertical -scroll_vertical_label=Defilar vertical -scroll_horizontal.title=Utilisar il defilar orizontal -scroll_horizontal_label=Defilar orizontal -scroll_wrapped.title=Utilisar il defilar en colonnas -scroll_wrapped_label=Defilar en colonnas - -spread_none.title=Betg parallelisar las paginas -spread_none_label=Betg parallel -spread_odd.title=Parallelisar las paginas cun cumenzar cun paginas spèras -spread_odd_label=Parallel spèr -spread_even.title=Parallelisar las paginas cun cumenzar cun paginas pèras -spread_even_label=Parallel pèr - -# Document properties dialog box -document_properties.title=Caracteristicas dal document… -document_properties_label=Caracteristicas dal document… -document_properties_file_name=Num da la datoteca: -document_properties_file_size=Grondezza da la datoteca: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Titel: -document_properties_author=Autur: -document_properties_subject=Tema: -document_properties_keywords=Chavazzins: -document_properties_creation_date=Data da creaziun: -document_properties_modification_date=Data da modificaziun: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} {{time}} -document_properties_creator=Creà da: -document_properties_producer=Creà il PDF cun: -document_properties_version=Versiun da PDF: -document_properties_page_count=Dumber da paginas: -document_properties_page_size=Grondezza da la pagina: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=vertical -document_properties_page_size_orientation_landscape=orizontal -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Gea -document_properties_linearized_no=Na -document_properties_close=Serrar - -print_progress_message=Preparar il document per stampar… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Interrumper - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Activar/deactivar la trav laterala -toggle_sidebar_notification.title=Activar/deactivar la trav laterala (structura dal document/agiuntas) -toggle_sidebar_label=Activar/deactivar la trav laterala -document_outline.title=Mussar la structura dal document (cliccar duas giadas per extender/cumprimer tut ils elements) -document_outline_label=Structura dal document -attachments.title=Mussar agiuntas -attachments_label=Agiuntas -thumbs.title=Mussar las miniaturas -thumbs_label=Miniaturas -findbar.title=Tschertgar en il document -findbar_label=Tschertgar - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pagina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura da la pagina {{page}} - -# Find panel button title and messages -find_input.title=Tschertgar -find_input.placeholder=Tschertgar en il document… -find_previous.title=Tschertgar la posiziun precedenta da l'expressiun -find_previous_label=Enavos -find_next.title=Tschertgar la proxima posiziun da l'expressiun -find_next_label=Enavant -find_highlight=Relevar tuts -find_match_case_label=Resguardar maiusclas/minusclas -find_entire_word_label=Pleds entirs -find_reached_top=Il cumenzament dal document è cuntanschì, la tschertga cuntinuescha a la fin dal document -find_reached_bottom=La fin dal document è cuntanschì, la tschertga cuntinuescha al cumenzament dal document -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} dad {{total}} correspundenza -find_match_count[two]={{current}} da {{total}} correspundenzas -find_match_count[few]={{current}} da {{total}} correspundenzas -find_match_count[many]={{current}} da {{total}} correspundenzas -find_match_count[other]={{current}} da {{total}} correspundenzas -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Dapli che {{limit}} correspundenzas -find_match_count_limit[one]=Dapli che {{limit}} correspundenza -find_match_count_limit[two]=Dapli che {{limit}} correspundenzas -find_match_count_limit[few]=Dapli che {{limit}} correspundenzas -find_match_count_limit[many]=Dapli che {{limit}} correspundenzas -find_match_count_limit[other]=Dapli che {{limit}} correspundenzas -find_not_found=Impussibel da chattar l'expressiun - -# Error panel labels -error_more_info=Dapli infurmaziuns -error_less_info=Damain infurmaziuns -error_close=Serrar -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Messadi: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Datoteca: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Lingia: {{line}} -rendering_error=Ina errur è cumparida cun visualisar questa pagina. - -# Predefined zoom values -page_scale_width=Ladezza da la pagina -page_scale_fit=Entira pagina -page_scale_auto=Zoom automatic -page_scale_actual=Grondezza actuala -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Errur -loading_error=Ina errur è cumparida cun chargiar il PDF. -invalid_file_error=Datoteca PDF nunvalida u donnegiada. -missing_file_error=Datoteca PDF manconta. -unexpected_response_error=Resposta nunspetgada dal server. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Annotaziun da {{type}}] -password_label=Endatescha il pled-clav per avrir questa datoteca da PDF. -password_invalid=Pled-clav nunvalid. Emprova anc ina giada. -password_ok=OK -password_cancel=Interrumper - -printing_not_supported=Attenziun: Il stampar na funcziunescha anc betg dal tut en quest navigatur. -printing_not_ready=Attenziun: Il PDF n'è betg chargià cumplettamain per stampar. -web_fonts_disabled=Scrittiras dal web èn deactivadas: impussibel dad utilisar las scrittiras integradas en il PDF. -document_colors_not_allowed=Documents da PDF na dastgan betg duvrar las atgnas colurs: 'Permetter a paginas da tscherner lur atgna colur' è deactivà en il navigatur. diff --git a/cookbook/static/pdfjs/locale/ro/viewer.properties b/cookbook/static/pdfjs/locale/ro/viewer.properties deleted file mode 100644 index 691d9dc32..000000000 --- a/cookbook/static/pdfjs/locale/ro/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pagina precedentă -previous_label=Înapoi -next.title=Pagina următoare -next_label=Înainte - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pagina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=din {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} din {{pagesCount}}) - -zoom_out.title=Micșorează -zoom_out_label=Micșorează -zoom_in.title=Mărește -zoom_in_label=Mărește -zoom.title=Focalizare -presentation_mode.title=Comută la modul de prezentare -presentation_mode_label=Mod de prezentare -open_file.title=Deschide un fișier -open_file_label=Deschide -print.title=Tipărește -print_label=Tipărește -download.title=Descarcă -download_label=Descarcă -bookmark.title=Vizualizare actuală (copiază sau deschide într-o fereastră nouă) -bookmark_label=Vizualizare actuală - -# Secondary toolbar and context menu -tools.title=Instrumente -tools_label=Instrumente -first_page.title=Mergi la prima pagină -first_page.label=Mergi la prima pagină -first_page_label=Mergi la prima pagină -last_page.title=Mergi la ultima pagină -last_page.label=Mergi la ultima pagină -last_page_label=Mergi la ultima pagină -page_rotate_cw.title=Rotește în sensul acelor de ceasornic -page_rotate_cw.label=Rotește în sensul acelor de ceasornic -page_rotate_cw_label=Rotește în sensul acelor de ceasornic -page_rotate_ccw.title=Rotește în sens invers al acelor de ceasornic -page_rotate_ccw.label=Rotește în sens invers al acelor de ceasornic -page_rotate_ccw_label=Rotește în sens invers al acelor de ceasornic - -cursor_text_select_tool.title=Activează instrumentul de selecție a textului -cursor_text_select_tool_label=Instrumentul de selecție a textului -cursor_hand_tool.title=Activează instrumentul mână -cursor_hand_tool_label=Unealta mână - -scroll_vertical.title=Folosește derularea verticală -scroll_vertical_label=Derulare verticală -scroll_horizontal.title=Folosește derularea orizontală -scroll_horizontal_label=Derulare orizontală -scroll_wrapped.title=Folosește derularea încadrată -scroll_wrapped_label=Derulare încadrată - -spread_none.title=Nu uni paginile broșate -spread_none_label=Fără pagini broșate -spread_odd.title=Unește paginile broșate începând cu cele impare -spread_odd_label=Broșare pagini impare -spread_even.title=Unește paginile broșate începând cu cele pare -spread_even_label=Broșare pagini pare - -# Document properties dialog box -document_properties.title=Proprietățile documentului… -document_properties_label=Proprietățile documentului… -document_properties_file_name=Numele fișierului: -document_properties_file_size=Mărimea fișierului: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} byți) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byți) -document_properties_title=Titlu: -document_properties_author=Autor: -document_properties_subject=Subiect: -document_properties_keywords=Cuvinte cheie: -document_properties_creation_date=Data creării: -document_properties_modification_date=Data modificării: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Autor: -document_properties_producer=Producător PDF: -document_properties_version=Versiune PDF: -document_properties_page_count=Număr de pagini: -document_properties_page_size=Mărimea paginii: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portret -document_properties_page_size_orientation_landscape=peisaj -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Literă -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vizualizare web rapidă: -document_properties_linearized_yes=Da -document_properties_linearized_no=Nu -document_properties_close=Închide - -print_progress_message=Se pregătește documentul pentru tipărire… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Renunță - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Comută bara laterală -toggle_sidebar_notification.title=Comută bara laterală (documentul conține schițe/atașamente) -toggle_sidebar_label=Comută bara laterală -document_outline.title=Afișează schița documentului (dublu-clic pentru a extinde/restrânge toate elementele) -document_outline_label=Schița documentului -attachments.title=Afișează atașamentele -attachments_label=Atașamente -thumbs.title=Afișează miniaturi -thumbs_label=Miniaturi -findbar.title=Caută în document -findbar_label=Caută - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pagina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pagina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatura paginii {{page}} - -# Find panel button title and messages -find_input.title=Caută -find_input.placeholder=Caută în document… -find_previous.title=Mergi la apariția anterioară a textului -find_previous_label=Înapoi -find_next.title=Mergi la apariția următoare a textului -find_next_label=Înainte -find_highlight=Evidențiază toate aparițiile -find_match_case_label=Ține cont de majuscule și minuscule -find_entire_word_label=Cuvinte întregi -find_reached_top=Am ajuns la începutul documentului, continuă de la sfârșit -find_reached_bottom=Am ajuns la sfârșitul documentului, continuă de la început -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} din {{total}} rezultat -find_match_count[two]={{current}} din {{total}} rezultate -find_match_count[few]={{current}} din {{total}} rezultate -find_match_count[many]={{current}} din {{total}} de rezultate -find_match_count[other]={{current}} din {{total}} de rezultate -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Peste {{limit}} rezultate -find_match_count_limit[one]=Peste {{limit}} rezultat -find_match_count_limit[two]=Peste {{limit}} rezultate -find_match_count_limit[few]=Peste {{limit}} rezultate -find_match_count_limit[many]=Peste {{limit}} de rezultate -find_match_count_limit[other]=Peste {{limit}} de rezultate -find_not_found=Nu s-a găsit textul - -# Error panel labels -error_more_info=Mai multe informații -error_less_info=Mai puține informații -error_close=Închide -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (versiunea compilată: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mesaj: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stivă: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fișier: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rând: {{line}} -rendering_error=A intervenit o eroare la randarea paginii. - -# Predefined zoom values -page_scale_width=Lățime pagină -page_scale_fit=Potrivire la pagină -page_scale_auto=Focalizare automată -page_scale_actual=Mărime reală -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Eroare -loading_error=A intervenit o eroare la încărcarea PDF-ului. -invalid_file_error=Fișier PDF nevalid sau corupt. -missing_file_error=Fișier PDF lipsă. -unexpected_response_error=Răspuns neașteptat de la server. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Adnotare {{type}}] -password_label=Introdu parola pentru a deschide acest fișier PDF. -password_invalid=Parolă nevalidă. Te rugăm să încerci din nou. -password_ok=Ok -password_cancel=Renunță - -printing_not_supported=Avertisment: Tipărirea nu este suportată în totalitate de acest browser. -printing_not_ready=Avertisment: PDF-ul nu este încărcat complet pentru tipărire. -web_fonts_disabled=Fonturile web sunt dezactivate: nu se pot folosi fonturile PDF încorporate. -document_colors_not_allowed=Documentele PDF nu sunt autorizate să folosească propriile culori: „Permite paginilor să aleagă propriile culori” este dezactivat în browser. diff --git a/cookbook/static/pdfjs/locale/ru/viewer.properties b/cookbook/static/pdfjs/locale/ru/viewer.properties deleted file mode 100644 index bf417bcb4..000000000 --- a/cookbook/static/pdfjs/locale/ru/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Предыдущая страница -previous_label=Предыдущая -next.title=Следующая страница -next_label=Следующая - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Страница -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=из {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} из {{pagesCount}}) - -zoom_out.title=Уменьшить -zoom_out_label=Уменьшить -zoom_in.title=Увеличить -zoom_in_label=Увеличить -zoom.title=Масштаб -presentation_mode.title=Перейти в режим презентации -presentation_mode_label=Режим презентации -open_file.title=Открыть файл -open_file_label=Открыть -print.title=Печать -print_label=Печать -download.title=Загрузить -download_label=Загрузить -bookmark.title=Ссылка на текущий вид (скопировать или открыть в новом окне) -bookmark_label=Текущий вид - -# Secondary toolbar and context menu -tools.title=Инструменты -tools_label=Инструменты -first_page.title=Перейти на первую страницу -first_page.label=Перейти на первую страницу -first_page_label=Перейти на первую страницу -last_page.title=Перейти на последнюю страницу -last_page.label=Перейти на последнюю страницу -last_page_label=Перейти на последнюю страницу -page_rotate_cw.title=Повернуть по часовой стрелке -page_rotate_cw.label=Повернуть по часовой стрелке -page_rotate_cw_label=Повернуть по часовой стрелке -page_rotate_ccw.title=Повернуть против часовой стрелки -page_rotate_ccw.label=Повернуть против часовой стрелки -page_rotate_ccw_label=Повернуть против часовой стрелки - -cursor_text_select_tool.title=Включить Инструмент «Выделение текста» -cursor_text_select_tool_label=Инструмент «Выделение текста» -cursor_hand_tool.title=Включить Инструмент «Рука» -cursor_hand_tool_label=Инструмент «Рука» - -scroll_vertical.title=Использовать вертикальную прокрутку -scroll_vertical_label=Вертикальная прокрутка -scroll_horizontal.title=Использовать горизонтальную прокрутку -scroll_horizontal_label=Горизонтальная прокрутка -scroll_wrapped.title=Использовать масштабируемую прокрутку -scroll_wrapped_label=Масштабируемая прокрутка - -spread_none.title=Не использовать режим разворотов страниц -spread_none_label=Без разворотов страниц -spread_odd.title=Развороты начинаются с нечётных номеров страниц -spread_odd_label=Нечётные страницы слева -spread_even.title=Развороты начинаются с чётных номеров страниц -spread_even_label=Чётные страницы слева - -# Document properties dialog box -document_properties.title=Свойства документа… -document_properties_label=Свойства документа… -document_properties_file_name=Имя файла: -document_properties_file_size=Размер файла: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} КБ ({{size_b}} байт) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} МБ ({{size_b}} байт) -document_properties_title=Заголовок: -document_properties_author=Автор: -document_properties_subject=Тема: -document_properties_keywords=Ключевые слова: -document_properties_creation_date=Дата создания: -document_properties_modification_date=Дата изменения: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Приложение: -document_properties_producer=Производитель PDF: -document_properties_version=Версия PDF: -document_properties_page_count=Число страниц: -document_properties_page_size=Размер страницы: -document_properties_page_size_unit_inches=дюймов -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=книжная -document_properties_page_size_orientation_landscape=альбомная -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Быстрый просмотр в Web: -document_properties_linearized_yes=Да -document_properties_linearized_no=Нет -document_properties_close=Закрыть - -print_progress_message=Подготовка документа к печати… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Отмена - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Показать/скрыть боковую панель -toggle_sidebar_notification.title=Показать/скрыть боковую панель (документ имеет содержание/вложения) -toggle_sidebar_label=Показать/скрыть боковую панель -document_outline.title=Показать содержание документа (двойной щелчок, чтобы развернуть/свернуть все элементы) -document_outline_label=Содержание документа -attachments.title=Показать вложения -attachments_label=Вложения -thumbs.title=Показать миниатюры -thumbs_label=Миниатюры -findbar.title=Найти в документе -findbar_label=Найти - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Страница {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Страница {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Миниатюра страницы {{page}} - -# Find panel button title and messages -find_input.title=Найти -find_input.placeholder=Найти в документе… -find_previous.title=Найти предыдущее вхождение фразы в текст -find_previous_label=Назад -find_next.title=Найти следующее вхождение фразы в текст -find_next_label=Далее -find_highlight=Подсветить все -find_match_case_label=С учётом регистра -find_entire_word_label=Слова целиком -find_reached_top=Достигнут верх документа, продолжено снизу -find_reached_bottom=Достигнут конец документа, продолжено сверху -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} из {{total}} совпадения -find_match_count[two]={{current}} из {{total}} совпадений -find_match_count[few]={{current}} из {{total}} совпадений -find_match_count[many]={{current}} из {{total}} совпадений -find_match_count[other]={{current}} из {{total}} совпадений -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Более {{limit}} совпадений -find_match_count_limit[one]=Более {{limit}} совпадения -find_match_count_limit[two]=Более {{limit}} совпадений -find_match_count_limit[few]=Более {{limit}} совпадений -find_match_count_limit[many]=Более {{limit}} совпадений -find_match_count_limit[other]=Более {{limit}} совпадений -find_not_found=Фраза не найдена - -# Error panel labels -error_more_info=Детали -error_less_info=Скрыть детали -error_close=Закрыть -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (сборка: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Сообщение: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стeк: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Файл: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Строка: {{line}} -rendering_error=При создании страницы произошла ошибка. - -# Predefined zoom values -page_scale_width=По ширине страницы -page_scale_fit=По размеру страницы -page_scale_auto=Автоматически -page_scale_actual=Реальный размер -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Ошибка -loading_error=При загрузке PDF произошла ошибка. -invalid_file_error=Некорректный или повреждённый PDF-файл. -missing_file_error=PDF-файл отсутствует. -unexpected_response_error=Неожиданный ответ сервера. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Аннотация {{type}}] -password_label=Введите пароль, чтобы открыть этот PDF-файл. -password_invalid=Неверный пароль. Пожалуйста, попробуйте снова. -password_ok=OK -password_cancel=Отмена - -printing_not_supported=Предупреждение: В этом браузере не полностью поддерживается печать. -printing_not_ready=Предупреждение: PDF не полностью загружен для печати. -web_fonts_disabled=Веб-шрифты отключены: невозможно использовать встроенные PDF-шрифты. -document_colors_not_allowed=PDF-документам не разрешено использовать свои цвета: в браузере отключён параметр «Разрешить веб-сайтам использовать свои цвета». diff --git a/cookbook/static/pdfjs/locale/scn/viewer.properties b/cookbook/static/pdfjs/locale/scn/viewer.properties deleted file mode 100644 index e9a650a91..000000000 --- a/cookbook/static/pdfjs/locale/scn/viewer.properties +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom_out.title=Cchiù nicu -zoom_out_label=Cchiù nicu -zoom_in.title=Cchiù granni -zoom_in_label=Cchiù granni - -# Secondary toolbar and context menu - - - - -# Document properties dialog box -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Vista web lesta: -document_properties_linearized_yes=Se - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_close=Sfai - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. - -# Find panel button title and messages -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. - -# Error panel labels -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number - -# Predefined zoom values -page_scale_width=Larghizza dâ pàggina -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. - -# Loading indicator messages - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -password_cancel=Sfai - diff --git a/cookbook/static/pdfjs/locale/si/viewer.properties b/cookbook/static/pdfjs/locale/si/viewer.properties deleted file mode 100644 index 9a1d1e8bc..000000000 --- a/cookbook/static/pdfjs/locale/si/viewer.properties +++ /dev/null @@ -1,207 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=මීට පෙර පිටුව -previous_label=පෙර -next.title=මීළඟ පිටුව -next_label=මීළඟ - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=පිටුව -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom_out.title=කුඩා කරන්න -zoom_out_label=කුඩා කරන්න -zoom_in.title=විශාල කරන්න -zoom_in_label=විශාල කරන්න -zoom.title=විශාලණය -presentation_mode.title=ඉදිරිපත්කිරීම් ප්‍රකාරය වෙත මාරුවන්න -presentation_mode_label=ඉදිරිපත්කිරීම් ප්‍රකාරය -open_file.title=ගොනුව විවෘත කරන්න -open_file_label=විවෘත කරන්න -print.title=මුද්‍රණය -print_label=මුද්‍රණය -download.title=බාගන්න -download_label=බාගන්න -bookmark.title=දැනට ඇති දසුන (පිටපත් කරන්න හෝ නව කවුළුවක විවෘත කරන්න) -bookmark_label=දැනට ඇති දසුන - -# Secondary toolbar and context menu -tools.title=මෙවලම් -tools_label=මෙවලම් -first_page.title=මුල් පිටුවට යන්න -first_page.label=මුල් පිටුවට යන්න -first_page_label=මුල් පිටුවට යන්න -last_page.title=අවසන් පිටුවට යන්න -last_page.label=අවසන් පිටුවට යන්න -last_page_label=අවසන් පිටුවට යන්න -page_rotate_cw.title=දක්ශිණාවර්තව භ්‍රමණය -page_rotate_cw.label=දක්ශිණාවර්තව භ්‍රමණය -page_rotate_cw_label=දක්ශිණාවර්තව භ්‍රමණය -page_rotate_ccw.title=වාමාවර්තව භ්‍රමණය -page_rotate_ccw.label=වාමාවර්තව භ්‍රමණය -page_rotate_ccw_label=වාමාවර්තව භ්‍රමණය - -cursor_hand_tool_label=අත් මෙවලම - - - -# Document properties dialog box -document_properties.title=ලේඛන වත්කම්... -document_properties_label=ලේඛන වත්කම්... -document_properties_file_name=ගොනු නම: -document_properties_file_size=ගොනු ප්‍රමාණය: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} බයිට) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} බයිට) -document_properties_title=සිරස්තලය: -document_properties_author=කතෲ -document_properties_subject=මාතෘකාව: -document_properties_keywords=යතුරු වදන්: -document_properties_creation_date=නිර්මිත දිනය: -document_properties_modification_date=වෙනස්කල දිනය: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=නිර්මාපක: -document_properties_producer=PDF නිශ්පාදක: -document_properties_version=PDF නිකුතුව: -document_properties_page_count=පිටු ගණන: -document_properties_page_size=පිටුවේ විශාලත්වය: -document_properties_page_size_unit_inches=අඟල් -document_properties_page_size_unit_millimeters=මිමි -document_properties_page_size_orientation_portrait=සිරස් -document_properties_page_size_orientation_landscape=තිරස් -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}}×{{height}}{{unit}}{{name}}{{orientation}} -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=වේගවත් ජාල දසුන: -document_properties_linearized_yes=ඔව් -document_properties_linearized_no=නැහැ -document_properties_close=වසන්න - -print_progress_message=ලේඛනය මුද්‍රණය සඳහා සූදානම් කරමින්… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=අවලංගු කරන්න - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=පැති තීරුවට මාරුවන්න -toggle_sidebar_label=පැති තීරුවට මාරුවන්න -document_outline_label=ලේඛනයේ පිට මායිම -attachments.title=ඇමිණුම් පෙන්වන්න -attachments_label=ඇමිණුම් -thumbs.title=සිඟිති රූ පෙන්වන්න -thumbs_label=සිඟිති රූ -findbar.title=ලේඛනය තුළ සොයන්න -findbar_label=සොයන්න - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=පිටුව {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=පිටුවෙ සිඟිත රූව {{page}} - -# Find panel button title and messages -find_input.title=සොයන්න -find_previous.title=මේ වාක්‍ය ඛණ්ඩය මීට පෙර යෙදුණු ස්ථානය සොයන්න -find_previous_label=පෙර: -find_next.title=මේ වාක්‍ය ඛණ්ඩය මීළඟට යෙදෙන ස්ථානය සොයන්න -find_next_label=මීළඟ -find_highlight=සියල්ල උද්දීපනය -find_match_case_label=අකුරු ගළපන්න -find_entire_word_label=සම්පූර්ණ වචන -find_reached_top=පිටුවේ ඉහළ කෙළවරට ලගාවිය, පහළ සිට ඉදිරියට යමින් -find_reached_bottom=පිටුවේ පහළ කෙළවරට ලගාවිය, ඉහළ සිට ඉදිරියට යමින් -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit[zero]=ගැලපුම් {{limit}} ට වඩා -find_not_found=ඔබ සෙව් වචන හමු නොවීය - -# Error panel labels -error_more_info=බොහෝ තොරතුරු -error_less_info=අවම තොරතුරු -error_close=වසන්න -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (නිකුතුව: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=පණිවිඩය: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ගොනුව: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=පේළිය: {{line}} -rendering_error=පිටුව රෙන්ඩර් විමේදි ගැටලුවක් හට ගැනුණි. - -# Predefined zoom values -page_scale_width=පිටුවේ පළල -page_scale_fit=පිටුවට සුදුසු ලෙස -page_scale_auto=ස්වයංක්‍රීය විශාලණය -page_scale_actual=නියමිත ප්‍රමාණය -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=දෝෂය -loading_error=PDF පූරණය විමේදි දෝෂයක් හට ගැනුණි. -invalid_file_error=දූශිත හෝ සාවද්‍ය PDF ගොනුව. -missing_file_error=නැතිවූ PDF ගොනුව. -unexpected_response_error=බලාපොරොත්තු නොවූ සේවාදායක ප්‍රතිචාරය. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} විස්තරය] -password_label=මෙම PDF ගොනුව විවෘත කිරීමට මුරපදය ඇතුළත් කරන්න. -password_invalid=වැරදි මුරපදයක්. කරුණාකර නැවත උත්සහ කරන්න. -password_ok=හරි -password_cancel=එපා - -printing_not_supported=අවවාදයයි: මෙම ගවේශකය මුද්‍රණය සඳහා සම්පූර්ණයෙන් සහය නොදක්වයි. -printing_not_ready=අවවාදයයි: මුද්‍රණය සඳහා PDF සම්පූර්ණයෙන් පූර්ණය වී නොමැත. -web_fonts_disabled=ජාල අකුරු අක්‍රීයයි: තිළැලි PDF අකුරු භාවිත කළ නොහැක. diff --git a/cookbook/static/pdfjs/locale/sk/viewer.properties b/cookbook/static/pdfjs/locale/sk/viewer.properties deleted file mode 100644 index a08911bf9..000000000 --- a/cookbook/static/pdfjs/locale/sk/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Predchádzajúca strana -previous_label=Predchádzajúca -next.title=Nasledujúca strana -next_label=Nasledujúca - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Strana -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=z {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} z {{pagesCount}}) - -zoom_out.title=Zmenšiť veľkosť -zoom_out_label=Zmenšiť veľkosť -zoom_in.title=Zväčšiť veľkosť -zoom_in_label=Zväčšiť veľkosť -zoom.title=Nastavenie veľkosti -presentation_mode.title=Prepnúť na režim prezentácie -presentation_mode_label=Režim prezentácie -open_file.title=Otvoriť súbor -open_file_label=Otvoriť -print.title=Tlačiť -print_label=Tlačiť -download.title=Prevziať -download_label=Prevziať -bookmark.title=Aktuálne zobrazenie (kopírovať alebo otvoriť v novom okne) -bookmark_label=Aktuálne zobrazenie - -# Secondary toolbar and context menu -tools.title=Nástroje -tools_label=Nástroje -first_page.title=Prejsť na prvú stranu -first_page.label=Prejsť na prvú stranu -first_page_label=Prejsť na prvú stranu -last_page.title=Prejsť na poslednú stranu -last_page.label=Prejsť na poslednú stranu -last_page_label=Prejsť na poslednú stranu -page_rotate_cw.title=Otočiť v smere hodinových ručičiek -page_rotate_cw.label=Otočiť v smere hodinových ručičiek -page_rotate_cw_label=Otočiť v smere hodinových ručičiek -page_rotate_ccw.title=Otočiť proti smeru hodinových ručičiek -page_rotate_ccw.label=Otočiť proti smeru hodinových ručičiek -page_rotate_ccw_label=Otočiť proti smeru hodinových ručičiek - -cursor_text_select_tool.title=Povoliť výber textu -cursor_text_select_tool_label=Výber textu -cursor_hand_tool.title=Povoliť nástroj ruka -cursor_hand_tool_label=Nástroj ruka - -scroll_vertical.title=Používať zvislé posúvanie -scroll_vertical_label=Zvislé posúvanie -scroll_horizontal.title=Používať vodorovné posúvanie -scroll_horizontal_label=Vodorovné posúvanie -scroll_wrapped.title=Použiť postupné posúvanie -scroll_wrapped_label=Postupné posúvanie - -spread_none.title=Nezdružovať stránky -spread_none_label=Žiadne združovanie -spread_odd.title=Združí stránky a umiestni nepárne stránky vľavo -spread_odd_label=Združiť stránky (nepárne vľavo) -spread_even.title=Združí stránky a umiestni párne stránky vľavo -spread_even_label=Združiť stránky (párne vľavo) - -# Document properties dialog box -document_properties.title=Vlastnosti dokumentu… -document_properties_label=Vlastnosti dokumentu… -document_properties_file_name=Názov súboru: -document_properties_file_size=Veľkosť súboru: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} bajtov) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtov) -document_properties_title=Názov: -document_properties_author=Autor: -document_properties_subject=Predmet: -document_properties_keywords=Kľúčové slová: -document_properties_creation_date=Dátum vytvorenia: -document_properties_modification_date=Dátum úpravy: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Vytvoril: -document_properties_producer=Tvorca PDF: -document_properties_version=Verzia PDF: -document_properties_page_count=Počet strán: -document_properties_page_size=Veľkosť stránky: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=na výšku -document_properties_page_size_orientation_landscape=na šírku -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=List -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Rýchle Web View: -document_properties_linearized_yes=Áno -document_properties_linearized_no=Nie -document_properties_close=Zavrieť - -print_progress_message=Príprava dokumentu na tlač… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Zrušiť - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Prepnúť bočný panel -toggle_sidebar_notification.title=Prepnúť bočný panel (dokument obsahuje osnovu/prílohy) -toggle_sidebar_label=Prepnúť bočný panel -document_outline.title=Zobraziť osnovu dokumentu (dvojitým kliknutím rozbalíte/zbalíte všetky položky) -document_outline_label=Osnova dokumentu -attachments.title=Zobraziť prílohy -attachments_label=Prílohy -thumbs.title=Zobraziť miniatúry -thumbs_label=Miniatúry -findbar.title=Hľadať v dokumente -findbar_label=Hľadať - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Strana {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Strana {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatúra strany {{page}} - -# Find panel button title and messages -find_input.title=Hľadať -find_input.placeholder=Hľadať v dokumente… -find_previous.title=Vyhľadať predchádzajúci výskyt reťazca -find_previous_label=Predchádzajúce -find_next.title=Vyhľadať ďalší výskyt reťazca -find_next_label=Ďalšie -find_highlight=Zvýrazniť všetky -find_match_case_label=Rozlišovať veľkosť písmen -find_entire_word_label=Celé slová -find_reached_top=Bol dosiahnutý začiatok stránky, pokračuje sa od konca -find_reached_bottom=Bol dosiahnutý koniec stránky, pokračuje sa od začiatku -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}}. z {{total}} výsledku -find_match_count[two]={{current}}. z {{total}} výsledkov -find_match_count[few]={{current}}. z {{total}} výsledkov -find_match_count[many]={{current}}. z {{total}} výsledkov -find_match_count[other]={{current}}. z {{total}} výsledkov -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Viac než {{limit}} výsledkov -find_match_count_limit[one]=Viac než {{limit}} výsledok -find_match_count_limit[two]=Viac než {{limit}} výsledky -find_match_count_limit[few]=Viac než {{limit}} výsledky -find_match_count_limit[many]=Viac než {{limit}} výsledkov -find_match_count_limit[other]=Viac než {{limit}} výsledkov -find_not_found=Výraz nebol nájdený - -# Error panel labels -error_more_info=Viac informácií -error_less_info=Menej informácií -error_close=Zavrieť -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (zostavenie: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Správa: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Zásobník: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Súbor: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Riadok: {{line}} -rendering_error=Pri vykresľovaní stránky sa vyskytla chyba. - -# Predefined zoom values -page_scale_width=Na šírku strany -page_scale_fit=Na veľkosť strany -page_scale_auto=Automatická veľkosť -page_scale_actual=Skutočná veľkosť -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Chyba -loading_error=Počas načítavania dokumentu PDF sa vyskytla chyba. -invalid_file_error=Neplatný alebo poškodený súbor PDF. -missing_file_error=Chýbajúci súbor PDF. -unexpected_response_error=Neočakávaná odpoveď zo servera. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Anotácia typu {{type}}] -password_label=Ak chcete otvoriť tento súbor PDF, zadajte jeho heslo. -password_invalid=Heslo nie je platné. Skúste to znova. -password_ok=OK -password_cancel=Zrušiť - -printing_not_supported=Upozornenie: tlač nie je v tomto prehliadači plne podporovaná. -printing_not_ready=Upozornenie: súbor PDF nie je plne načítaný pre tlač. -web_fonts_disabled=Webové písma sú vypnuté: nie je možné použiť písma vložené do súboru PDF. -document_colors_not_allowed=Dokumenty PDF nemajú povolené používať vlastné farby, pretože voľba "Povoliť stránkam používať vlastné farby" je v nastaveniach prehliadača vypnutá. diff --git a/cookbook/static/pdfjs/locale/sl/viewer.properties b/cookbook/static/pdfjs/locale/sl/viewer.properties deleted file mode 100644 index 86db2d9ab..000000000 --- a/cookbook/static/pdfjs/locale/sl/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Prejšnja stran -previous_label=Nazaj -next.title=Naslednja stran -next_label=Naprej - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Stran -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=od {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} od {{pagesCount}}) - -zoom_out.title=Pomanjšaj -zoom_out_label=Pomanjšaj -zoom_in.title=Povečaj -zoom_in_label=Povečaj -zoom.title=Povečava -presentation_mode.title=Preklopi v način predstavitve -presentation_mode_label=Način predstavitve -open_file.title=Odpri datoteko -open_file_label=Odpri -print.title=Natisni -print_label=Natisni -download.title=Prenesi -download_label=Prenesi -bookmark.title=Trenutni pogled (kopiraj ali odpri v novem oknu) -bookmark_label=Trenutni pogled - -# Secondary toolbar and context menu -tools.title=Orodja -tools_label=Orodja -first_page.title=Pojdi na prvo stran -first_page.label=Pojdi na prvo stran -first_page_label=Pojdi na prvo stran -last_page.title=Pojdi na zadnjo stran -last_page.label=Pojdi na zadnjo stran -last_page_label=Pojdi na zadnjo stran -page_rotate_cw.title=Zavrti v smeri urnega kazalca -page_rotate_cw.label=Zavrti v smeri urnega kazalca -page_rotate_cw_label=Zavrti v smeri urnega kazalca -page_rotate_ccw.title=Zavrti v nasprotni smeri urnega kazalca -page_rotate_ccw.label=Zavrti v nasprotni smeri urnega kazalca -page_rotate_ccw_label=Zavrti v nasprotni smeri urnega kazalca - -cursor_text_select_tool.title=Omogoči orodje za izbor besedila -cursor_text_select_tool_label=Orodje za izbor besedila -cursor_hand_tool.title=Omogoči roko -cursor_hand_tool_label=Roka - -scroll_vertical.title=Uporabi navpično drsenje -scroll_vertical_label=Navpično drsenje -scroll_horizontal.title=Uporabi vodoravno drsenje -scroll_horizontal_label=Vodoravno drsenje -scroll_wrapped.title=Uporabi ovito drsenje -scroll_wrapped_label=Ovito drsenje - -spread_none.title=Ne združuj razponov strani -spread_none_label=Brez razponov -spread_odd.title=Združuj razpone strani z začetkom pri lihih straneh -spread_odd_label=Lihi razponi -spread_even.title=Združuj razpone strani z začetkom pri sodih straneh -spread_even_label=Sodi razponi - -# Document properties dialog box -document_properties.title=Lastnosti dokumenta … -document_properties_label=Lastnosti dokumenta … -document_properties_file_name=Ime datoteke: -document_properties_file_size=Velikost datoteke: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajtov) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajtov) -document_properties_title=Ime: -document_properties_author=Avtor: -document_properties_subject=Tema: -document_properties_keywords=Ključne besede: -document_properties_creation_date=Datum nastanka: -document_properties_modification_date=Datum spremembe: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Ustvaril: -document_properties_producer=Izdelovalec PDF: -document_properties_version=Različica PDF: -document_properties_page_count=Število strani: -document_properties_page_size=Velikost strani: -document_properties_page_size_unit_inches=palcev -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=pokončno -document_properties_page_size_orientation_landscape=ležeče -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Pismo -document_properties_page_size_name_legal=Pravno -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Hitri spletni ogled: -document_properties_linearized_yes=Da -document_properties_linearized_no=Ne -document_properties_close=Zapri - -print_progress_message=Priprava dokumenta na tiskanje … -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}} % -print_progress_close=Prekliči - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Preklopi stransko vrstico -toggle_sidebar_notification.title=Preklopi stransko vrstico (dokument vsebuje oris/priponke) -toggle_sidebar_label=Preklopi stransko vrstico -document_outline.title=Prikaži oris dokumenta (dvokliknite za razširitev/strnitev vseh predmetov) -document_outline_label=Oris dokumenta -attachments.title=Prikaži priponke -attachments_label=Priponke -thumbs.title=Prikaži sličice -thumbs_label=Sličice -findbar.title=Iskanje po dokumentu -findbar_label=Najdi - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Stran {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Stran {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Sličica strani {{page}} - -# Find panel button title and messages -find_input.title=Najdi -find_input.placeholder=Najdi v dokumentu … -find_previous.title=Najdi prejšnjo ponovitev iskanega -find_previous_label=Najdi nazaj -find_next.title=Najdi naslednjo ponovitev iskanega -find_next_label=Najdi naprej -find_highlight=Označi vse -find_match_case_label=Razlikuj velike/male črke -find_entire_word_label=Cele besede -find_reached_top=Dosežen začetek dokumenta iz smeri konca -find_reached_bottom=Doseženo konec dokumenta iz smeri začetka -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=Zadetek {{current}} od {{total}} -find_match_count[two]=Zadetek {{current}} od {{total}} -find_match_count[few]=Zadetek {{current}} od {{total}} -find_match_count[many]=Zadetek {{current}} od {{total}} -find_match_count[other]=Zadetek {{current}} od {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Več kot {{limit}} zadetkov -find_match_count_limit[one]=Več kot {{limit}} zadetek -find_match_count_limit[two]=Več kot {{limit}} zadetka -find_match_count_limit[few]=Več kot {{limit}} zadetki -find_match_count_limit[many]=Več kot {{limit}} zadetkov -find_match_count_limit[other]=Več kot {{limit}} zadetkov -find_not_found=Iskanega ni mogoče najti - -# Error panel labels -error_more_info=Več informacij -error_less_info=Manj informacij -error_close=Zapri -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js r{{version}} (graditev: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Sporočilo: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Sklad: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Datoteka: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Vrstica: {{line}} -rendering_error=Med pripravljanjem strani je prišlo do napake! - -# Predefined zoom values -page_scale_width=Širina strani -page_scale_fit=Prilagodi stran -page_scale_auto=Samodejno -page_scale_actual=Dejanska velikost -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}} % - -# Loading indicator messages -loading_error_indicator=Napaka -loading_error=Med nalaganjem datoteke PDF je prišlo do napake. -invalid_file_error=Neveljavna ali pokvarjena datoteka PDF. -missing_file_error=Ni datoteke PDF. -unexpected_response_error=Nepričakovan odgovor strežnika. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Opomba vrste {{type}}] -password_label=Vnesite geslo za odpiranje te datoteke PDF. -password_invalid=Neveljavno geslo. Poskusite znova. -password_ok=V redu -password_cancel=Prekliči - -printing_not_supported=Opozorilo: ta brskalnik ne podpira vseh možnosti tiskanja. -printing_not_ready=Opozorilo: PDF ni v celoti naložen za tiskanje. -web_fonts_disabled=Spletne pisave so onemogočene: vgradnih pisav za PDF ni mogoče uporabiti. -document_colors_not_allowed=Dokumenti PDF ne smejo uporabljati svojih lastnih barv: možnost 'Dovoli stranem uporabo lastnih barv' je v brskalniku onemogočena. diff --git a/cookbook/static/pdfjs/locale/son/viewer.properties b/cookbook/static/pdfjs/locale/son/viewer.properties deleted file mode 100644 index f5c1b46f5..000000000 --- a/cookbook/static/pdfjs/locale/son/viewer.properties +++ /dev/null @@ -1,180 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Moo bisante -previous_label=Bisante -next.title=Jinehere moo -next_label=Jine - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Moo -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} ra -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} ka hun {{pagesCount}}) ra - -zoom_out.title=Nakasandi -zoom_out_label=Nakasandi -zoom_in.title=Bebbeerandi -zoom_in_label=Bebbeerandi -zoom.title=Bebbeerandi -presentation_mode.title=Bere cebeyan alhaali -presentation_mode_label=Cebeyan alhaali -open_file.title=Tuku feeri -open_file_label=Feeri -print.title=Kar -print_label=Kar -download.title=Zumandi -download_label=Zumandi -bookmark.title=Sohõ gunarro (bere wala feeri zanfun taaga ra) -bookmark_label=Sohõ gunaroo - -# Secondary toolbar and context menu -tools.title=Goyjinawey -tools_label=Goyjinawey -first_page.title=Koy moo jinaa ga -first_page.label=Koy moo jinaa ga -first_page_label=Koy moo jinaa ga -last_page.title=Koy moo koraa ga -last_page.label=Koy moo koraa ga -last_page_label=Koy moo koraa ga -page_rotate_cw.title=Kuubi kanbe guma here -page_rotate_cw.label=Kuubi kanbe guma here -page_rotate_cw_label=Kuubi kanbe guma here -page_rotate_ccw.title=Kuubi kanbe wowa here -page_rotate_ccw.label=Kuubi kanbe wowa here -page_rotate_ccw_label=Kuubi kanbe wowa here - - -# Document properties dialog box -document_properties.title=Takadda mayrawey… -document_properties_label=Takadda mayrawey… -document_properties_file_name=Tuku maa: -document_properties_file_size=Tuku adadu: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb=KB {{size_kb}} (cebsu-ize {{size_b}}) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb=MB {{size_mb}} (cebsu-ize {{size_b}}) -document_properties_title=Tiiramaa: -document_properties_author=Hantumkaw: -document_properties_subject=Dalil: -document_properties_keywords=Kufalkalimawey: -document_properties_creation_date=Teeyan han: -document_properties_modification_date=Barmayan han: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Teekaw: -document_properties_producer=PDF berandikaw: -document_properties_version=PDF dumi: -document_properties_page_count=Moo hinna: -document_properties_close=Daabu - -print_progress_message=Goo ma takaddaa soolu k'a kar se… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Naŋ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Kanjari ceraw zuu -toggle_sidebar_notification.title=Kanjari ceraw-zuu (takaddaa goo nda filla-boŋ/hangandiyaŋ) -toggle_sidebar_label=Kanjari ceraw zuu -document_outline.title=Takaddaa korfur alhaaloo cebe (naagu cee hinka ka haya-izey kul hayandi/kankamandi) -document_outline_label=Takadda filla-boŋ -attachments.title=Hangarey cebe -attachments_label=Hangarey -thumbs.title=Kabeboy biyey cebe -thumbs_label=Kabeboy biyey -findbar.title=Ceeci takaddaa ra -findbar_label=Ceeci - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} moo -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Kabeboy bii {{page}} moo še - -# Find panel button title and messages -find_input.title=Ceeci -find_input.placeholder=Ceeci takaddaa ra… -find_previous.title=Kalimaɲaŋoo bangayri bisantaa ceeci -find_previous_label=Bisante -find_next.title=Kalimaɲaŋoo hiino bangayroo ceeci -find_next_label=Jine -find_highlight=Ikul šilbay -find_match_case_label=Harfu-beeriyan hawgay -find_reached_top=A too moŋoo boŋoo, koy jine ka šinitin nda cewoo -find_reached_bottom=A too moɲoo cewoo, koy jine šintioo ga -find_not_found=Kalimaɲaa mana duwandi - -# Error panel labels -error_more_info=Alhabar tontoni -error_less_info=Alhabar tontoni -error_close=Daabu -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Alhabar: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Dekeri: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Tuku: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Žeeri: {{line}} -rendering_error=Firka bangay kaŋ moɲoo goo ma willandi. - -# Predefined zoom values -page_scale_width=Mooo hayyan -page_scale_fit=Moo sawayan -page_scale_auto=Boŋše azzaati barmayyan -page_scale_actual=Adadu cimi -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Firka -loading_error=Firka bangay kaŋ PDF goo ma zumandi. -invalid_file_error=PDF tuku laala wala laybante. -missing_file_error=PDF tuku kumante. -unexpected_response_error=Manti feršikaw tuuruyan maatante. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt={{type}} maasa-caw] -password_label=Šennikufal dam ka PDF tukoo woo feeri. -password_invalid=Šennikufal laalo. Ceeci koyne taare. -password_ok=Ayyo -password_cancel=Naŋ - -printing_not_supported=Yaamar: Karyan ši tee ka timme nda ceecikaa woo. -printing_not_ready=Yaamar: PDF ši zunbu ka timme karyan še. -web_fonts_disabled=Interneti šigirawey kay: ši hin ka goy nda PDF šigira hurantey. -document_colors_not_allowed=PDF takaddawey ši duu fondo ka ngey boŋ noonawey zaa: “Naŋ moɲey ma ngey boŋ noonawey suuba” ši dira ceecikaa ga. diff --git a/cookbook/static/pdfjs/locale/sq/viewer.properties b/cookbook/static/pdfjs/locale/sq/viewer.properties deleted file mode 100644 index b0f12b21e..000000000 --- a/cookbook/static/pdfjs/locale/sq/viewer.properties +++ /dev/null @@ -1,241 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Faqja e Mëparshme -previous_label=E mëparshmja -next.title=Faqja Pasuese -next_label=Pasuesja - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Faqe -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=nga {{pagesCount}} gjithsej -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} nga {{pagesCount}}) - -zoom_out.title=Zvogëlojeni -zoom_out_label=Zvogëlojeni -zoom_in.title=Zmadhojeni -zoom_in_label=Zmadhojini -zoom.title=Zoom -presentation_mode.title=Kalo te Mënyra Paraqitje -presentation_mode_label=Mënyra Paraqitje -open_file.title=Hapni Kartelë -open_file_label=Hape -print.title=Shtypje -print_label=Shtype -download.title=Shkarkim -download_label=Shkarkoje -bookmark.title=Pamja e tanishme (kopjojeni ose hapeni në dritare të re) -bookmark_label=Pamja e Tanishme - -# Secondary toolbar and context menu -tools.title=Mjete -tools_label=Mjete -first_page.title=Kaloni te Faqja e Parë -first_page.label=Kaloni te Faqja e Parë -first_page_label=Kaloni te Faqja e Parë -last_page.title=Kaloni te Faqja e Fundit -last_page.label=Kaloni te Faqja e Fundit -last_page_label=Kaloni te Faqja e Fundit -page_rotate_cw.title=Rrotullojeni Në Kahun Orar -page_rotate_cw.label=Rrotulloje Në Kahun Orar -page_rotate_cw_label=Rrotulloje Në Kahun Orar -page_rotate_ccw.title=Rrotullojeni Në Kahun Kundërorar -page_rotate_ccw.label=Rrotulloje Në Kahun Kundërorar -page_rotate_ccw_label=Rrotulloje Në Kahun Kundërorar - -cursor_text_select_tool.title=Aktivizo Mjet Përzgjedhjeje Teksti -cursor_text_select_tool_label=Mjet Përzgjedhjeje Teksti -cursor_hand_tool.title=Aktivizo Mjetin Dorë -cursor_hand_tool_label=Mjeti Dorë - -scroll_vertical.title=Përdor Rrëshqitje Vertikale -scroll_vertical_label=Rrëshqitje Vertikale -scroll_horizontal.title=Përdor Rrëshqitje Horizontale -scroll_horizontal_label=Rrëshqitje Horizontale -scroll_wrapped.title=Përdor Rrëshqitje Me Mbështjellje -scroll_wrapped_label=Rrëshqitje Me Mbështjellje - - -# Document properties dialog box -document_properties.title=Veti Dokumenti… -document_properties_label=Veti Dokumenti… -document_properties_file_name=Emër kartele: -document_properties_file_size=Madhësi kartele: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bajte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bajte) -document_properties_title=Titull: -document_properties_author=Autor: -document_properties_subject=Subjekt: -document_properties_keywords=Fjalëkyçe: -document_properties_creation_date=Datë Krijimi: -document_properties_modification_date=Datë Ndryshimi: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Krijues: -document_properties_producer=Prodhues PDF-je: -document_properties_version=Version PDF-je: -document_properties_page_count=Numër Faqesh: -document_properties_page_size=Madhësi Faqeje: -document_properties_page_size_unit_inches=inç -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portret -document_properties_page_size_orientation_landscape=së gjeri -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=Po -document_properties_linearized_no=Jo -document_properties_close=Mbylleni - -print_progress_message=Po përgatitet dokumenti për shtypje… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Anuloje - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Shfaqni/Fshihni Anështyllën -toggle_sidebar_notification.title=Shfaqni Anështyllën (dokumenti përmban përvijim/bashkëngjitje) -toggle_sidebar_label=Shfaq/Fshih Anështyllën -document_outline.title=Shfaqni Përvijim Dokumenti (dyklikoni që të shfaqen/fshihen krejt elementët) -document_outline_label=Përvijim Dokumenti -attachments.title=Shfaqni Bashkëngjitje -attachments_label=Bashkëngjitje -thumbs.title=Shfaqni Miniatura -thumbs_label=Miniatura -findbar.title=Gjeni në Dokument -findbar_label=Gjej - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Faqja {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Faqja {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniaturë e Faqes {{page}} - -# Find panel button title and messages -find_input.title=Gjej -find_input.placeholder=Gjeni në dokument… -find_previous.title=Gjeni hasjen e mëparshme të togfjalëshit -find_previous_label=E mëparshmja -find_next.title=Gjeni hasjen pasuese të togfjalëshit -find_next_label=Pasuesja -find_highlight=Theksoji të tëra -find_match_case_label=Siç është shkruar -find_entire_word_label=Krejt fjalët -find_reached_top=U mbërrit në krye të dokumentit, vazhduar prej fundit -find_reached_bottom=U mbërrit në fund të dokumentit, vazhduar prej kreut -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} nga {{total}} përputhje gjithsej -find_match_count[two]={{current}} nga {{total}} përputhje gjithsej -find_match_count[few]={{current}} nga {{total}} përputhje gjithsej -find_match_count[many]={{current}} nga {{total}} përputhje gjithsej -find_match_count[other]={{current}} nga {{total}} përputhje gjithsej -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Më shumë se {{limit}} përputhje -find_match_count_limit[one]=Më shumë se {{limit}} përputhje -find_match_count_limit[two]=Më shumë se {{limit}} përputhje -find_match_count_limit[few]=Më shumë se {{limit}} përputhje -find_match_count_limit[many]=Më shumë se {{limit}} përputhje -find_match_count_limit[other]=Më shumë se {{limit}} përputhje -find_not_found=Togfjalësh që s’gjendet - -# Error panel labels -error_more_info=Më Tepër të Dhëna -error_less_info=Më Pak të Dhëna -error_close=Mbylleni -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mesazh: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Kartelë: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rresht: {{line}} -rendering_error=Ndodhi një gabim gjatë riprodhimit të faqes. - -# Predefined zoom values -page_scale_width=Gjerësi Faqeje -page_scale_fit=Sa Nxë Faqja -page_scale_auto=Zoom i Vetvetishëm -page_scale_actual=Madhësia Faktike -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Gabim -loading_error=Ndodhi një gabim gjatë ngarkimit të PDF-së. -invalid_file_error=Kartelë PDF e pavlefshme ose e dëmtuar. -missing_file_error=Kartelë PDF që mungon. -unexpected_response_error=Përgjigje shërbyesi e papritur. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Nënvizim {{type}}] -password_label=Jepni fjalëkalimin që të hapet kjo kartelë PDF. -password_invalid=Fjalëkalim i pavlefshëm. Ju lutemi, riprovoni. -password_ok=OK -password_cancel=Anuloje - -printing_not_supported=Kujdes: Shtypja s’mbulohet plotësisht nga ky shfletues. -printing_not_ready=Kujdes: PDF-ja s’është ngarkuar plotësisht që ta shtypni. -web_fonts_disabled=Shkronjat Web janë të çaktivizuara: s’arrihet të përdoren shkronja të trupëzuara në PDF. -document_colors_not_allowed=Dokumenteve PDF s’u lejohet të përdorin ngjyrat e tyre: 'Lejoji faqet t’i zgjedhin vetë ngjyrat' është e çaktivizuar te shfletuesi. diff --git a/cookbook/static/pdfjs/locale/sr/viewer.properties b/cookbook/static/pdfjs/locale/sr/viewer.properties deleted file mode 100644 index cee0a4f83..000000000 --- a/cookbook/static/pdfjs/locale/sr/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Претходна страница -previous_label=Претходна -next.title=Следећа страница -next_label=Следећа - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Страница -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=од {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} од {{pagesCount}}) - -zoom_out.title=Умањи -zoom_out_label=Умањи -zoom_in.title=Увеличај -zoom_in_label=Увеличај -zoom.title=Увеличавање -presentation_mode.title=Промени на приказ у режиму презентације -presentation_mode_label=Режим презентације -open_file.title=Отвори датотеку -open_file_label=Отвори -print.title=Штампај -print_label=Штампај -download.title=Преузми -download_label=Преузми -bookmark.title=Тренутни приказ (копирај или отвори нови прозор) -bookmark_label=Тренутни приказ - -# Secondary toolbar and context menu -tools.title=Алатке -tools_label=Алатке -first_page.title=Иди на прву страницу -first_page.label=Иди на прву страницу -first_page_label=Иди на прву страницу -last_page.title=Иди на последњу страницу -last_page.label=Иди на последњу страницу -last_page_label=Иди на последњу страницу -page_rotate_cw.title=Ротирај у смеру казаљке на сату -page_rotate_cw.label=Ротирај у смеру казаљке на сату -page_rotate_cw_label=Ротирај у смеру казаљке на сату -page_rotate_ccw.title=Ротирај у смеру супротном од казаљке на сату -page_rotate_ccw.label=Ротирај у смеру супротном од казаљке на сату -page_rotate_ccw_label=Ротирај у смеру супротном од казаљке на сату - -cursor_text_select_tool.title=Омогући алат за селектовање текста -cursor_text_select_tool_label=Алат за селектовање текста -cursor_hand_tool.title=Омогући алат за померање -cursor_hand_tool_label=Алат за померање - -scroll_vertical.title=Користи вертикално скроловање -scroll_vertical_label=Вертикално скроловање -scroll_horizontal.title=Користи хоризонтално скроловање -scroll_horizontal_label=Хоризонтално скроловање -scroll_wrapped.title=Користи скроловање по омоту -scroll_wrapped_label=Скроловање по омоту - -spread_none.title=Немој спајати ширења страница -spread_none_label=Без распростирања -spread_odd.title=Споји ширења страница које почињу непарним бројем -spread_odd_label=Непарна распростирања -spread_even.title=Споји ширења страница које почињу парним бројем -spread_even_label=Парна распростирања - -# Document properties dialog box -document_properties.title=Параметри документа… -document_properties_label=Параметри документа… -document_properties_file_name=Име датотеке: -document_properties_file_size=Величина датотеке: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} B) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} B) -document_properties_title=Наслов: -document_properties_author=Аутор: -document_properties_subject=Тема: -document_properties_keywords=Кључне речи: -document_properties_creation_date=Датум креирања: -document_properties_modification_date=Датум модификације: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Стваралац: -document_properties_producer=PDF произвођач: -document_properties_version=PDF верзија: -document_properties_page_count=Број страница: -document_properties_page_size=Величина странице: -document_properties_page_size_unit_inches=ин -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=усправно -document_properties_page_size_orientation_landscape=водоравно -document_properties_page_size_name_a3=А3 -document_properties_page_size_name_a4=А4 -document_properties_page_size_name_letter=Слово -document_properties_page_size_name_legal=Права -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Брз веб приказ: -document_properties_linearized_yes=Да -document_properties_linearized_no=Не -document_properties_close=Затвори - -print_progress_message=Припремам документ за штампање… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Откажи - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Прикажи додатну палету -toggle_sidebar_notification.title=Прикажи додатну траку (докуменат садржи оквире/прилоге) -toggle_sidebar_label=Прикажи додатну палету -document_outline.title=Прикажи контуру документа (дупли клик за проширење/скупљање елемената) -document_outline_label=Контура документа -attachments.title=Прикажи прилоге -attachments_label=Прилози -thumbs.title=Прикажи сличице -thumbs_label=Сличице -findbar.title=Пронађи у документу -findbar_label=Пронађи - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Страница {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Страница {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Сличица од странице {{page}} - -# Find panel button title and messages -find_input.title=Пронађи -find_input.placeholder=Пронађи у документу… -find_previous.title=Пронађи претходну појаву фразе -find_previous_label=Претходна -find_next.title=Пронађи следећу појаву фразе -find_next_label=Следећа -find_highlight=Истакнути све -find_match_case_label=Подударања -find_entire_word_label=Целе речи -find_reached_top=Достигнут врх документа, наставио са дна -find_reached_bottom=Достигнуто дно документа, наставио са врха -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} од {{total}} одговара -find_match_count[two]={{current}} од {{total}} одговара -find_match_count[few]={{current}} од {{total}} одговара -find_match_count[many]={{current}} од {{total}} одговара -find_match_count[other]={{current}} од {{total}} одговара -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Више од {{limit}} одговара -find_match_count_limit[one]=Више од {{limit}} одговара -find_match_count_limit[two]=Више од {{limit}} одговара -find_match_count_limit[few]=Више од {{limit}} одговара -find_match_count_limit[many]=Више од {{limit}} одговара -find_match_count_limit[other]=Више од {{limit}} одговара -find_not_found=Фраза није пронађена - -# Error panel labels -error_more_info=Више информација -error_less_info=Мање информација -error_close=Затвори -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Порука: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стек: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Датотека: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Линија: {{line}} -rendering_error=Дошло је до грешке приликом рендеровања ове странице. - -# Predefined zoom values -page_scale_width=Ширина странице -page_scale_fit=Прилагоди страницу -page_scale_auto=Аутоматско увеличавање -page_scale_actual=Стварна величина -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Грешка -loading_error=Дошло је до грешке приликом учитавања PDF-а. -invalid_file_error=PDF датотека је оштећена или је неисправна. -missing_file_error=PDF датотека није пронађена. -unexpected_response_error=Неочекиван одговор од сервера. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} коментар] -password_label=Унесите лозинку да бисте отворили овај PDF докуменат. -password_invalid=Неисправна лозинка. Покушајте поново. -password_ok=У реду -password_cancel=Откажи - -printing_not_supported=Упозорење: Штампање није у потпуности подржано у овом прегледачу. -printing_not_ready=Упозорење: PDF није у потпуности учитан за штампу. -web_fonts_disabled=Веб фонтови су онемогућени: не могу користити уграђене PDF фонтове. -document_colors_not_allowed=PDF документи не могу да користе сопствене боје: “Дозволи страницама да изаберу своје боје” је деактивирано у прегледачу. diff --git a/cookbook/static/pdfjs/locale/sv-SE/viewer.properties b/cookbook/static/pdfjs/locale/sv-SE/viewer.properties deleted file mode 100644 index 3d2f0cf43..000000000 --- a/cookbook/static/pdfjs/locale/sv-SE/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Föregående sida -previous_label=Föregående -next.title=Nästa sida -next_label=Nästa - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Sida -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=av {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} av {{pagesCount}}) - -zoom_out.title=Zooma ut -zoom_out_label=Zooma ut -zoom_in.title=Zooma in -zoom_in_label=Zooma in -zoom.title=Zoom -presentation_mode.title=Byt till presentationsläge -presentation_mode_label=Presentationsläge -open_file.title=Öppna fil -open_file_label=Öppna -print.title=Skriv ut -print_label=Skriv ut -download.title=Hämta -download_label=Hämta -bookmark.title=Aktuell vy (kopiera eller öppna i nytt fönster) -bookmark_label=Aktuell vy - -# Secondary toolbar and context menu -tools.title=Verktyg -tools_label=Verktyg -first_page.title=Gå till första sidan -first_page.label=Gå till första sidan -first_page_label=Gå till första sidan -last_page.title=Gå till sista sidan -last_page.label=Gå till sista sidan -last_page_label=Gå till sista sidan -page_rotate_cw.title=Rotera medurs -page_rotate_cw.label=Rotera medurs -page_rotate_cw_label=Rotera medurs -page_rotate_ccw.title=Rotera moturs -page_rotate_ccw.label=Rotera moturs -page_rotate_ccw_label=Rotera moturs - -cursor_text_select_tool.title=Aktivera textmarkeringsverktyg -cursor_text_select_tool_label=Textmarkeringsverktyg -cursor_hand_tool.title=Aktivera handverktyg -cursor_hand_tool_label=Handverktyg - -scroll_vertical.title=Använd vertikal rullning -scroll_vertical_label=Vertikal rullning -scroll_horizontal.title=Använd horisontell rullning -scroll_horizontal_label=Horisontell rullning -scroll_wrapped.title=Använd överlappande rullning -scroll_wrapped_label=Överlappande rullning - -spread_none.title=Visa enkelsidor -spread_none_label=Enkelsidor -spread_odd.title=Visa uppslag med olika sidnummer till vänster -spread_odd_label=Uppslag med framsida -spread_even.title=Visa uppslag med lika sidnummer till vänster -spread_even_label=Uppslag utan framsida - -# Document properties dialog box -document_properties.title=Dokumentegenskaper… -document_properties_label=Dokumentegenskaper… -document_properties_file_name=Filnamn: -document_properties_file_size=Filstorlek: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} kB ({{size_b}} byte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byte) -document_properties_title=Titel: -document_properties_author=Författare: -document_properties_subject=Ämne: -document_properties_keywords=Nyckelord: -document_properties_creation_date=Skapades: -document_properties_modification_date=Ändrades: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Skapare: -document_properties_producer=PDF-producent: -document_properties_version=PDF-version: -document_properties_page_count=Sidantal: -document_properties_page_size=Pappersstorlek: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=porträtt -document_properties_page_size_orientation_landscape=landskap -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Snabb webbvisning: -document_properties_linearized_yes=Ja -document_properties_linearized_no=Nej -document_properties_close=Stäng - -print_progress_message=Förbereder sidor för utskrift… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Avbryt - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Visa/dölj sidofält -toggle_sidebar_notification.title=Visa/dölj sidofält (dokument innehåller översikt/bilagor) -toggle_sidebar_label=Visa/dölj sidofält -document_outline.title=Visa dokumentdisposition (dubbelklicka för att expandera/komprimera alla objekt) -document_outline_label=Dokumentöversikt -attachments.title=Visa Bilagor -attachments_label=Bilagor -thumbs.title=Visa miniatyrer -thumbs_label=Miniatyrer -findbar.title=Sök i dokument -findbar_label=Sök - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Sida {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Sida {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Miniatyr av sida {{page}} - -# Find panel button title and messages -find_input.title=Sök -find_input.placeholder=Sök i dokument… -find_previous.title=Hitta föregående förekomst av frasen -find_previous_label=Föregående -find_next.title=Hitta nästa förekomst av frasen -find_next_label=Nästa -find_highlight=Markera alla -find_match_case_label=Matcha versal/gemen -find_entire_word_label=Hela ord -find_reached_top=Nådde början av dokumentet, började från slutet -find_reached_bottom=Nådde slutet på dokumentet, började från början -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} av {{total}} träff -find_match_count[two]={{current}} av {{total}} träffar -find_match_count[few]={{current}} av {{total}} träffar -find_match_count[many]={{current}} av {{total}} träffar -find_match_count[other]={{current}} av {{total}} träffar -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Mer än {{limit}} träffar -find_match_count_limit[one]=Mer än {{limit}} träff -find_match_count_limit[two]=Mer än {{limit}} träffar -find_match_count_limit[few]=Mer än {{limit}} träffar -find_match_count_limit[many]=Mer än {{limit}} träffar -find_match_count_limit[other]=Mer än {{limit}} träffar -find_not_found=Frasen hittades inte - -# Error panel labels -error_more_info=Mer information -error_less_info=Mindre information -error_close=Stäng -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Meddelande: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fil: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rad: {{line}} -rendering_error=Ett fel uppstod vid visning av sidan. - -# Predefined zoom values -page_scale_width=Sidbredd -page_scale_fit=Anpassa sida -page_scale_auto=Automatisk zoom -page_scale_actual=Verklig storlek -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Fel -loading_error=Ett fel uppstod vid laddning av PDF-filen. -invalid_file_error=Ogiltig eller korrupt PDF-fil. -missing_file_error=Saknad PDF-fil. -unexpected_response_error=Oväntat svar från servern. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}-annotering] -password_label=Skriv in lösenordet för att öppna PDF-filen. -password_invalid=Ogiltigt lösenord. Försök igen. -password_ok=OK -password_cancel=Avbryt - -printing_not_supported=Varning: Utskrifter stöds inte helt av den här webbläsaren. -printing_not_ready=Varning: PDF:en är inte klar för utskrift. -web_fonts_disabled=Webbtypsnitt är inaktiverade: kan inte använda inbäddade PDF-typsnitt. -document_colors_not_allowed=PDF-dokument tillåts inte använda egna färger: “Låt sidor använda egna färger” är inaktiverat i webbläsaren. diff --git a/cookbook/static/pdfjs/locale/ta/viewer.properties b/cookbook/static/pdfjs/locale/ta/viewer.properties deleted file mode 100644 index 19a8de432..000000000 --- a/cookbook/static/pdfjs/locale/ta/viewer.properties +++ /dev/null @@ -1,201 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=முந்தைய பக்கம் -previous_label=முந்தையது -next.title=அடுத்த பக்கம் -next_label=அடுத்து - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=பக்கம் -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} இல் -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages={{pagesCount}}) இல் ({{pageNumber}} - -zoom_out.title=சிறிதாக்கு -zoom_out_label=சிறிதாக்கு -zoom_in.title=பெரிதாக்கு -zoom_in_label=பெரிதாக்கு -zoom.title=பெரிதாக்கு -presentation_mode.title=விளக்ககாட்சி பயன்முறைக்கு மாறு -presentation_mode_label=விளக்ககாட்சி பயன்முறை -open_file.title=கோப்பினை திற -open_file_label=திற -print.title=அச்சிடு -print_label=அச்சிடு -download.title=பதிவிறக்கு -download_label=பதிவிறக்கு -bookmark.title=தற்போதைய காட்சி (புதிய சாளரத்திற்கு நகலெடு அல்லது புதிய சாளரத்தில் திற) -bookmark_label=தற்போதைய காட்சி - -# Secondary toolbar and context menu -tools.title=கருவிகள் -tools_label=கருவிகள் -first_page.title=முதல் பக்கத்திற்கு செல்லவும் -first_page.label=முதல் பக்கத்திற்கு செல்லவும் -first_page_label=முதல் பக்கத்திற்கு செல்லவும் -last_page.title=கடைசி பக்கத்திற்கு செல்லவும் -last_page.label=கடைசி பக்கத்திற்கு செல்லவும் -last_page_label=கடைசி பக்கத்திற்கு செல்லவும் -page_rotate_cw.title=வலஞ்சுழியாக சுழற்று -page_rotate_cw.label=வலஞ்சுழியாக சுழற்று -page_rotate_cw_label=வலஞ்சுழியாக சுழற்று -page_rotate_ccw.title=இடஞ்சுழியாக சுழற்று -page_rotate_ccw.label=இடஞ்சுழியாக சுழற்று -page_rotate_ccw_label=இடஞ்சுழியாக சுழற்று - -cursor_text_select_tool.title=உரைத் தெரிவு கருவியைச் செயல்படுத்து -cursor_text_select_tool_label=உரைத் தெரிவு கருவி -cursor_hand_tool.title=கைக் கருவிக்ச் செயற்படுத்து -cursor_hand_tool_label=கைக்குருவி - -# Document properties dialog box -document_properties.title=ஆவண பண்புகள்... -document_properties_label=ஆவண பண்புகள்... -document_properties_file_name=கோப்பு பெயர்: -document_properties_file_size=கோப்பின் அளவு: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} கிபை ({{size_b}} பைட்டுகள்) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} மெபை ({{size_b}} பைட்டுகள்) -document_properties_title=தலைப்பு: -document_properties_author=எழுதியவர் -document_properties_subject=பொருள்: -document_properties_keywords=முக்கிய வார்த்தைகள்: -document_properties_creation_date=படைத்த தேதி : -document_properties_modification_date=திருத்திய தேதி: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=உருவாக்குபவர்: -document_properties_producer=பிடிஎஃப் தயாரிப்பாளர்: -document_properties_version=PDF பதிப்பு: -document_properties_page_count=பக்க எண்ணிக்கை: -document_properties_page_size=பக்க அளவு: -document_properties_page_size_unit_inches=இதில் -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=நிலைபதிப்பு -document_properties_page_size_orientation_landscape=நிலைபரப்பு -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=கடிதம் -document_properties_page_size_name_legal=சட்டபூர்வ -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -document_properties_close=மூடுக - -print_progress_message=அச்சிடுவதற்கான ஆவணம் தயாராகிறது... -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ரத்து - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=பக்கப் பட்டியை நிலைமாற்று -toggle_sidebar_notification.title=பக்கப்பட்டையை நிலைமாற்று (வெளிக்கோடு/இணைப்புகளை ஆவணம் கொண்டுள்ளது) -toggle_sidebar_label=பக்கப் பட்டியை நிலைமாற்று -document_outline.title=ஆவண அடக்கத்தைக் காட்டு (இருமுறைச் சொடுக்கி அனைத்து உறுப்பிடிகளையும் விரி/சேர்) -document_outline_label=ஆவண வெளிவரை -attachments.title=இணைப்புகளை காண்பி -attachments_label=இணைப்புகள் -thumbs.title=சிறுபடங்களைக் காண்பி -thumbs_label=சிறுபடங்கள் -findbar.title=ஆவணத்தில் கண்டறி -findbar_label=தேடு - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=பக்கம் {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=பக்கத்தின் சிறுபடம் {{page}} - -# Find panel button title and messages -find_input.title=கண்டுபிடி -find_input.placeholder=ஆவணத்தில் கண்டறி… -find_previous.title=இந்த சொற்றொடரின் முந்தைய நிகழ்வை தேடு -find_previous_label=முந்தையது -find_next.title=இந்த சொற்றொடரின் அடுத்த நிகழ்வை தேடு -find_next_label=அடுத்து -find_highlight=அனைத்தையும் தனிப்படுத்து -find_match_case_label=பேரெழுத்தாக்கத்தை உணர் -find_reached_top=ஆவணத்தின் மேல் பகுதியை அடைந்தது, அடிப்பக்கத்திலிருந்து தொடர்ந்தது -find_reached_bottom=ஆவணத்தின் முடிவை அடைந்தது, மேலிருந்து தொடர்ந்தது -find_not_found=சொற்றொடர் காணவில்லை - -# Error panel labels -error_more_info=கூடுதல் தகவல் -error_less_info=குறைந்த தகவல் -error_close=மூடுக -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=செய்தி: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=ஸ்டேக்: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=கோப்பு: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=வரி: {{line}} -rendering_error=இந்தப் பக்கத்தை காட்சிப்படுத்தும் போது ஒரு பிழை ஏற்பட்டது. - -# Predefined zoom values -page_scale_width=பக்க அகலம் -page_scale_fit=பக்கப் பொருத்தம் -page_scale_auto=தானியக்க பெரிதாக்கல் -page_scale_actual=உண்மையான அளவு -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=பிழை -loading_error=PDF ஐ ஏற்றும் போது ஒரு பிழை ஏற்பட்டது. -invalid_file_error=செல்லுபடியாகாத அல்லது சிதைந்த PDF கோப்பு. -missing_file_error=PDF கோப்பு காணவில்லை. -unexpected_response_error=சேவகன் பதில் எதிர்பாரதது. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} விளக்கம்] -password_label=இந்த PDF கோப்பை திறக்க கடவுச்சொல்லை உள்ளிடவும். -password_invalid=செல்லுபடியாகாத கடவுச்சொல், தயை செய்து மீண்டும் முயற்சி செய்க. -password_ok=சரி -password_cancel=ரத்து - -printing_not_supported=எச்சரிக்கை: இந்த உலாவி அச்சிடுதலை முழுமையாக ஆதரிக்கவில்லை. -printing_not_ready=எச்சரிக்கை: PDF அச்சிட முழுவதுமாக ஏற்றப்படவில்லை. -web_fonts_disabled=வலை எழுத்துருக்கள் முடக்கப்பட்டுள்ளன: உட்பொதிக்கப்பட்ட PDF எழுத்துருக்களைப் பயன்படுத்த முடியவில்லை. -document_colors_not_allowed=PDF ஆவணங்களுக்குச் சொந்த நிறங்களைப் பயன்படுத்த அனுமதியில்லை: உலாவியில் "பக்கங்கள் தங்கள் சொந்த நிறங்களைத் தேர்வு செய்துகொள்ள அனுமதி" என்னும் விருப்பம் முடக்கப்பட்டுள்ளது. diff --git a/cookbook/static/pdfjs/locale/te/viewer.properties b/cookbook/static/pdfjs/locale/te/viewer.properties deleted file mode 100644 index 56f954d43..000000000 --- a/cookbook/static/pdfjs/locale/te/viewer.properties +++ /dev/null @@ -1,222 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=మునుపటి పేజీ -previous_label=క్రితం -next.title=తరువాత పేజీ -next_label=తరువాత - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=పేజీ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=మొత్తం {{pagesCount}} లో -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=(మొత్తం {{pagesCount}} లో {{pageNumber}}వది) - -zoom_out.title=జూమ్ తగ్గించు -zoom_out_label=జూమ్ తగ్గించు -zoom_in.title=జూమ్ చేయి -zoom_in_label=జూమ్ చేయి -zoom.title=జూమ్ -presentation_mode.title=ప్రదర్శనా రీతికి మారు -presentation_mode_label=ప్రదర్శనా రీతి -open_file.title=ఫైల్ తెరువు -open_file_label=తెరువు -print.title=ముద్రించు -print_label=ముద్రించు -download.title=దింపుకోళ్ళు -download_label=దింపుకోళ్ళు -bookmark.title=ప్రస్తుత దర్శనం (కాపీ చేయి లేదా కొత్త విండోలో తెరువు) -bookmark_label=ప్రస్తుత దర్శనం - -# Secondary toolbar and context menu -tools.title=పనిముట్లు -tools_label=పనిముట్లు -first_page.title=మొదటి పేజీకి వెళ్ళు -first_page.label=మొదటి పేజీకి వెళ్ళు -first_page_label=మొదటి పేజీకి వెళ్ళు -last_page.title=చివరి పేజీకి వెళ్ళు -last_page.label=చివరి పేజీకి వెళ్ళు -last_page_label=చివరి పేజీకి వెళ్ళు -page_rotate_cw.title=సవ్యదిశలో తిప్పు -page_rotate_cw.label=సవ్యదిశలో తిప్పు -page_rotate_cw_label=సవ్యదిశలో తిప్పు -page_rotate_ccw.title=అపసవ్యదిశలో తిప్పు -page_rotate_ccw.label=అపసవ్యదిశలో తిప్పు -page_rotate_ccw_label=అపసవ్యదిశలో తిప్పు - -cursor_text_select_tool.title=టెక్స్ట్ ఎంపిక సాధనాన్ని ప్రారంభించండి -cursor_text_select_tool_label=టెక్స్ట్ ఎంపిక సాధనం -cursor_hand_tool.title=చేతి సాధనం చేతనించు -cursor_hand_tool_label=చేతి సాధనం - -scroll_vertical_label=నిలువు స్క్రోలింగు - - -# Document properties dialog box -document_properties.title=పత్రము లక్షణాలు... -document_properties_label=పత్రము లక్షణాలు... -document_properties_file_name=దస్త్రం పేరు: -document_properties_file_size=దస్త్రం పరిమాణం: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=శీర్షిక: -document_properties_author=మూలకర్త: -document_properties_subject=విషయం: -document_properties_keywords=కీ పదాలు: -document_properties_creation_date=సృష్టించిన తేదీ: -document_properties_modification_date=సవరించిన తేదీ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=సృష్టికర్త: -document_properties_producer=PDF ఉత్పాదకి: -document_properties_version=PDF వర్షన్: -document_properties_page_count=పేజీల సంఖ్య: -document_properties_page_size=కాగితం పరిమాణం: -document_properties_page_size_unit_inches=లో -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=నిలువుచిత్రం -document_properties_page_size_orientation_landscape=అడ్డచిత్రం -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=లేఖ -document_properties_page_size_name_legal=చట్టపరమైన -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized_yes=అవును -document_properties_linearized_no=కాదు -document_properties_close=మూసివేయి - -print_progress_message=ముద్రించడానికి పత్రము సిద్ధమవుతున్నది… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=రద్దుచేయి - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=పక్కపట్టీ మార్చు -toggle_sidebar_label=పక్కపట్టీ మార్చు -document_outline.title=పత్రము రూపము చూపించు (డబుల్ క్లిక్ చేసి అన్ని అంశాలను విస్తరించు/కూల్చు) -document_outline_label=పత్రము అవుట్‌లైన్ -attachments.title=అనుబంధాలు చూపు -attachments_label=అనుబంధాలు -thumbs.title=థంబ్‌నైల్స్ చూపు -thumbs_label=థంబ్‌నైల్స్ -findbar.title=పత్రములో కనుగొనుము -findbar_label=కనుగొను - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=పేజీ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} పేజీ నఖచిత్రం - -# Find panel button title and messages -find_input.title=కనుగొను -find_input.placeholder=పత్రములో కనుగొను… -find_previous.title=పదం యొక్క ముందు సంభవాన్ని కనుగొను -find_previous_label=మునుపటి -find_next.title=పదం యొక్క తర్వాతి సంభవాన్ని కనుగొను -find_next_label=తరువాత -find_highlight=అన్నిటిని ఉద్దీపనం చేయుము -find_match_case_label=అక్షరముల తేడాతో పోల్చు -find_entire_word_label=పూర్తి పదాలు -find_reached_top=పేజీ పైకి చేరుకున్నది, క్రింది నుండి కొనసాగించండి -find_reached_bottom=పేజీ చివరకు చేరుకున్నది, పైనుండి కొనసాగించండి -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_not_found=పదబంధం కనబడలేదు - -# Error panel labels -error_more_info=మరింత సమాచారం -error_less_info=తక్కువ సమాచారం -error_close=మూసివేయి -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=సందేశం: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=స్టాక్: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ఫైలు: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=వరుస: {{line}} -rendering_error=పేజీను రెండర్ చేయుటలో ఒక దోషం ఎదురైంది. - -# Predefined zoom values -page_scale_width=పేజీ వెడల్పు -page_scale_fit=పేజీ అమర్పు -page_scale_auto=స్వయంచాలక జూమ్ -page_scale_actual=యథార్ధ పరిమాణం -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=దోషం -loading_error=PDF లోడవుచున్నప్పుడు ఒక దోషం ఎదురైంది. -invalid_file_error=చెల్లని లేదా పాడైన PDF ఫైలు. -missing_file_error=దొరకని PDF ఫైలు. -unexpected_response_error=అనుకోని సర్వర్ స్పందన. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} టీకా] -password_label=ఈ PDF ఫైల్ తెరుచుటకు సంకేతపదం ప్రవేశపెట్టుము. -password_invalid=సంకేతపదం చెల్లదు. దయచేసి మళ్ళీ ప్రయత్నించండి. -password_ok=సరే -password_cancel=రద్దుచేయి - -printing_not_supported=హెచ్చరిక: ఈ విహారిణి చేత ముద్రణ పూర్తిగా తోడ్పాటు లేదు. -printing_not_ready=హెచ్చరిక: ముద్రణ కొరకు ఈ PDF పూర్తిగా లోడవలేదు. -web_fonts_disabled=వెబ్ ఫాంట్లు అచేతనించబడెను: ఎంబెడెడ్ PDF ఫాంట్లు ఉపయోగించలేక పోయింది. -document_colors_not_allowed=PDF పత్రాలు వాటి స్వంత రంగులను ఉపయోగించుకొనుటకు అనుమతించబడవు: విహరణి నందు “పేజీలను వాటి స్వంత రంగులను ఎంచుకొనుటకు అనుమతించు” అచేతనం చేయబడివుంది. diff --git a/cookbook/static/pdfjs/locale/th/viewer.properties b/cookbook/static/pdfjs/locale/th/viewer.properties deleted file mode 100644 index b66865fd1..000000000 --- a/cookbook/static/pdfjs/locale/th/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=หน้าก่อนหน้า -previous_label=ก่อนหน้า -next.title=หน้าถัดไป -next_label=ถัดไป - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=หน้า -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=จาก {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} จาก {{pagesCount}}) - -zoom_out.title=ซูมออก -zoom_out_label=ซูมออก -zoom_in.title=ซูมเข้า -zoom_in_label=ซูมเข้า -zoom.title=ซูม -presentation_mode.title=สลับเป็นโหมดการนำเสนอ -presentation_mode_label=โหมดการนำเสนอ -open_file.title=เปิดไฟล์ -open_file_label=เปิด -print.title=พิมพ์ -print_label=พิมพ์ -download.title=ดาวน์โหลด -download_label=ดาวน์โหลด -bookmark.title=มุมมองปัจจุบัน (คัดลอกหรือเปิดในหน้าต่างใหม่) -bookmark_label=มุมมองปัจจุบัน - -# Secondary toolbar and context menu -tools.title=เครื่องมือ -tools_label=เครื่องมือ -first_page.title=ไปยังหน้าแรก -first_page.label=ไปยังหน้าแรก -first_page_label=ไปยังหน้าแรก -last_page.title=ไปยังหน้าสุดท้าย -last_page.label=ไปยังหน้าสุดท้าย -last_page_label=ไปยังหน้าสุดท้าย -page_rotate_cw.title=หมุนตามเข็มนาฬิกา -page_rotate_cw.label=หมุนตามเข็มนาฬิกา -page_rotate_cw_label=หมุนตามเข็มนาฬิกา -page_rotate_ccw.title=หมุนทวนเข็มนาฬิกา -page_rotate_ccw.label=หมุนทวนเข็มนาฬิกา -page_rotate_ccw_label=หมุนทวนเข็มนาฬิกา - -cursor_text_select_tool.title=เปิดใช้งานเครื่องมือการเลือกข้อความ -cursor_text_select_tool_label=เครื่องมือการเลือกข้อความ -cursor_hand_tool.title=เปิดใช้งานเครื่องมือมือ -cursor_hand_tool_label=เครื่องมือมือ - -scroll_vertical.title=ใช้การเลื่อนแนวตั้ง -scroll_vertical_label=การเลื่อนแนวตั้ง -scroll_horizontal.title=ใช้การเลื่อนแนวนอน -scroll_horizontal_label=การเลื่อนแนวนอน -scroll_wrapped.title=ใช้การเลื่อนแบบคลุม -scroll_wrapped_label=เลื่อนแบบคลุม - -spread_none.title=ไม่ต้องรวมการกระจายหน้า -spread_none_label=ไม่กระจาย -spread_odd.title=รวมการกระจายหน้าเริ่มจากหน้าคี่ -spread_odd_label=กระจายอย่างเหลือเศษ -spread_even.title=รวมการกระจายหน้าเริ่มจากหน้าคู่ -spread_even_label=กระจายอย่างเท่าเทียม - -# Document properties dialog box -document_properties.title=คุณสมบัติเอกสาร… -document_properties_label=คุณสมบัติเอกสาร… -document_properties_file_name=ชื่อไฟล์: -document_properties_file_size=ขนาดไฟล์: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} ไบต์) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} ไบต์) -document_properties_title=ชื่อเรื่อง: -document_properties_author=ผู้สร้าง: -document_properties_subject=ชื่อเรื่อง: -document_properties_keywords=คำสำคัญ: -document_properties_creation_date=วันที่สร้าง: -document_properties_modification_date=วันที่แก้ไข: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=ผู้สร้าง: -document_properties_producer=ผู้ผลิต PDF: -document_properties_version=รุ่น PDF: -document_properties_page_count=จำนวนหน้า: -document_properties_page_size=ขนาดหน้า: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=แนวตั้ง -document_properties_page_size_orientation_landscape=แนวนอน -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=จดหมาย -document_properties_page_size_name_legal=ข้อกฎหมาย -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=มุมมองเว็บแบบรวดเร็ว: -document_properties_linearized_yes=ใช่ -document_properties_linearized_no=ไม่ -document_properties_close=ปิด - -print_progress_message=กำลังเตรียมเอกสารสำหรับการพิมพ์… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=ยกเลิก - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=เปิด/ปิดแถบข้าง -toggle_sidebar_notification.title=เปิด/ปิดแถบข้าง (เอกสารมีเค้าร่าง/ไฟล์แนบ) -toggle_sidebar_label=เปิด/ปิดแถบข้าง -document_outline.title=แสดงเค้าร่างเอกสาร (คลิกสองครั้งเพื่อขยาย/ยุบรายการทั้งหมด) -document_outline_label=เค้าร่างเอกสาร -attachments.title=แสดงไฟล์แนบ -attachments_label=ไฟล์แนบ -thumbs.title=แสดงภาพขนาดย่อ -thumbs_label=ภาพขนาดย่อ -findbar.title=ค้นหาในเอกสาร -findbar_label=ค้นหา - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=หน้า {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=หน้า {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=ภาพขนาดย่อของหน้า {{page}} - -# Find panel button title and messages -find_input.title=ค้นหา -find_input.placeholder=ค้นหาในเอกสาร… -find_previous.title=หาตำแหน่งก่อนหน้าของวลี -find_previous_label=ก่อนหน้า -find_next.title=หาตำแหน่งถัดไปของวลี -find_next_label=ถัดไป -find_highlight=เน้นสีทั้งหมด -find_match_case_label=ตัวพิมพ์ใหญ่เล็กตรงกัน -find_entire_word_label=ทั้งคำ -find_reached_top=ค้นหาถึงจุดเริ่มต้นของหน้า เริ่มค้นต่อจากด้านล่าง -find_reached_bottom=ค้นหาถึงจุดสิ้นสุดหน้า เริ่มค้นต่อจากด้านบน -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} จาก {{total}} ที่ตรงกัน -find_match_count[two]={{current}} จาก {{total}} ที่ตรงกัน -find_match_count[few]={{current}} จาก {{total}} ที่ตรงกัน -find_match_count[many]={{current}} จาก {{total}} ที่ตรงกัน -find_match_count[other]={{current}} จาก {{total}} ที่ตรงกัน -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=มากกว่า {{limit}} ที่ตรงกัน -find_match_count_limit[one]=มากกว่า {{limit}} ที่ตรงกัน -find_match_count_limit[two]=มากกว่า {{limit}} ที่ตรงกัน -find_match_count_limit[few]=มากกว่า {{limit}} ที่ตรงกัน -find_match_count_limit[many]=มากกว่า {{limit}} ที่ตรงกัน -find_match_count_limit[other]=มากกว่า {{limit}} ที่ตรงกัน -find_not_found=ไม่พบวลี - -# Error panel labels -error_more_info=ข้อมูลเพิ่มเติม -error_less_info=ข้อมูลน้อยลง -error_close=ปิด -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=ข้อความ: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=สแตก: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=ไฟล์: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=บรรทัด: {{line}} -rendering_error=เกิดข้อผิดพลาดขณะเรนเดอร์หน้า - -# Predefined zoom values -page_scale_width=ความกว้างหน้า -page_scale_fit=พอดีหน้า -page_scale_auto=ซูมอัตโนมัติ -page_scale_actual=ขนาดจริง -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=ข้อผิดพลาด -loading_error=เกิดข้อผิดพลาดขณะโหลด PDF -invalid_file_error=ไฟล์ PDF ไม่ถูกต้องหรือเสียหาย -missing_file_error=ไฟล์ PDF หายไป -unexpected_response_error=การตอบสนองของเซิร์ฟเวอร์ที่ไม่คาดคิด - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[คำอธิบายประกอบ {{type}}] -password_label=ป้อนรหัสผ่านเพื่อเปิดไฟล์ PDF นี้ -password_invalid=รหัสผ่านไม่ถูกต้อง โปรดลองอีกครั้ง -password_ok=ตกลง -password_cancel=ยกเลิก - -printing_not_supported=คำเตือน: เบราว์เซอร์นี้ไม่ได้สนับสนุนการพิมพ์อย่างเต็มที่ -printing_not_ready=คำเตือน: PDF ไม่ได้รับการโหลดอย่างเต็มที่สำหรับการพิมพ์ -web_fonts_disabled=แบบอักษรเว็บถูกปิดใช้งาน: ไม่สามารถใช้แบบอักษร PDF ฝังตัว -document_colors_not_allowed=เอกสาร PDF ไม่ได้รับอนุญาตให้ใช้สีของตัวเอง: "อนุญาตให้หน้าเอกสารสามารถเลือกสีของตัวเอง" ถูกปิดใช้งานในเบราว์เซอร์ diff --git a/cookbook/static/pdfjs/locale/tl/viewer.properties b/cookbook/static/pdfjs/locale/tl/viewer.properties deleted file mode 100644 index 32b348340..000000000 --- a/cookbook/static/pdfjs/locale/tl/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Naunang Pahina -previous_label=Nakaraan -next.title=Sunod na Pahina -next_label=Sunod - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Pahina -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=ng {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} ng {{pagesCount}}) - -zoom_out.title=Paliitin -zoom_out_label=Paliitin -zoom_in.title=Palakihin -zoom_in_label=Palakihin -zoom.title=Mag-zoom -presentation_mode.title=Switch to Presentation Mode -presentation_mode_label=Presentation Mode -open_file.title=Magbukas ng file -open_file_label=Buksan -print.title=i-Print -print_label=i-Print -download.title=Download -download_label=Download -bookmark.title=Kasalukuyang tingin (kopyahin o buksan sa bagong window) -bookmark_label=Kasalukuyang tingin - -# Secondary toolbar and context menu -tools.title=Mga Kagamitan -tools_label=Mga Kagamitan -first_page.title=Pumunta sa Unang Pahina -first_page.label=Pumunta sa Unang Pahina -first_page_label=Pumunta sa Unang Pahina -last_page.title=Pumunta sa Huling Pahina -last_page.label=Pumunta sa Huling Pahina -last_page_label=Pumunta sa Huling Pahina -page_rotate_cw.title=Paikutin ang Clockwise -page_rotate_cw.label=Paikutin ang Clockwise -page_rotate_cw_label=Paikutin ang Clockwise -page_rotate_ccw.title=Paikutin ang Counterclockwise -page_rotate_ccw.label=Paikutin ang Counterclockwise -page_rotate_ccw_label=Paikutin ang Counterclockwise - -cursor_text_select_tool.title=Enable Text Selection Tool -cursor_text_select_tool_label=Text Selection Tool -cursor_hand_tool.title=Enable Hand Tool -cursor_hand_tool_label=Hand Tool - -scroll_vertical.title=Use Vertical Scrolling -scroll_vertical_label=Vertical Scrolling -scroll_horizontal.title=Use Horizontal Scrolling -scroll_horizontal_label=Horizontal Scrolling -scroll_wrapped.title=Use Wrapped Scrolling -scroll_wrapped_label=Wrapped Scrolling - -spread_none.title=Do not join page spreads -spread_none_label=No Spreads -spread_odd.title=Join page spreads starting with odd-numbered pages -spread_odd_label=Odd Spreads -spread_even.title=Join page spreads starting with even-numbered pages -spread_even_label=Even Spreads - -# Document properties dialog box -document_properties.title=Document Properties… -document_properties_label=Document Properties… -document_properties_file_name=File name: -document_properties_file_size=File size: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Pamagat: -document_properties_author=May Akda: -document_properties_subject=Subject: -document_properties_keywords=Mga keyword: -document_properties_creation_date=Creation Date: -document_properties_modification_date=Modification Date: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Creator: -document_properties_producer=PDF Producer: -document_properties_version=PDF Version: -document_properties_page_count=Page Count: -document_properties_page_size=Page Size: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=portrait -document_properties_page_size_orientation_landscape=landscape -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Fast Web View: -document_properties_linearized_yes=Oo -document_properties_linearized_no=Hindi -document_properties_close=Isara - -print_progress_message=Preparing document for printing… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Kanselahin - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Toggle Sidebar -toggle_sidebar_notification.title=Toggle Sidebar (document contains outline/attachments) -toggle_sidebar_label=Toggle Sidebar -document_outline.title=Show Document Outline (double-click to expand/collapse all items) -document_outline_label=Document Outline -attachments.title=Show Attachments -attachments_label=Attachments -thumbs.title=Ipakita ang mga Thumbnails -thumbs_label=Thumbnails -findbar.title=Find in Document -findbar_label=Hanapin - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Pahina {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Pahina {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Thumbnail ng Pahina {{page}} - -# Find panel button title and messages -find_input.title=Hanapin -find_input.placeholder=Find in document… -find_previous.title=Hanapin ang nakaraang pangyayari ng parirala -find_previous_label=Nakaraang -find_next.title=Hanapin ang susunod na pangyayari ng parirala -find_next_label=Susunod -find_highlight=I-highlight lahat -find_match_case_label=Match case -find_entire_word_label=Whole words -find_reached_top=Reached top of document, continued from bottom -find_reached_bottom=Reached end of document, continued from top -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} of {{total}} match -find_match_count[two]={{current}} of {{total}} matches -find_match_count[few]={{current}} of {{total}} matches -find_match_count[many]={{current}} of {{total}} matches -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=More than {{limit}} matches -find_match_count_limit[one]=More than {{limit}} match -find_match_count_limit[two]=More than {{limit}} matches -find_match_count_limit[few]=More than {{limit}} matches -find_match_count_limit[many]=More than {{limit}} matches -find_match_count_limit[other]=More than {{limit}} matches -find_not_found=Hindi nakita ang prasko - -# Error panel labels -error_more_info=Karagdagang Impormasyon -error_less_info=Mas Kaunting Impormasyon -error_close=Sarado -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Mensahe: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=File: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Linya: {{line}} -rendering_error=May naganap na pagkakamali habang pagsasalin sa pahina. - -# Predefined zoom values -page_scale_width=Lapad ng Pahina -page_scale_fit=ang pahina ay angkop -page_scale_auto=Automatic Zoom -page_scale_actual=Totoong sukat -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Error -loading_error=May maling nangyari habang kinakarga ang PDF. -invalid_file_error=Di-wasto o masira ang PDF file. -missing_file_error=Nawawalang PDF file. -unexpected_response_error=Hindi inaasahang tugon ng server. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=Ipasok ang password upang buksan ang PDF file na ito. -password_invalid=Invalid password. Please try again. -password_ok=OK -password_cancel=Kanselahin - -printing_not_supported=Warning: Printing is not fully supported by this browser. -printing_not_ready=Warning: The PDF is not fully loaded for printing. -web_fonts_disabled=Web fonts are disabled: unable to use embedded PDF fonts. -document_colors_not_allowed=PDF documents are not allowed to use their own colors: “Allow pages to choose their own colors” is deactivated in the browser. diff --git a/cookbook/static/pdfjs/locale/tr/viewer.properties b/cookbook/static/pdfjs/locale/tr/viewer.properties deleted file mode 100644 index f398fc9f5..000000000 --- a/cookbook/static/pdfjs/locale/tr/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Önceki sayfa -previous_label=Önceki -next.title=Sonraki sayfa -next_label=Sonraki - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Sayfa -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=Uzaklaştır -zoom_out_label=Uzaklaştır -zoom_in.title=Yaklaştır -zoom_in_label=Yaklaştır -zoom.title=Yakınlaştırma -presentation_mode.title=Sunum moduna geç -presentation_mode_label=Sunum Modu -open_file.title=Dosya aç -open_file_label=Aç -print.title=Yazdır -print_label=Yazdır -download.title=İndir -download_label=İndir -bookmark.title=Geçerli görünüm (kopyala veya yeni pencerede aç) -bookmark_label=Geçerli görünüm - -# Secondary toolbar and context menu -tools.title=Araçlar -tools_label=Araçlar -first_page.title=İlk sayfaya git -first_page.label=İlk sayfaya git -first_page_label=İlk sayfaya git -last_page.title=Son sayfaya git -last_page.label=Son sayfaya git -last_page_label=Son sayfaya git -page_rotate_cw.title=Saat yönünde döndür -page_rotate_cw.label=Saat yönünde döndür -page_rotate_cw_label=Saat yönünde döndür -page_rotate_ccw.title=Saat yönünün tersine döndür -page_rotate_ccw.label=Saat yönünün tersine döndür -page_rotate_ccw_label=Saat yönünün tersine döndür - -cursor_text_select_tool.title=Metin seçme aracını etkinleştir -cursor_text_select_tool_label=Metin seçme aracı -cursor_hand_tool.title=El aracını etkinleştir -cursor_hand_tool_label=El aracı - -scroll_vertical.title=Dikey kaydırma kullan -scroll_vertical_label=Dikey kaydırma -scroll_horizontal.title=Yatay kaydırma kullan -scroll_horizontal_label=Yatay kaydırma -scroll_wrapped.title=Yan yana kaydırmayı kullan -scroll_wrapped_label=Yan yana kaydırma - -spread_none.title=Yan yana sayfaları birleştirme -spread_none_label=Birleştirme -spread_odd.title=Yan yana sayfaları tek numaralı sayfalardan başlayarak birleştir -spread_odd_label=Tek numaralı -spread_even.title=Yan yana sayfaları çift numaralı sayfalardan başlayarak birleştir -spread_even_label=Çift numaralı - -# Document properties dialog box -document_properties.title=Belge özellikleri… -document_properties_label=Belge özellikleri… -document_properties_file_name=Dosya adı: -document_properties_file_size=Dosya boyutu: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bayt) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bayt) -document_properties_title=Başlık: -document_properties_author=Yazar: -document_properties_subject=Konu: -document_properties_keywords=Anahtar kelimeler: -document_properties_creation_date=Oluturma tarihi: -document_properties_modification_date=Değiştirme tarihi: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} {{time}} -document_properties_creator=Oluşturan: -document_properties_producer=PDF üreticisi: -document_properties_version=PDF sürümü: -document_properties_page_count=Sayfa sayısı: -document_properties_page_size=Sayfa boyutu: -document_properties_page_size_unit_inches=inç -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=dikey -document_properties_page_size_orientation_landscape=yatay -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Hızlı web görünümü: -document_properties_linearized_yes=Evet -document_properties_linearized_no=Hayır -document_properties_close=Kapat - -print_progress_message=Belge yazdırılmaya hazırlanıyor… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent=%{{progress}} -print_progress_close=İptal - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Kenar çubuğunu aç/kapat -toggle_sidebar_notification.title=Kenar çubuğunu aç/kapat (Belge ana hat/ekler içeriyor) -toggle_sidebar_label=Kenar çubuğunu aç/kapat -document_outline.title=Belge ana hatlarını göster (Tüm öğeleri genişletmek/daraltmak için çift tıklayın) -document_outline_label=Belge ana hatları -attachments.title=Ekleri göster -attachments_label=Ekler -thumbs.title=Küçük resimleri göster -thumbs_label=Küçük resimler -findbar.title=Belgede bul -findbar_label=Bul - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Sayfa {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Sayfa {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}}. sayfanın küçük hâli - -# Find panel button title and messages -find_input.title=Bul -find_input.placeholder=Belgede bul… -find_previous.title=Önceki eşleşmeyi bul -find_previous_label=Önceki -find_next.title=Sonraki eşleşmeyi bul -find_next_label=Sonraki -find_highlight=Tümünü vurgula -find_match_case_label=Büyük-küçük harfe duyarlı -find_entire_word_label=Tam sözcükler -find_reached_top=Belgenin başına ulaşıldı, sonundan devam edildi -find_reached_bottom=Belgenin sonuna ulaşıldı, başından devam edildi -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} eşleşmeden {{current}}. eşleşme -find_match_count[two]={{total}} eşleşmeden {{current}}. eşleşme -find_match_count[few]={{total}} eşleşmeden {{current}}. eşleşme -find_match_count[many]={{total}} eşleşmeden {{current}}. eşleşme -find_match_count[other]={{total}} eşleşmeden {{current}}. eşleşme -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]={{limit}} eşleşmeden fazla -find_match_count_limit[one]={{limit}} eşleşmeden fazla -find_match_count_limit[two]={{limit}} eşleşmeden fazla -find_match_count_limit[few]={{limit}} eşleşmeden fazla -find_match_count_limit[many]={{limit}} eşleşmeden fazla -find_match_count_limit[other]={{limit}} eşleşmeden fazla -find_not_found=Eşleşme bulunamadı - -# Error panel labels -error_more_info=Daha fazla bilgi al -error_less_info=Daha az bilgi -error_close=Kapat -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js sürüm {{version}} (yapı: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=İleti: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Yığın: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Dosya: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Satır: {{line}} -rendering_error=Sayfa yorumlanırken bir hata oluştu. - -# Predefined zoom values -page_scale_width=Sayfa genişliği -page_scale_fit=Sayfayı sığdır -page_scale_auto=Otomatik yakınlaştır -page_scale_actual=Gerçek boyut -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent=%{{scale}} - -# Loading indicator messages -loading_error_indicator=Hata -loading_error=PDF yüklenirken bir hata oluştu. -invalid_file_error=Geçersiz veya bozulmuş PDF dosyası. -missing_file_error=PDF dosyası eksik. -unexpected_response_error=Beklenmeyen sunucu yanıtı. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} işareti] -password_label=Bu PDF dosyasını açmak için parolasını yazın. -password_invalid=Geçersiz parola. Lütfen yeniden deneyin. -password_ok=Tamam -password_cancel=İptal - -printing_not_supported=Uyarı: Yazdırma bu tarayıcı tarafından tam olarak desteklenmemektedir. -printing_not_ready=Uyarı: PDF tamamen yüklenmedi ve yazdırmaya hazır değil. -web_fonts_disabled=Web fontları devre dışı: Gömülü PDF fontları kullanılamıyor. -document_colors_not_allowed=PDF belgelerinin kendi renklerini kullanması için izin verilmiyor: “Sayfalara kendi renklerini seçmesi için izin ver” tarayıcıda etkinleştirilmemiş. diff --git a/cookbook/static/pdfjs/locale/trs/viewer.properties b/cookbook/static/pdfjs/locale/trs/viewer.properties deleted file mode 100644 index 65252f7fe..000000000 --- a/cookbook/static/pdfjs/locale/trs/viewer.properties +++ /dev/null @@ -1,213 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Pajinâ gunâj rukùu -previous_label=Sa gachin -next.title=Pajinâ 'na' ñaan -next_label=Ne' ñaan - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Ñanj -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=si'iaj {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} of {{pagesCount}}) - -zoom_out.title=Nagi'iaj li' -zoom_out_label=Nagi'iaj li' -zoom_in.title=Nagi'iaj niko' -zoom_in_label=Nagi'iaj niko' -zoom.title=dàj nìko ma'an -presentation_mode.title=Naduno' daj ga ma -presentation_mode_label=Daj gà ma -open_file.title=Na'nïn' chrû ñanj -open_file_label=Na'nïn -print.title=Nari' ña du'ua -print_label=Nari' ñadu'ua -download.title=Nadunïnj -download_label=Nadunïnj -bookmark.title=Daj hua ma (Guxun' nej na'nïn' riña ventana nakàa) -bookmark_label=Daj hua ma - -# Secondary toolbar and context menu -tools.title=Rasun -tools_label=Nej rasùun -first_page.title=gun' riña pajina asiniin -first_page.label=Gun' riña pajina asiniin -first_page_label=Gun' riña pajina asiniin -last_page.title=Gun' riña pajina rukù ni'in -last_page.label=Gun' riña pajina rukù ni'inj -last_page_label=Gun' riña pajina rukù ni'inj -page_rotate_cw.title=Tanikaj ne' huat -page_rotate_cw.label=Tanikaj ne' huat -page_rotate_cw_label=Tanikaj ne' huat -page_rotate_ccw.title=Tanikaj ne' chînt' -page_rotate_ccw.label=Tanikaj ne' chint -page_rotate_ccw_label=Tanikaj ne' chint - -cursor_text_select_tool.title=Dugi'iaj sun' sa ganahui texto -cursor_text_select_tool_label=Nej rasun arajsun' da' nahui' texto -cursor_hand_tool.title=Nachrun' nej rasun -cursor_hand_tool_label=Sa rajsun ro'o' - -scroll_vertical.title=Garasun' dukuán runūu -scroll_vertical_label=Dukuán runūu -scroll_horizontal.title=Garasun' dukuán nikin' nahui -scroll_horizontal_label=Dukuán nikin' nahui -scroll_wrapped.title=Garasun' sa nachree -scroll_wrapped_label=Sa nachree - -spread_none.title=Si nagi'iaj nugun'un' nej pagina hua ninin -spread_none_label=Ni'io daj hua pagina -spread_odd.title=Nagi'iaj nugua'ant nej pajina -spread_odd_label=Ni'io' daj hua libro gurin -spread_even.title=Nakāj dugui' ngà nej pajinâ ayi'ì ngà da' hùi hùi -spread_even_label=Nahuin nìko nej - -# Document properties dialog box -document_properties.title=Nej sa nikāj ñanj… -document_properties_label=Nej sa nikāj ñanj… -document_properties_file_name=Si yugui archîbo: -document_properties_file_size=Dàj yachìj archîbo: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Si yugui: -document_properties_author=Sí girirà: -document_properties_subject=Dugui': -document_properties_keywords=Nej nuguan' huìi: -document_properties_creation_date=Gui gurugui' man: -document_properties_modification_date=Nuguan' nahuin nakà: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Guiri ro' -document_properties_producer=Sa ri PDF: -document_properties_version=PDF Version: -document_properties_page_count=Si Guendâ Pâjina: -document_properties_page_size=Dàj yachìj pâjina: -document_properties_page_size_unit_inches=riña -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=nadu'ua -document_properties_page_size_orientation_landscape=dàj huaj -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Da'ngà'a -document_properties_page_size_name_legal=Nuguan' a'nï'ïn -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Nanèt chre ni'iajt riña Web: -document_properties_linearized_yes=Ga'ue -document_properties_linearized_no=Si ga'ue -document_properties_close=Narán - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Duyichin' - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Nadunā barrâ nù yi'nïn -toggle_sidebar_label=Nadunā barrâ nù yi'nïn -findbar_label=Narì' - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. - -# Find panel button title and messages -find_input.title=Narì' -find_previous_label=Sa gachîn -find_next_label=Ne' ñaan -find_highlight=Daran' sa ña'an -find_match_case_label=Match case -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} si'iaj {{total}} guña gè huaj -find_match_count[two]={{current}} si'iaj {{total}} guña gè huaj -find_match_count[few]={{current}} si'iaj {{total}} guña gè huaj -find_match_count[many]={{current}} si'iaj {{total}} guña gè huaj -find_match_count[other]={{current}} of {{total}} matches -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Doj ngà da' {{limit}} nej sa nari' dugui'i -find_match_count_limit[one]=Doj ngà da' {{limit}} sa nari' dugui'i -find_match_count_limit[two]=Doj ngà da' {{limit}} nej sa nari' dugui'i -find_match_count_limit[few]=Doj ngà da' {{limit}} nej sa nari' dugui'i -find_match_count_limit[many]=Doj ngà da' {{limit}} nej sa nari' dugui'i -find_match_count_limit[other]=Doj ngà da' {{limit}} nej sa nari' dugui'i -find_not_found=Nu narì'ij nugua'anj - -# Error panel labels -error_more_info=Doj nuguan' a'min rayi'î nan -error_less_info=Dòj nuguan' a'min rayi'î nan -error_close=Narán -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Message: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Naru'ui': {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Archîbo: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Lînia: {{line}} - -# Predefined zoom values -page_scale_actual=Dàj yàchi akuan' nín -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Nitaj si hua hue'ej - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -password_ok=Ga'ue -password_cancel=Duyichin' - diff --git a/cookbook/static/pdfjs/locale/uk/viewer.properties b/cookbook/static/pdfjs/locale/uk/viewer.properties deleted file mode 100644 index 599c8f916..000000000 --- a/cookbook/static/pdfjs/locale/uk/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Попередня сторінка -previous_label=Попередня -next.title=Наступна сторінка -next_label=Наступна - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Сторінка -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=із {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} із {{pagesCount}}) - -zoom_out.title=Зменшити -zoom_out_label=Зменшити -zoom_in.title=Збільшити -zoom_in_label=Збільшити -zoom.title=Масштаб -presentation_mode.title=Перейти в режим презентації -presentation_mode_label=Режим презентації -open_file.title=Відкрити файл -open_file_label=Відкрити -print.title=Друк -print_label=Друк -download.title=Завантажити -download_label=Завантажити -bookmark.title=Поточний вигляд (копіювати чи відкрити в новому вікні) -bookmark_label=Поточний вигляд - -# Secondary toolbar and context menu -tools.title=Інструменти -tools_label=Інструменти -first_page.title=На першу сторінку -first_page.label=На першу сторінку -first_page_label=На першу сторінку -last_page.title=На останню сторінку -last_page.label=На останню сторінку -last_page_label=На останню сторінку -page_rotate_cw.title=Повернути за годинниковою стрілкою -page_rotate_cw.label=Повернути за годинниковою стрілкою -page_rotate_cw_label=Повернути за годинниковою стрілкою -page_rotate_ccw.title=Повернути проти годинникової стрілки -page_rotate_ccw.label=Повернути проти годинникової стрілки -page_rotate_ccw_label=Повернути проти годинникової стрілки - -cursor_text_select_tool.title=Увімкнути інструмент вибору тексту -cursor_text_select_tool_label=Інструмент вибору тексту -cursor_hand_tool.title=Увімкнути інструмент «Рука» -cursor_hand_tool_label=Інструмент «Рука» - -scroll_vertical.title=Використовувати вертикальне прокручування -scroll_vertical_label=Вертикальне прокручування -scroll_horizontal.title=Використовувати горизонтальне прокручування -scroll_horizontal_label=Горизонтальне прокручування -scroll_wrapped.title=Використовувати масштабоване прокручування -scroll_wrapped_label=Масштабоване прокручування - -spread_none.title=Не використовувати розгорнуті сторінки -spread_none_label=Без розгорнутих сторінок -spread_odd.title=Розгорнуті сторінки починаються з непарних номерів -spread_odd_label=Непарні сторінки зліва -spread_even.title=Розгорнуті сторінки починаються з парних номерів -spread_even_label=Парні сторінки зліва - -# Document properties dialog box -document_properties.title=Властивості документа… -document_properties_label=Властивості документа… -document_properties_file_name=Назва файла: -document_properties_file_size=Розмір файла: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} КБ ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} МБ ({{size_b}} bytes) -document_properties_title=Заголовок: -document_properties_author=Автор: -document_properties_subject=Тема: -document_properties_keywords=Ключові слова: -document_properties_creation_date=Дата створення: -document_properties_modification_date=Дата зміни: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Створено: -document_properties_producer=Виробник PDF: -document_properties_version=Версія PDF: -document_properties_page_count=Кількість сторінок: -document_properties_page_size=Розмір сторінки: -document_properties_page_size_unit_inches=дюймів -document_properties_page_size_unit_millimeters=мм -document_properties_page_size_orientation_portrait=книжкова -document_properties_page_size_orientation_landscape=альбомна -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Швидкий перегляд в Інтернеті: -document_properties_linearized_yes=Так -document_properties_linearized_no=Ні -document_properties_close=Закрити - -print_progress_message=Підготовка документу до друку… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Скасувати - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Бічна панель -toggle_sidebar_notification.title=Перемкнути бічну панель (документ має вміст/вкладення) -toggle_sidebar_label=Перемкнути бічну панель -document_outline.title=Показати схему документу (подвійний клік для розгортання/згортання елементів) -document_outline_label=Схема документа -attachments.title=Показати прикріплення -attachments_label=Прикріплення -thumbs.title=Показувати ескізи -thumbs_label=Ескізи -findbar.title=Знайти в документі -findbar_label=Пошук - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Сторінка {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Сторінка {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Ескіз сторінки {{page}} - -# Find panel button title and messages -find_input.title=Знайти -find_input.placeholder=Знайти в документі… -find_previous.title=Знайти попереднє входження фрази -find_previous_label=Попереднє -find_next.title=Знайти наступне входження фрази -find_next_label=Наступне -find_highlight=Підсвітити все -find_match_case_label=З урахуванням регістру -find_entire_word_label=Цілі слова -find_reached_top=Досягнуто початку документу, продовжено з кінця -find_reached_bottom=Досягнуто кінця документу, продовжено з початку -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} збіг із {{total}} -find_match_count[two]={{current}} збіги з {{total}} -find_match_count[few]={{current}} збігів із {{total}} -find_match_count[many]={{current}} збігів із {{total}} -find_match_count[other]={{current}} збігів із {{total}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Понад {{limit}} збігів -find_match_count_limit[one]=Більше, ніж {{limit}} збіг -find_match_count_limit[two]=Більше, ніж {{limit}} збіги -find_match_count_limit[few]=Більше, ніж {{limit}} збігів -find_match_count_limit[many]=Понад {{limit}} збігів -find_match_count_limit[other]=Понад {{limit}} збігів -find_not_found=Фразу не знайдено - -# Error panel labels -error_more_info=Більше інформації -error_less_info=Менше інформації -error_close=Закрити -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Повідомлення: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Стек: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Файл: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Рядок: {{line}} -rendering_error=Під час виведення сторінки сталася помилка. - -# Predefined zoom values -page_scale_width=За шириною -page_scale_fit=Умістити -page_scale_auto=Авто-масштаб -page_scale_actual=Дійсний розмір -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Помилка -loading_error=Під час завантаження PDF сталася помилка. -invalid_file_error=Недійсний або пошкоджений PDF-файл. -missing_file_error=Відсутній PDF-файл. -unexpected_response_error=Неочікувана відповідь сервера. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}}-аннотація] -password_label=Введіть пароль для відкриття цього PDF-файла. -password_invalid=Невірний пароль. Спробуйте ще. -password_ok=Гаразд -password_cancel=Скасувати - -printing_not_supported=Попередження: Цей браузер не повністю підтримує друк. -printing_not_ready=Попередження: PDF не повністю завантажений для друку. -web_fonts_disabled=Веб-шрифти вимкнено: неможливо використати вбудовані у PDF шрифти. -document_colors_not_allowed=PDF-документам не дозволено використовувати власні кольори: в браузері вимкнено параметр «Дозволити сторінкам використовувати власні кольори». diff --git a/cookbook/static/pdfjs/locale/ur/viewer.properties b/cookbook/static/pdfjs/locale/ur/viewer.properties deleted file mode 100644 index 78e2029d4..000000000 --- a/cookbook/static/pdfjs/locale/ur/viewer.properties +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=پچھلا صفحہ -previous_label=پچھلا -next.title=اگلا صفحہ -next_label=آگے - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=صفحہ -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages={{pagesCount}} کا -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} کا {{pagesCount}}) - -zoom_out.title=باہر زوم کریں -zoom_out_label=باہر زوم کریں -zoom_in.title=اندر زوم کریں -zoom_in_label=اندر زوم کریں -zoom.title=زوم -presentation_mode.title=پیشکش موڈ میں چلے جائیں -presentation_mode_label=پیشکش موڈ -open_file.title=مسل کھولیں -open_file_label=کھولیں -print.title=چھاپیں -print_label=چھاپیں -download.title=ڈاؤن لوڈ -download_label=ڈاؤن لوڈ -bookmark.title=حالیہ نظارہ (نۓ دریچہ میں نقل کریں یا کھولیں) -bookmark_label=حالیہ نظارہ - -# Secondary toolbar and context menu -tools.title=آلات -tools_label=آلات -first_page.title=پہلے صفحہ پر جائیں -first_page.label=پہلے صفحہ پر جائیں -first_page_label=پہلے صفحہ پر جائیں -last_page.title=آخری صفحہ پر جائیں -last_page.label=آخری صفحہ پر جائیں -last_page_label=آخری صفحہ پر جائیں -page_rotate_cw.title=گھڑی وار گھمائیں -page_rotate_cw.label=گھڑی وار گھمائیں -page_rotate_cw_label=گھڑی وار گھمائیں -page_rotate_ccw.title=ضد گھڑی وار گھمائیں -page_rotate_ccw.label=ضد گھڑی وار گھمائیں -page_rotate_ccw_label=ضد گھڑی وار گھمائیں - -cursor_text_select_tool.title=متن کے انتخاب کے ٹول کو فعال بناے -cursor_text_select_tool_label=متن کے انتخاب کا آلہ -cursor_hand_tool.title=ہینڈ ٹول کو فعال بناییں -cursor_hand_tool_label=ہاتھ کا آلہ - -scroll_vertical.title=عمودی اسکرولنگ کا استعمال کریں -scroll_vertical_label=عمودی اسکرولنگ -scroll_horizontal.title=افقی سکرولنگ کا استعمال کریں -scroll_horizontal_label=افقی سکرولنگ - -spread_none.title=صفحہ پھیلانے میں شامل نہ ہوں -spread_none_label=کوئی پھیلاؤ نہیں -spread_odd_label=تاک پھیلاؤ -spread_even_label=جفت پھیلاؤ - -# Document properties dialog box -document_properties.title=دستاویز خواص… -document_properties_label=دستاویز خواص…\u0020 -document_properties_file_name=نام مسل: -document_properties_file_size=مسل سائز: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=عنوان: -document_properties_author=تخلیق کار: -document_properties_subject=موضوع: -document_properties_keywords=کلیدی الفاظ: -document_properties_creation_date=تخلیق کی تاریخ: -document_properties_modification_date=ترمیم کی تاریخ: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}، {{time}} -document_properties_creator=تخلیق کار: -document_properties_producer=PDF پیدا کار: -document_properties_version=PDF ورژن: -document_properties_page_count=صفحہ شمار: -document_properties_page_size=صفہ کی لمبائ: -document_properties_page_size_unit_inches=میں -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=عمودی انداز -document_properties_page_size_orientation_landscape=افقى انداز -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=خط -document_properties_page_size_name_legal=قانونی -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} {{name}} {{orientation}} -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=تیز ویب دیکھیں: -document_properties_linearized_yes=ہاں -document_properties_linearized_no=نہیں -document_properties_close=بند کریں - -print_progress_message=چھاپنے کرنے کے لیے دستاویز تیار کیے جا رھے ھیں -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent=*{{progress}}%* -print_progress_close=منسوخ کریں - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=سلائیڈ ٹوگل کریں -toggle_sidebar_label=سلائیڈ ٹوگل کریں -document_outline.title=دستاویز کی سرخیاں دکھایں (تمام اشیاء وسیع / غائب کرنے کے لیے ڈبل کلک کریں) -document_outline_label=دستاویز آؤٹ لائن -attachments.title=منسلکات دکھائیں -attachments_label=منسلکات -thumbs.title=تھمبنیل دکھائیں -thumbs_label=مجمل -findbar.title=دستاویز میں ڈھونڈیں -findbar_label=ڈھونڈیں - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=صفحہ {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=صفحہ {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=صفحے کا مجمل {{page}} - -# Find panel button title and messages -find_input.title=ڈھونڈیں -find_input.placeholder=دستاویز… میں ڈھونڈیں -find_previous.title=فقرے کا پچھلا وقوع ڈھونڈیں -find_previous_label=پچھلا -find_next.title=فقرے کا اگلہ وقوع ڈھونڈیں -find_next_label=آگے -find_highlight=تمام نمایاں کریں -find_match_case_label=حروف مشابہ کریں -find_entire_word_label=تمام الفاظ -find_reached_top=صفحہ کے شروع پر پہنچ گیا، نیچے سے جاری کیا -find_reached_bottom=صفحہ کے اختتام پر پہنچ گیا، اوپر سے جاری کیا -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{total}} میچ کا {{current}}. -find_match_count[few]={{total}} میچوں میں سے {{current}} -find_match_count[many]={{total}} میچوں میں سے {{current}} -find_match_count[other]={{total}} میچوں میں سے {{current}} -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(total) ]} -find_match_count_limit[zero]={{limit}} سے زیادہ میچ -find_match_count_limit[one]={{limit}} سے زیادہ میچ -find_match_count_limit[two]={{limit}} سے زیادہ میچ -find_match_count_limit[few]={{limit}} سے زیادہ میچ -find_match_count_limit[many]={{limit}} سے زیادہ میچ -find_match_count_limit[other]={{limit}} سے زیادہ میچ -find_not_found=فقرا نہیں ملا - -# Error panel labels -error_more_info=مزید معلومات -error_less_info=کم معلومات -error_close=بند کریں -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=پیغام: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=سٹیک: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=مسل: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=لائن: {{line}} -rendering_error=صفحہ بناتے ہوئے نقص آ گیا۔ - -# Predefined zoom values -page_scale_width=صفحہ چوڑائی -page_scale_fit=صفحہ فٹنگ -page_scale_auto=خودکار زوم -page_scale_actual=اصل سائز -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=نقص -loading_error=PDF لوڈ کرتے وقت نقص آ گیا۔ -invalid_file_error=ناجائز یا خراب PDF مسل -missing_file_error=PDF مسل غائب ہے۔ -unexpected_response_error=غیرمتوقع پیش کار جواب - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}.{{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} نوٹ] -password_label=PDF مسل کھولنے کے لیے پاس ورڈ داخل کریں. -password_invalid=ناجائز پاس ورڈ. براےؑ کرم دوبارہ کوشش کریں. -password_ok=ٹھیک ہے -password_cancel=منسوخ کریں - -printing_not_supported=تنبیہ:چھاپنا اس براؤزر پر پوری طرح معاونت شدہ نہیں ہے۔ -printing_not_ready=تنبیہ: PDF چھپائی کے لیے پوری طرح لوڈ نہیں ہوئی۔ -web_fonts_disabled=ویب فانٹ نا اہل ہیں: شامل PDF فانٹ استعمال کرنے میں ناکام۔ -document_colors_not_allowed=PDF دستاویزات کو اپنے رنگ استعمال کرنے کی اجازت نہیں: 'صفحات کو اپنے رنگ چنیں' کی اِجازت براؤزر میں بے عمل ہے۔ diff --git a/cookbook/static/pdfjs/locale/uz/viewer.properties b/cookbook/static/pdfjs/locale/uz/viewer.properties deleted file mode 100644 index e451c74ff..000000000 --- a/cookbook/static/pdfjs/locale/uz/viewer.properties +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Oldingi sahifa -previous_label=Oldingi -next.title=Keyingi sahifa -next_label=Keyingi - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/{{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom_out.title=Kichiklashtirish -zoom_out_label=Kichiklashtirish -zoom_in.title=Kattalashtirish -zoom_in_label=Kattalashtirish -zoom.title=Masshtab -presentation_mode.title=Namoyish usuliga oʻtish -presentation_mode_label=Namoyish usuli -open_file.title=Faylni ochish -open_file_label=Ochish -print.title=Chop qilish -print_label=Chop qilish -download.title=Yuklab olish -download_label=Yuklab olish -bookmark.title=Joriy koʻrinish (nusxa oling yoki yangi oynada oching) -bookmark_label=Joriy koʻrinish - -# Secondary toolbar and context menu -tools.title=Vositalar -tools_label=Vositalar -first_page.title=Birinchi sahifaga oʻtish -first_page.label=Birinchi sahifaga oʻtish -first_page_label=Birinchi sahifaga oʻtish -last_page.title=Soʻnggi sahifaga oʻtish -last_page.label=Soʻnggi sahifaga oʻtish -last_page_label=Soʻnggi sahifaga oʻtish -page_rotate_cw.title=Soat yoʻnalishi boʻyicha burish -page_rotate_cw.label=Soat yoʻnalishi boʻyicha burish -page_rotate_cw_label=Soat yoʻnalishi boʻyicha burish -page_rotate_ccw.title=Soat yoʻnalishiga qarshi burish -page_rotate_ccw.label=Soat yoʻnalishiga qarshi burish -page_rotate_ccw_label=Soat yoʻnalishiga qarshi burish - - -# Document properties dialog box -document_properties.title=Hujjat xossalari -document_properties_label=Hujjat xossalari -document_properties_file_name=Fayl nomi: -document_properties_file_size=Fayl hajmi: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} bytes) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} bytes) -document_properties_title=Nomi: -document_properties_author=Muallifi: -document_properties_subject=Mavzusi: -document_properties_keywords=Kalit so‘zlar -document_properties_creation_date=Yaratilgan sanasi: -document_properties_modification_date=O‘zgartirilgan sanasi -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Yaratuvchi: -document_properties_producer=PDF ishlab chiqaruvchi: -document_properties_version=PDF versiyasi: -document_properties_page_count=Sahifa soni: -document_properties_close=Yopish - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Yon panelni yoqib/oʻchirib qoʻyish -toggle_sidebar_label=Yon panelni yoqib/oʻchirib qoʻyish -document_outline_label=Hujjat tuzilishi -attachments.title=Ilovalarni ko‘rsatish -attachments_label=Ilovalar -thumbs.title=Nishonchalarni koʻrsatish -thumbs_label=Nishoncha -findbar.title=Hujjat ichidan topish - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title={{page}} sahifa -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas={{page}} sahifa nishonchasi - -# Find panel button title and messages -find_previous.title=Soʻzlardagi oldingi hodisani topish -find_previous_label=Oldingi -find_next.title=Iboradagi keyingi hodisani topish -find_next_label=Keyingi -find_highlight=Barchasini ajratib koʻrsatish -find_match_case_label=Katta-kichik harflarni farqlash -find_reached_top=Hujjatning boshigacha yetib keldik, pastdan davom ettiriladi -find_reached_bottom=Hujjatning oxiriga yetib kelindi, yuqoridan davom ettirladi -find_not_found=Soʻzlar topilmadi - -# Error panel labels -error_more_info=Koʻproq ma`lumot -error_less_info=Kamroq ma`lumot -error_close=Yopish -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Xabar: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Toʻplam: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Fayl: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Satr: {{line}} -rendering_error=Sahifa renderlanayotganda xato yuz berdi. - -# Predefined zoom values -page_scale_width=Sahifa eni -page_scale_fit=Sahifani moslashtirish -page_scale_auto=Avtomatik masshtab -page_scale_actual=Haqiqiy hajmi -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Xato -loading_error=PDF yuklanayotganda xato yuz berdi. -invalid_file_error=Xato yoki buzuq PDF fayli. -missing_file_error=PDF fayl kerak. -unexpected_response_error=Kutilmagan server javobi. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Annotation] -password_label=PDF faylni ochish uchun parolni kiriting. -password_invalid=Parol - notoʻgʻri. Qaytadan urinib koʻring. -password_ok=OK - -printing_not_supported=Diqqat: chop qilish bruzer tomonidan toʻliq qoʻllab-quvvatlanmaydi. -printing_not_ready=Diqqat: PDF fayl chop qilish uchun toʻliq yuklanmadi. -web_fonts_disabled=Veb shriftlar oʻchirilgan: ichki PDF shriftlardan foydalanib boʻlmmaydi. -document_colors_not_allowed=PDF hujjat oʻzining ranglaridan foydalanishga ruxsat bermaydi: 'Sahifalarga oʻzining rangidan foydalanishga ruxsat berish' ushbu brauzerda oʻchirib qoʻyilgan. diff --git a/cookbook/static/pdfjs/locale/vi/viewer.properties b/cookbook/static/pdfjs/locale/vi/viewer.properties deleted file mode 100644 index b8ee16e5c..000000000 --- a/cookbook/static/pdfjs/locale/vi/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Trang trước -previous_label=Trước -next.title=Trang Sau -next_label=Tiếp - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Trang -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=trên {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} trên {{pagesCount}}) - -zoom_out.title=Thu nhỏ -zoom_out_label=Thu nhỏ -zoom_in.title=Phóng to -zoom_in_label=Phóng to -zoom.title=Thu phóng -presentation_mode.title=Chuyển sang chế độ trình chiếu -presentation_mode_label=Chế độ trình chiếu -open_file.title=Mở tập tin -open_file_label=Mở tập tin -print.title=In -print_label=In -download.title=Tải xuống -download_label=Tải xuống -bookmark.title=Chế độ xem hiện tại (sao chép hoặc mở trong cửa sổ mới) -bookmark_label=Chế độ xem hiện tại - -# Secondary toolbar and context menu -tools.title=Công cụ -tools_label=Công cụ -first_page.title=Về trang đầu -first_page.label=Về trang đầu -first_page_label=Về trang đầu -last_page.title=Đến trang cuối -last_page.label=Đến trang cuối -last_page_label=Đến trang cuối -page_rotate_cw.title=Xoay theo chiều kim đồng hồ -page_rotate_cw.label=Xoay theo chiều kim đồng hồ -page_rotate_cw_label=Xoay theo chiều kim đồng hồ -page_rotate_ccw.title=Xoay ngược chiều kim đồng hồ -page_rotate_ccw.label=Xoay ngược chiều kim đồng hồ -page_rotate_ccw_label=Xoay ngược chiều kim đồng hồ - -cursor_text_select_tool.title=Kích hoạt công cụ chọn vùng văn bản -cursor_text_select_tool_label=Công cụ chọn vùng văn bản -cursor_hand_tool.title=Kích hoạt công cụ con trỏ -cursor_hand_tool_label=Công cụ con trỏ - -scroll_vertical.title=Sử dụng cuộn dọc -scroll_vertical_label=Cuộn dọc -scroll_horizontal.title=Sử dụng cuộn ngang -scroll_horizontal_label=Cuộn ngang -scroll_wrapped.title=Sử dụng cuộn ngắt dòng -scroll_wrapped_label=Cuộn ngắt dòng - -spread_none.title=Không nối rộng trang -spread_none_label=Không có phân cách -spread_odd.title=Nối trang bài bắt đầu với các trang được đánh số lẻ -spread_odd_label=Phân cách theo số lẻ -spread_even.title=Nối trang bài bắt đầu với các trang được đánh số chẵn -spread_even_label=Phân cách theo số chẵn - -# Document properties dialog box -document_properties.title=Thuộc tính của tài liệu… -document_properties_label=Thuộc tính của tài liệu… -document_properties_file_name=Tên tập tin: -document_properties_file_size=Kích thước: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} byte) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} byte) -document_properties_title=Tiêu đề: -document_properties_author=Tác giả: -document_properties_subject=Chủ đề: -document_properties_keywords=Từ khóa: -document_properties_creation_date=Ngày tạo: -document_properties_modification_date=Ngày sửa đổi: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Người tạo: -document_properties_producer=Phần mềm tạo PDF: -document_properties_version=Phiên bản PDF: -document_properties_page_count=Tổng số trang: -document_properties_page_size=Kích thước trang: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=khổ dọc -document_properties_page_size_orientation_landscape=khổ ngang -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Thư -document_properties_page_size_name_legal=Pháp lý -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=Xem nhanh trên web: -document_properties_linearized_yes=Có -document_properties_linearized_no=Không -document_properties_close=Ðóng - -print_progress_message=Chuẩn bị trang để in… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Hủy bỏ - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Bật/Tắt thanh lề -toggle_sidebar_notification.title=Bật tắt thanh lề (tài liệu bao gồm bản phác thảo/tập tin đính kèm) -toggle_sidebar_label=Bật/Tắt thanh lề -document_outline.title=Hiện tài liệu phác thảo (nhấp đúp vào để mở rộng/thu gọn tất cả các mục) -document_outline_label=Bản phác tài liệu -attachments.title=Hiện nội dung đính kèm -attachments_label=Nội dung đính kèm -thumbs.title=Hiển thị ảnh thu nhỏ -thumbs_label=Ảnh thu nhỏ -findbar.title=Tìm trong tài liệu -findbar_label=Tìm - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=Trang {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Trang {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Ảnh thu nhỏ của trang {{page}} - -# Find panel button title and messages -find_input.title=Tìm -find_input.placeholder=Tìm trong tài liệu… -find_previous.title=Tìm cụm từ ở phần trước -find_previous_label=Trước -find_next.title=Tìm cụm từ ở phần sau -find_next_label=Tiếp -find_highlight=Tô sáng tất cả -find_match_case_label=Phân biệt hoa, thường -find_entire_word_label=Toàn bộ từ -find_reached_top=Đã đến phần đầu tài liệu, quay trở lại từ cuối -find_reached_bottom=Đã đến phần cuối của tài liệu, quay trở lại từ đầu -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]={{current}} của {{total}} đã trùng -find_match_count[two]={{current}} của {{total}} đã trùng -find_match_count[few]={{current}} của {{total}} đã trùng -find_match_count[many]={{current}} của {{total}} đã trùng -find_match_count[other]={{current}} của {{total}} đã trùng -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=Nhiều hơn {{limit}} đã trùng -find_match_count_limit[one]=Nhiều hơn {{limit}} đã trùng -find_match_count_limit[two]=Nhiều hơn {{limit}} đã trùng -find_match_count_limit[few]=Nhiều hơn {{limit}} đã trùng -find_match_count_limit[many]=Nhiều hơn {{limit}} đã trùng -find_match_count_limit[other]=Nhiều hơn {{limit}} đã trùng -find_not_found=Không tìm thấy cụm từ này - -# Error panel labels -error_more_info=Thông tin thêm -error_less_info=Hiển thị ít thông tin hơn -error_close=Đóng -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Thông điệp: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Stack: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Tập tin: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Dòng: {{line}} -rendering_error=Lỗi khi hiển thị trang. - -# Predefined zoom values -page_scale_width=Vừa chiều rộng -page_scale_fit=Vừa chiều cao -page_scale_auto=Tự động chọn kích thước -page_scale_actual=Kích thước thực -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Lỗi -loading_error=Lỗi khi tải tài liệu PDF. -invalid_file_error=Tập tin PDF hỏng hoặc không hợp lệ. -missing_file_error=Thiếu tập tin PDF. -unexpected_response_error=Máy chủ có phản hồi lạ. - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}}, {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Chú thích] -password_label=Nhập mật khẩu để mở tập tin PDF này. -password_invalid=Mật khẩu không đúng. Vui lòng thử lại. -password_ok=OK -password_cancel=Hủy bỏ - -printing_not_supported=Cảnh báo: In ấn không được hỗ trợ đầy đủ ở trình duyệt này. -printing_not_ready=Cảnh báo: PDF chưa được tải hết để in. -web_fonts_disabled=Phông chữ Web bị vô hiệu hóa: không thể sử dụng các phông chữ PDF được nhúng. -document_colors_not_allowed=Tài liệu PDF không được cho phép dùng màu riêng: 'Cho phép trang chọn màu riêng' đã bị tắt trên trình duyệt. diff --git a/cookbook/static/pdfjs/locale/wo/viewer.properties b/cookbook/static/pdfjs/locale/wo/viewer.properties deleted file mode 100644 index 38c7bc184..000000000 --- a/cookbook/static/pdfjs/locale/wo/viewer.properties +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Xët wi jiitu -previous_label=Bi jiitu -next.title=Xët wi ci topp -next_label=Bi ci topp - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. - -zoom_out.title=Wàññi -zoom_out_label=Wàññi -zoom_in.title=Yaatal -zoom_in_label=Yaatal -zoom.title=Yambalaŋ -presentation_mode.title=Wañarñil ci anamu wone -presentation_mode_label=Anamu Wone -open_file.title=Ubbi benn dencukaay -open_file_label=Ubbi -print.title=Móol -print_label=Móol -download.title=Yeb yi -download_label=Yeb yi -bookmark.title=Wone bi taxaw (duppi walla ubbi palanteer bu bees) -bookmark_label=Wone bi feeñ - -# Secondary toolbar and context menu - - -# Document properties dialog box -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_title=Bopp: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. - -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -thumbs.title=Wone nataal yu ndaw yi -thumbs_label=Nataal yu ndaw yi -findbar.title=Gis ci biir jukki bi -findbar_label=Wut - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Xët {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Wiñet bu xët {{page}} - -# Find panel button title and messages -find_previous.title=Seet beneen kaddu bu ni mel te jiitu -find_previous_label=Bi jiitu -find_next.title=Seet beneen kaddu bu ni mel -find_next_label=Bi ci topp -find_highlight=Melaxal lépp -find_match_case_label=Sàmm jëmmalin wi -find_reached_top=Jot nañu ndorteel xët wi, kontine dale ko ci suuf -find_reached_bottom=Jot nañu jeexitalu xët wi, kontine ci ndorte -find_not_found=Gisiñu kaddu gi - -# Error panel labels -error_more_info=Xibaar yu gën bari -error_less_info=Xibaar yu gën bari -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Bataaxal: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Juug: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Dencukaay: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Rëdd : {{line}} -rendering_error=Am njumte bu am bi xët bi di wonewu. - -# Predefined zoom values -page_scale_width=Yaatuwaay bu mët -page_scale_fit=Xët lëmm -page_scale_auto=Yambalaŋ ci saa si -page_scale_actual=Dayo bi am -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. - -# Loading indicator messages -loading_error_indicator=Njumte -loading_error=Am na njumte ci yebum dencukaay PDF bi. -invalid_file_error=Dencukaay PDF bi baaxul walla mu sankar. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[Karmat {{type}}] -password_ok=OK -password_cancel=Neenal - -printing_not_supported=Artu: Joowkat bii nanguwul lool mool. diff --git a/cookbook/static/pdfjs/locale/xh/viewer.properties b/cookbook/static/pdfjs/locale/xh/viewer.properties deleted file mode 100644 index 1fa394bbd..000000000 --- a/cookbook/static/pdfjs/locale/xh/viewer.properties +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=Iphepha langaphambili -previous_label=Okwangaphambili -next.title=Iphepha elilandelayo -next_label=Okulandelayo - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=Iphepha -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=kwali- {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} kwali {{pagesCount}}) - -zoom_out.title=Bhekelisela Kudana -zoom_out_label=Bhekelisela Kudana -zoom_in.title=Sondeza Kufuphi -zoom_in_label=Sondeza Kufuphi -zoom.title=Yandisa / Nciphisa -presentation_mode.title=Tshintshela kwimo yonikezelo -presentation_mode_label=Imo yonikezelo -open_file.title=Vula Ifayile -open_file_label=Vula -print.title=Printa -print_label=Printa -download.title=Khuphela -download_label=Khuphela -bookmark.title=Imbonakalo ekhoyo (kopa okanye vula kwifestile entsha) -bookmark_label=Imbonakalo ekhoyo - -# Secondary toolbar and context menu -tools.title=Izixhobo zemiyalelo -tools_label=Izixhobo zemiyalelo -first_page.title=Yiya kwiphepha lokuqala -first_page.label=Yiya kwiphepha lokuqala -first_page_label=Yiya kwiphepha lokuqala -last_page.title=Yiya kwiphepha lokugqibela -last_page.label=Yiya kwiphepha lokugqibela -last_page_label=Yiya kwiphepha lokugqibela -page_rotate_cw.title=Jikelisa ngasekunene -page_rotate_cw.label=Jikelisa ngasekunene -page_rotate_cw_label=Jikelisa ngasekunene -page_rotate_ccw.title=Jikelisa ngasekhohlo -page_rotate_ccw.label=Jikelisa ngasekhohlo -page_rotate_ccw_label=Jikelisa ngasekhohlo - -cursor_text_select_tool.title=Vumela iSixhobo sokuKhetha iTeksti -cursor_text_select_tool_label=ISixhobo sokuKhetha iTeksti -cursor_hand_tool.title=Yenza iSixhobo seSandla siSebenze -cursor_hand_tool_label=ISixhobo seSandla - -# Document properties dialog box -document_properties.title=Iipropati zoxwebhu… -document_properties_label=Iipropati zoxwebhu… -document_properties_file_name=Igama lefayile: -document_properties_file_size=Isayizi yefayile: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB (iibhayiti{{size_b}}) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB (iibhayithi{{size_b}}) -document_properties_title=Umxholo: -document_properties_author=Umbhali: -document_properties_subject=Umbandela: -document_properties_keywords=Amagama aphambili: -document_properties_creation_date=Umhla wokwenziwa kwayo: -document_properties_modification_date=Umhla wokulungiswa kwayo: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=Umntu oyenzileyo: -document_properties_producer=Umvelisi we-PDF: -document_properties_version=Uhlelo lwe-PDF: -document_properties_page_count=Inani lamaphepha: -document_properties_close=Vala - -print_progress_message=Ilungisa uxwebhu ukuze iprinte… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=Rhoxisa - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=Togola ngebha eseCaleni -toggle_sidebar_notification.title=ISidebar yeQhosha (uxwebhu lunolwandlalo/iziqhotyoshelwa) -toggle_sidebar_label=Togola ngebha eseCaleni -document_outline.title=Bonisa uLwandlalo loXwebhu (cofa kabini ukuze wandise/diliza zonke izinto) -document_outline_label=Isishwankathelo soxwebhu -attachments.title=Bonisa iziqhotyoshelwa -attachments_label=Iziqhoboshelo -thumbs.title=Bonisa ukrobiso kumfanekiso -thumbs_label=Ukrobiso kumfanekiso -findbar.title=Fumana kuXwebhu -findbar_label=Fumana - -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=Iphepha {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=Ukrobiso kumfanekiso wephepha {{page}} - -# Find panel button title and messages -find_input.title=Fumana -find_input.placeholder=Fumana kuXwebhu… -find_previous.title=Fumanisa isenzeko sangaphambili sebinzana lamagama -find_previous_label=Okwangaphambili -find_next.title=Fumanisa isenzeko esilandelayo sebinzana lamagama -find_next_label=Okulandelayo -find_highlight=Qaqambisa konke -find_match_case_label=Tshatisa ngobukhulu bukanobumba -find_reached_top=Ufike ngaphezulu ephepheni, kusukwa ngezantsi -find_reached_bottom=Ufike ekupheleni kwephepha, kusukwa ngaphezulu -find_not_found=Ibinzana alifunyenwanga - -# Error panel labels -error_more_info=Inkcazelo Engakumbi -error_less_info=Inkcazelo Encinane -error_close=Vala -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=I-PDF.js v{{version}} (yakha: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=Umyalezo: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=Imfumba: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=Ifayile: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=Umgca: {{line}} -rendering_error=Imposiso yenzekile xa bekunikezelwa iphepha. - -# Predefined zoom values -page_scale_width=Ububanzi bephepha -page_scale_fit=Ukulinganiswa kwephepha -page_scale_auto=Ukwandisa/Ukunciphisa Ngokwayo -page_scale_actual=Ubungakanani bokwenene -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=Imposiso -loading_error=Imposiso yenzekile xa kulayishwa i-PDF. -invalid_file_error=Ifayile ye-PDF engeyiyo okanye eyonakalisiweyo. -missing_file_error=Ifayile ye-PDF edukileyo. -unexpected_response_error=Impendulo yeseva engalindelekanga. - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} Ubhalo-nqaku] -password_label=Faka ipasiwedi ukuze uvule le fayile yePDF. -password_invalid=Ipasiwedi ayisebenzi. Nceda uzame kwakhona. -password_ok=KULUNGILE -password_cancel=Rhoxisa - -printing_not_supported=Isilumkiso: Ukuprinta akuxhaswa ngokupheleleyo yile bhrawuza. -printing_not_ready=Isilumkiso: IPDF ayihlohlwanga ngokupheleleyo ukwenzela ukuprinta. -web_fonts_disabled=Iifonti zewebhu ziqhwalelisiwe: ayikwazi ukusebenzisa iifonti ze-PDF ezincanyathelisiweyo. -document_colors_not_allowed=Amaxwebhu ePDF akavumelekanga ukuba asebenzise imibala yawo: 'Ukuvumela amaphepha ukuba asebenzise eyawo imibala' kuvaliwe ukuba kungasebenzi kwibhrawuza. diff --git a/cookbook/static/pdfjs/locale/zh-CN/viewer.properties b/cookbook/static/pdfjs/locale/zh-CN/viewer.properties deleted file mode 100644 index 2dc609bfb..000000000 --- a/cookbook/static/pdfjs/locale/zh-CN/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=上一页 -previous_label=上一页 -next.title=下一页 -next_label=下一页 - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=页面 -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=/ {{pagesCount}} -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=({{pageNumber}} / {{pagesCount}}) - -zoom_out.title=缩小 -zoom_out_label=缩小 -zoom_in.title=放大 -zoom_in_label=放大 -zoom.title=缩放 -presentation_mode.title=切换到演示模式 -presentation_mode_label=演示模式 -open_file.title=打开文件 -open_file_label=打开 -print.title=打印 -print_label=打印 -download.title=下载 -download_label=下载 -bookmark.title=当前在看的内容(复制或在新窗口中打开) -bookmark_label=当前在看 - -# Secondary toolbar and context menu -tools.title=工具 -tools_label=工具 -first_page.title=转到第一页 -first_page.label=转到第一页 -first_page_label=转到第一页 -last_page.title=转到最后一页 -last_page.label=转到最后一页 -last_page_label=转到最后一页 -page_rotate_cw.title=顺时针旋转 -page_rotate_cw.label=顺时针旋转 -page_rotate_cw_label=顺时针旋转 -page_rotate_ccw.title=逆时针旋转 -page_rotate_ccw.label=逆时针旋转 -page_rotate_ccw_label=逆时针旋转 - -cursor_text_select_tool.title=启用文本选择工具 -cursor_text_select_tool_label=文本选择工具 -cursor_hand_tool.title=启用手形工具 -cursor_hand_tool_label=手形工具 - -scroll_vertical.title=使用垂直滚动 -scroll_vertical_label=垂直滚动 -scroll_horizontal.title=使用水平滚动 -scroll_horizontal_label=水平滚动 -scroll_wrapped.title=使用平铺滚动 -scroll_wrapped_label=平铺滚动 - -spread_none.title=不加入衔接页 -spread_none_label=单页视图 -spread_odd.title=加入衔接页使奇数页作为起始页 -spread_odd_label=双页视图 -spread_even.title=加入衔接页使偶数页作为起始页 -spread_even_label=书籍视图 - -# Document properties dialog box -document_properties.title=文档属性… -document_properties_label=文档属性… -document_properties_file_name=文件名: -document_properties_file_size=文件大小: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB ({{size_b}} 字节) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB ({{size_b}} 字节) -document_properties_title=标题: -document_properties_author=作者: -document_properties_subject=主题: -document_properties_keywords=关键词: -document_properties_creation_date=创建日期: -document_properties_modification_date=修改日期: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}}, {{time}} -document_properties_creator=创建者: -document_properties_producer=PDF 生成器: -document_properties_version=PDF 版本: -document_properties_page_count=页数: -document_properties_page_size=页面大小: -document_properties_page_size_unit_inches=英寸 -document_properties_page_size_unit_millimeters=毫米 -document_properties_page_size_orientation_portrait=纵向 -document_properties_page_size_orientation_landscape=横向 -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=文本 -document_properties_page_size_name_legal=法律 -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}}({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}}({{name}},{{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=快速 Web 视图: -document_properties_linearized_yes=是 -document_properties_linearized_no=否 -document_properties_close=关闭 - -print_progress_message=正在准备打印文档… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=取消 - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=切换侧栏 -toggle_sidebar_notification.title=切换侧栏(文档所含的大纲/附件) -toggle_sidebar_label=切换侧栏 -document_outline.title=显示文档大纲(双击展开/折叠所有项) -document_outline_label=文档大纲 -attachments.title=显示附件 -attachments_label=附件 -thumbs.title=显示缩略图 -thumbs_label=缩略图 -findbar.title=在文档中查找 -findbar_label=查找 - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=页码 {{page}} -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=页码 {{page}} -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=页面 {{page}} 的缩略图 - -# Find panel button title and messages -find_input.title=查找 -find_input.placeholder=在文档中查找… -find_previous.title=查找词语上一次出现的位置 -find_previous_label=上一页 -find_next.title=查找词语后一次出现的位置 -find_next_label=下一页 -find_highlight=全部高亮显示 -find_match_case_label=区分大小写 -find_entire_word_label=字词匹配 -find_reached_top=到达文档开头,从末尾继续 -find_reached_bottom=到达文档末尾,从开头继续 -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=第 {{current}} 项,共匹配 {{total}} 项 -find_match_count[two]=第 {{current}} 项,共匹配 {{total}} 项 -find_match_count[few]=第 {{current}} 项,共匹配 {{total}} 项 -find_match_count[many]=第 {{current}} 项,共匹配 {{total}} 项 -find_match_count[other]=第 {{current}} 项,共匹配 {{total}} 项 -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=超过 {{limit}} 项匹配 -find_match_count_limit[one]=超过 {{limit}} 项匹配 -find_match_count_limit[two]=超过 {{limit}} 项匹配 -find_match_count_limit[few]=超过 {{limit}} 项匹配 -find_match_count_limit[many]=超过 {{limit}} 项匹配 -find_match_count_limit[other]=超过 {{limit}} 项匹配 -find_not_found=找不到指定词语 - -# Error panel labels -error_more_info=更多信息 -error_less_info=更少信息 -error_close=关闭 -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=信息:{{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=堆栈:{{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=文件:{{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=行号:{{line}} -rendering_error=渲染页面时发生错误。 - -# Predefined zoom values -page_scale_width=适合页宽 -page_scale_fit=适合页面 -page_scale_auto=自动缩放 -page_scale_actual=实际大小 -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=错误 -loading_error=载入 PDF 时发生错误。 -invalid_file_error=无效或损坏的 PDF 文件。 -missing_file_error=缺少 PDF 文件。 -unexpected_response_error=意外的服务器响应。 - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}},{{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} 注释] -password_label=输入密码以打开此 PDF 文件。 -password_invalid=密码无效。请重试。 -password_ok=确定 -password_cancel=取消 - -printing_not_supported=警告:此浏览器尚未完整支持打印功能。 -printing_not_ready=警告:此 PDF 未完成载入,无法打印。 -web_fonts_disabled=Web 字体已被禁用:无法使用嵌入的 PDF 字体。 -document_colors_not_allowed=PDF 文档无法使用自己的颜色:浏览器中“允许页面选择自己的颜色”的选项未被勾选。 diff --git a/cookbook/static/pdfjs/locale/zh-TW/viewer.properties b/cookbook/static/pdfjs/locale/zh-TW/viewer.properties deleted file mode 100644 index 29ff043bf..000000000 --- a/cookbook/static/pdfjs/locale/zh-TW/viewer.properties +++ /dev/null @@ -1,248 +0,0 @@ -# Copyright 2012 Mozilla Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Main toolbar buttons (tooltips and alt text for images) -previous.title=上一頁 -previous_label=上一頁 -next.title=下一頁 -next_label=下一頁 - -# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. -page.title=第 -# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number -# representing the total number of pages in the document. -of_pages=頁,共 {{pagesCount}} 頁 -# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" -# will be replaced by a number representing the currently visible page, -# respectively a number representing the total number of pages in the document. -page_of_pages=(第 {{pageNumber}} 頁,共 {{pagesCount}} 頁) - -zoom_out.title=縮小 -zoom_out_label=縮小 -zoom_in.title=放大 -zoom_in_label=放大 -zoom.title=縮放 -presentation_mode.title=切換至簡報模式 -presentation_mode_label=簡報模式 -open_file.title=開啟檔案 -open_file_label=開啟 -print.title=列印 -print_label=列印 -download.title=下載 -download_label=下載 -bookmark.title=目前檢視的內容(複製或開啟於新視窗) -bookmark_label=目前檢視 - -# Secondary toolbar and context menu -tools.title=工具 -tools_label=工具 -first_page.title=跳到第一頁 -first_page.label=跳到第一頁 -first_page_label=跳到第一頁 -last_page.title=跳到最後一頁 -last_page.label=跳到最後一頁 -last_page_label=跳到最後一頁 -page_rotate_cw.title=順時針旋轉 -page_rotate_cw.label=順時針旋轉 -page_rotate_cw_label=順時針旋轉 -page_rotate_ccw.title=逆時針旋轉 -page_rotate_ccw.label=逆時針旋轉 -page_rotate_ccw_label=逆時針旋轉 - -cursor_text_select_tool.title=開啟文字選擇工具 -cursor_text_select_tool_label=文字選擇工具 -cursor_hand_tool.title=開啟頁面移動工具 -cursor_hand_tool_label=頁面移動工具 - -scroll_vertical.title=使用垂直捲動版面 -scroll_vertical_label=垂直捲動 -scroll_horizontal.title=使用水平捲動版面 -scroll_horizontal_label=水平捲動 -scroll_wrapped.title=使用多頁捲動版面 -scroll_wrapped_label=多頁捲動 - -spread_none.title=不要進行跨頁顯示 -spread_none_label=不跨頁 -spread_odd.title=從奇數頁開始跨頁 -spread_odd_label=奇數跨頁 -spread_even.title=從偶數頁開始跨頁 -spread_even_label=偶數跨頁 - -# Document properties dialog box -document_properties.title=文件內容… -document_properties_label=文件內容… -document_properties_file_name=檔案名稱: -document_properties_file_size=檔案大小: -# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" -# will be replaced by the PDF file size in kilobytes, respectively in bytes. -document_properties_kb={{size_kb}} KB({{size_b}} 位元組) -# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" -# will be replaced by the PDF file size in megabytes, respectively in bytes. -document_properties_mb={{size_mb}} MB({{size_b}} 位元組) -document_properties_title=標題: -document_properties_author=作者: -document_properties_subject=主旨: -document_properties_keywords=關鍵字: -document_properties_creation_date=建立日期: -document_properties_modification_date=修改日期: -# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" -# will be replaced by the creation/modification date, and time, of the PDF file. -document_properties_date_string={{date}} {{time}} -document_properties_creator=建立者: -document_properties_producer=PDF 產生器: -document_properties_version=PDF 版本: -document_properties_page_count=頁數: -document_properties_page_size=頁面大小: -document_properties_page_size_unit_inches=in -document_properties_page_size_unit_millimeters=mm -document_properties_page_size_orientation_portrait=垂直 -document_properties_page_size_orientation_landscape=水平 -document_properties_page_size_name_a3=A3 -document_properties_page_size_name_a4=A4 -document_properties_page_size_name_letter=Letter -document_properties_page_size_name_legal=Legal -# LOCALIZATION NOTE (document_properties_page_size_dimension_string): -# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement and orientation, of the (current) page. -document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}}({{orientation}}) -# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): -# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by -# the size, respectively their unit of measurement, name, and orientation, of the (current) page. -document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}}({{name}},{{orientation}}) -# LOCALIZATION NOTE (document_properties_linearized): The linearization status of -# the document; usually called "Fast Web View" in English locales of Adobe software. -document_properties_linearized=快速 Web 檢視: -document_properties_linearized_yes=是 -document_properties_linearized_no=否 -document_properties_close=關閉 - -print_progress_message=正在準備列印文件… -# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by -# a numerical per cent value. -print_progress_percent={{progress}}% -print_progress_close=取消 - -# Tooltips and alt text for side panel toolbar buttons -# (the _label strings are alt text for the buttons, the .title strings are -# tooltips) -toggle_sidebar.title=切換側邊欄 -toggle_sidebar_notification.title=切換側邊攔(文件包含大綱或附件) -toggle_sidebar_label=切換側邊欄 -document_outline.title=顯示文件大綱(雙擊展開/摺疊所有項目) -document_outline_label=文件大綱 -attachments.title=顯示附件 -attachments_label=附件 -thumbs.title=顯示縮圖 -thumbs_label=縮圖 -findbar.title=在文件中尋找 -findbar_label=尋找 - -# LOCALIZATION NOTE (page_canvas): "{{page}}" will be replaced by the page number. -page_canvas=第 {{page}} 頁 -# Thumbnails panel item (tooltip and alt text for images) -# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page -# number. -thumb_page_title=第 {{page}} 頁 -# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page -# number. -thumb_page_canvas=頁 {{page}} 的縮圖 - -# Find panel button title and messages -find_input.title=尋找 -find_input.placeholder=在文件中搜尋… -find_previous.title=尋找文字前次出現的位置 -find_previous_label=上一個 -find_next.title=尋找文字下次出現的位置 -find_next_label=下一個 -find_highlight=全部強調標示 -find_match_case_label=區分大小寫 -find_entire_word_label=符合整個字 -find_reached_top=已搜尋至文件頂端,自底端繼續搜尋 -find_reached_bottom=已搜尋至文件底端,自頂端繼續搜尋 -# LOCALIZATION NOTE (find_match_count): The supported plural forms are -# [one|two|few|many|other], with [other] as the default value. -# "{{current}}" and "{{total}}" will be replaced by a number representing the -# index of the currently active find result, respectively a number representing -# the total number of matches in the document. -find_match_count={[ plural(total) ]} -find_match_count[one]=第 {{current}} 筆,共找到 {{total}} 筆 -find_match_count[two]=第 {{current}} 筆,共找到 {{total}} 筆 -find_match_count[few]=第 {{current}} 筆,共找到 {{total}} 筆 -find_match_count[many]=第 {{current}} 筆,共找到 {{total}} 筆 -find_match_count[other]=第 {{current}} 筆,共找到 {{total}} 筆 -# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are -# [zero|one|two|few|many|other], with [other] as the default value. -# "{{limit}}" will be replaced by a numerical value. -find_match_count_limit={[ plural(limit) ]} -find_match_count_limit[zero]=找到超過 {{limit}} 筆 -find_match_count_limit[one]=找到超過 {{limit}} 筆 -find_match_count_limit[two]=找到超過 {{limit}} 筆 -find_match_count_limit[few]=找到超過 {{limit}} 筆 -find_match_count_limit[many]=找到超過 {{limit}} 筆 -find_match_count_limit[other]=找到超過 {{limit}} 筆 -find_not_found=找不到指定文字 - -# Error panel labels -error_more_info=更多資訊 -error_less_info=更少資訊 -error_close=關閉 -# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be -# replaced by the PDF.JS version and build ID. -error_version_info=PDF.js v{{version}} (build: {{build}}) -# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an -# english string describing the error. -error_message=訊息: {{message}} -# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack -# trace. -error_stack=堆疊: {{stack}} -# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename -error_file=檔案: {{file}} -# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number -error_line=行: {{line}} -rendering_error=描繪頁面時發生錯誤。 - -# Predefined zoom values -page_scale_width=頁面寬度 -page_scale_fit=縮放至頁面大小 -page_scale_auto=自動縮放 -page_scale_actual=實際大小 -# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a -# numerical scale value. -page_scale_percent={{scale}}% - -# Loading indicator messages -loading_error_indicator=錯誤 -loading_error=載入 PDF 時發生錯誤。 -invalid_file_error=無效或毀損的 PDF 檔案。 -missing_file_error=找不到 PDF 檔案。 -unexpected_response_error=伺服器回應未預期的內容。 - -# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be -# replaced by the modification date, and time, of the annotation. -annotation_date_string={{date}} {{time}} - -# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. -# "{{type}}" will be replaced with an annotation type from a list defined in -# the PDF spec (32000-1:2008 Table 169 – Annotation types). -# Some common types are e.g.: "Check", "Text", "Comment", "Note" -text_annotation_type.alt=[{{type}} 註解] -password_label=請輸入用來開啟此 PDF 檔案的密碼。 -password_invalid=密碼不正確,請再試一次。 -password_ok=確定 -password_cancel=取消 - -printing_not_supported=警告: 此瀏覽器未完整支援列印功能。 -printing_not_ready=警告: 此 PDF 未完成下載以供列印。 -web_fonts_disabled=已停用網路字型 (Web fonts): 無法使用 PDF 內嵌字型。 -document_colors_not_allowed=瀏覽器的「優先使用網頁指定的色彩」未被勾選,PDF 文件無法使用自己的色彩。 diff --git a/cookbook/static/pdfjs/pdf.js b/cookbook/static/pdfjs/pdf.js deleted file mode 100644 index b64d48297..000000000 --- a/cookbook/static/pdfjs/pdf.js +++ /dev/null @@ -1,13422 +0,0 @@ -/** - * @licstart The following is the entire license notice for the - * Javascript code in this page - * - * Copyright 2020 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * @licend The above is the entire license notice for the - * Javascript code in this page - */ - -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if(typeof define === 'function' && define.amd) - define("pdfjs-dist/build/pdf", [], factory); - else if(typeof exports === 'object') - exports["pdfjs-dist/build/pdf"] = factory(); - else - root["pdfjs-dist/build/pdf"] = root.pdfjsLib = factory(); -})(this, function() { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __w_pdfjs_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __w_pdfjs_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __w_pdfjs_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __w_pdfjs_require__.d = function(exports, name, getter) { -/******/ if(!__w_pdfjs_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __w_pdfjs_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __w_pdfjs_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __w_pdfjs_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __w_pdfjs_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __w_pdfjs_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __w_pdfjs_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __w_pdfjs_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __w_pdfjs_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __w_pdfjs_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __w_pdfjs_require__(__w_pdfjs_require__.s = 0); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -var pdfjsVersion = '2.4.456'; -var pdfjsBuild = '228a591c'; - -var pdfjsSharedUtil = __w_pdfjs_require__(1); - -var pdfjsDisplayAPI = __w_pdfjs_require__(3); - -var pdfjsDisplayTextLayer = __w_pdfjs_require__(16); - -var pdfjsDisplayAnnotationLayer = __w_pdfjs_require__(17); - -var pdfjsDisplayDisplayUtils = __w_pdfjs_require__(4); - -var pdfjsDisplaySVG = __w_pdfjs_require__(18); - -const pdfjsDisplayWorkerOptions = __w_pdfjs_require__(10); - -const pdfjsDisplayAPICompatibility = __w_pdfjs_require__(6); - -{ - const { - isNodeJS - } = __w_pdfjs_require__(7); - - if (isNodeJS) { - const PDFNodeStream = __w_pdfjs_require__(19).PDFNodeStream; - - pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => { - return new PDFNodeStream(params); - }); - } else { - const PDFNetworkStream = __w_pdfjs_require__(22).PDFNetworkStream; - - let PDFFetchStream; - - if (pdfjsDisplayDisplayUtils.isFetchSupported()) { - PDFFetchStream = __w_pdfjs_require__(23).PDFFetchStream; - } - - pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => { - if (PDFFetchStream && pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)) { - return new PDFFetchStream(params); - } - - return new PDFNetworkStream(params); - }); - } -} -exports.build = pdfjsDisplayAPI.build; -exports.version = pdfjsDisplayAPI.version; -exports.getDocument = pdfjsDisplayAPI.getDocument; -exports.LoopbackPort = pdfjsDisplayAPI.LoopbackPort; -exports.PDFDataRangeTransport = pdfjsDisplayAPI.PDFDataRangeTransport; -exports.PDFWorker = pdfjsDisplayAPI.PDFWorker; -exports.renderTextLayer = pdfjsDisplayTextLayer.renderTextLayer; -exports.AnnotationLayer = pdfjsDisplayAnnotationLayer.AnnotationLayer; -exports.createPromiseCapability = pdfjsSharedUtil.createPromiseCapability; -exports.PasswordResponses = pdfjsSharedUtil.PasswordResponses; -exports.InvalidPDFException = pdfjsSharedUtil.InvalidPDFException; -exports.MissingPDFException = pdfjsSharedUtil.MissingPDFException; -exports.SVGGraphics = pdfjsDisplaySVG.SVGGraphics; -exports.NativeImageDecoding = pdfjsSharedUtil.NativeImageDecoding; -exports.CMapCompressionType = pdfjsSharedUtil.CMapCompressionType; -exports.PermissionFlag = pdfjsSharedUtil.PermissionFlag; -exports.UnexpectedResponseException = pdfjsSharedUtil.UnexpectedResponseException; -exports.OPS = pdfjsSharedUtil.OPS; -exports.VerbosityLevel = pdfjsSharedUtil.VerbosityLevel; -exports.UNSUPPORTED_FEATURES = pdfjsSharedUtil.UNSUPPORTED_FEATURES; -exports.createValidAbsoluteUrl = pdfjsSharedUtil.createValidAbsoluteUrl; -exports.createObjectURL = pdfjsSharedUtil.createObjectURL; -exports.removeNullCharacters = pdfjsSharedUtil.removeNullCharacters; -exports.shadow = pdfjsSharedUtil.shadow; -exports.Util = pdfjsSharedUtil.Util; -exports.RenderingCancelledException = pdfjsDisplayDisplayUtils.RenderingCancelledException; -exports.getFilenameFromUrl = pdfjsDisplayDisplayUtils.getFilenameFromUrl; -exports.LinkTarget = pdfjsDisplayDisplayUtils.LinkTarget; -exports.addLinkAttributes = pdfjsDisplayDisplayUtils.addLinkAttributes; -exports.loadScript = pdfjsDisplayDisplayUtils.loadScript; -exports.PDFDateString = pdfjsDisplayDisplayUtils.PDFDateString; -exports.GlobalWorkerOptions = pdfjsDisplayWorkerOptions.GlobalWorkerOptions; -exports.apiCompatibilityParams = pdfjsDisplayAPICompatibility.apiCompatibilityParams; - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.arrayByteLength = arrayByteLength; -exports.arraysToBytes = arraysToBytes; -exports.assert = assert; -exports.bytesToString = bytesToString; -exports.createPromiseCapability = createPromiseCapability; -exports.getVerbosityLevel = getVerbosityLevel; -exports.info = info; -exports.isArrayBuffer = isArrayBuffer; -exports.isArrayEqual = isArrayEqual; -exports.isBool = isBool; -exports.isEmptyObj = isEmptyObj; -exports.isNum = isNum; -exports.isString = isString; -exports.isSameOrigin = isSameOrigin; -exports.createValidAbsoluteUrl = createValidAbsoluteUrl; -exports.removeNullCharacters = removeNullCharacters; -exports.setVerbosityLevel = setVerbosityLevel; -exports.shadow = shadow; -exports.string32 = string32; -exports.stringToBytes = stringToBytes; -exports.stringToPDFString = stringToPDFString; -exports.stringToUTF8String = stringToUTF8String; -exports.utf8StringToString = utf8StringToString; -exports.warn = warn; -exports.unreachable = unreachable; -exports.IsEvalSupportedCached = exports.IsLittleEndianCached = exports.createObjectURL = exports.FormatError = exports.Util = exports.UnknownErrorException = exports.UnexpectedResponseException = exports.TextRenderingMode = exports.StreamType = exports.PermissionFlag = exports.PasswordResponses = exports.PasswordException = exports.NativeImageDecoding = exports.MissingPDFException = exports.InvalidPDFException = exports.AbortException = exports.CMapCompressionType = exports.ImageKind = exports.FontType = exports.AnnotationType = exports.AnnotationStateModelType = exports.AnnotationReviewState = exports.AnnotationReplyType = exports.AnnotationMarkedState = exports.AnnotationFlag = exports.AnnotationFieldFlag = exports.AnnotationBorderStyleType = exports.UNSUPPORTED_FEATURES = exports.VerbosityLevel = exports.OPS = exports.IDENTITY_MATRIX = exports.FONT_IDENTITY_MATRIX = exports.BaseException = void 0; - -__w_pdfjs_require__(2); - -const IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0]; -exports.IDENTITY_MATRIX = IDENTITY_MATRIX; -const FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0]; -exports.FONT_IDENTITY_MATRIX = FONT_IDENTITY_MATRIX; -const NativeImageDecoding = { - NONE: "none", - DECODE: "decode", - DISPLAY: "display" -}; -exports.NativeImageDecoding = NativeImageDecoding; -const PermissionFlag = { - PRINT: 0x04, - MODIFY_CONTENTS: 0x08, - COPY: 0x10, - MODIFY_ANNOTATIONS: 0x20, - FILL_INTERACTIVE_FORMS: 0x100, - COPY_FOR_ACCESSIBILITY: 0x200, - ASSEMBLE: 0x400, - PRINT_HIGH_QUALITY: 0x800 -}; -exports.PermissionFlag = PermissionFlag; -const TextRenderingMode = { - FILL: 0, - STROKE: 1, - FILL_STROKE: 2, - INVISIBLE: 3, - FILL_ADD_TO_PATH: 4, - STROKE_ADD_TO_PATH: 5, - FILL_STROKE_ADD_TO_PATH: 6, - ADD_TO_PATH: 7, - FILL_STROKE_MASK: 3, - ADD_TO_PATH_FLAG: 4 -}; -exports.TextRenderingMode = TextRenderingMode; -const ImageKind = { - GRAYSCALE_1BPP: 1, - RGB_24BPP: 2, - RGBA_32BPP: 3 -}; -exports.ImageKind = ImageKind; -const AnnotationType = { - TEXT: 1, - LINK: 2, - FREETEXT: 3, - LINE: 4, - SQUARE: 5, - CIRCLE: 6, - POLYGON: 7, - POLYLINE: 8, - HIGHLIGHT: 9, - UNDERLINE: 10, - SQUIGGLY: 11, - STRIKEOUT: 12, - STAMP: 13, - CARET: 14, - INK: 15, - POPUP: 16, - FILEATTACHMENT: 17, - SOUND: 18, - MOVIE: 19, - WIDGET: 20, - SCREEN: 21, - PRINTERMARK: 22, - TRAPNET: 23, - WATERMARK: 24, - THREED: 25, - REDACT: 26 -}; -exports.AnnotationType = AnnotationType; -const AnnotationStateModelType = { - MARKED: "Marked", - REVIEW: "Review" -}; -exports.AnnotationStateModelType = AnnotationStateModelType; -const AnnotationMarkedState = { - MARKED: "Marked", - UNMARKED: "Unmarked" -}; -exports.AnnotationMarkedState = AnnotationMarkedState; -const AnnotationReviewState = { - ACCEPTED: "Accepted", - REJECTED: "Rejected", - CANCELLED: "Cancelled", - COMPLETED: "Completed", - NONE: "None" -}; -exports.AnnotationReviewState = AnnotationReviewState; -const AnnotationReplyType = { - GROUP: "Group", - REPLY: "R" -}; -exports.AnnotationReplyType = AnnotationReplyType; -const AnnotationFlag = { - INVISIBLE: 0x01, - HIDDEN: 0x02, - PRINT: 0x04, - NOZOOM: 0x08, - NOROTATE: 0x10, - NOVIEW: 0x20, - READONLY: 0x40, - LOCKED: 0x80, - TOGGLENOVIEW: 0x100, - LOCKEDCONTENTS: 0x200 -}; -exports.AnnotationFlag = AnnotationFlag; -const AnnotationFieldFlag = { - READONLY: 0x0000001, - REQUIRED: 0x0000002, - NOEXPORT: 0x0000004, - MULTILINE: 0x0001000, - PASSWORD: 0x0002000, - NOTOGGLETOOFF: 0x0004000, - RADIO: 0x0008000, - PUSHBUTTON: 0x0010000, - COMBO: 0x0020000, - EDIT: 0x0040000, - SORT: 0x0080000, - FILESELECT: 0x0100000, - MULTISELECT: 0x0200000, - DONOTSPELLCHECK: 0x0400000, - DONOTSCROLL: 0x0800000, - COMB: 0x1000000, - RICHTEXT: 0x2000000, - RADIOSINUNISON: 0x2000000, - COMMITONSELCHANGE: 0x4000000 -}; -exports.AnnotationFieldFlag = AnnotationFieldFlag; -const AnnotationBorderStyleType = { - SOLID: 1, - DASHED: 2, - BEVELED: 3, - INSET: 4, - UNDERLINE: 5 -}; -exports.AnnotationBorderStyleType = AnnotationBorderStyleType; -const StreamType = { - UNKNOWN: "UNKNOWN", - FLATE: "FLATE", - LZW: "LZW", - DCT: "DCT", - JPX: "JPX", - JBIG: "JBIG", - A85: "A85", - AHX: "AHX", - CCF: "CCF", - RLX: "RLX" -}; -exports.StreamType = StreamType; -const FontType = { - UNKNOWN: "UNKNOWN", - TYPE1: "TYPE1", - TYPE1C: "TYPE1C", - CIDFONTTYPE0: "CIDFONTTYPE0", - CIDFONTTYPE0C: "CIDFONTTYPE0C", - TRUETYPE: "TRUETYPE", - CIDFONTTYPE2: "CIDFONTTYPE2", - TYPE3: "TYPE3", - OPENTYPE: "OPENTYPE", - TYPE0: "TYPE0", - MMTYPE1: "MMTYPE1" -}; -exports.FontType = FontType; -const VerbosityLevel = { - ERRORS: 0, - WARNINGS: 1, - INFOS: 5 -}; -exports.VerbosityLevel = VerbosityLevel; -const CMapCompressionType = { - NONE: 0, - BINARY: 1, - STREAM: 2 -}; -exports.CMapCompressionType = CMapCompressionType; -const OPS = { - dependency: 1, - setLineWidth: 2, - setLineCap: 3, - setLineJoin: 4, - setMiterLimit: 5, - setDash: 6, - setRenderingIntent: 7, - setFlatness: 8, - setGState: 9, - save: 10, - restore: 11, - transform: 12, - moveTo: 13, - lineTo: 14, - curveTo: 15, - curveTo2: 16, - curveTo3: 17, - closePath: 18, - rectangle: 19, - stroke: 20, - closeStroke: 21, - fill: 22, - eoFill: 23, - fillStroke: 24, - eoFillStroke: 25, - closeFillStroke: 26, - closeEOFillStroke: 27, - endPath: 28, - clip: 29, - eoClip: 30, - beginText: 31, - endText: 32, - setCharSpacing: 33, - setWordSpacing: 34, - setHScale: 35, - setLeading: 36, - setFont: 37, - setTextRenderingMode: 38, - setTextRise: 39, - moveText: 40, - setLeadingMoveText: 41, - setTextMatrix: 42, - nextLine: 43, - showText: 44, - showSpacedText: 45, - nextLineShowText: 46, - nextLineSetSpacingShowText: 47, - setCharWidth: 48, - setCharWidthAndBounds: 49, - setStrokeColorSpace: 50, - setFillColorSpace: 51, - setStrokeColor: 52, - setStrokeColorN: 53, - setFillColor: 54, - setFillColorN: 55, - setStrokeGray: 56, - setFillGray: 57, - setStrokeRGBColor: 58, - setFillRGBColor: 59, - setStrokeCMYKColor: 60, - setFillCMYKColor: 61, - shadingFill: 62, - beginInlineImage: 63, - beginImageData: 64, - endInlineImage: 65, - paintXObject: 66, - markPoint: 67, - markPointProps: 68, - beginMarkedContent: 69, - beginMarkedContentProps: 70, - endMarkedContent: 71, - beginCompat: 72, - endCompat: 73, - paintFormXObjectBegin: 74, - paintFormXObjectEnd: 75, - beginGroup: 76, - endGroup: 77, - beginAnnotations: 78, - endAnnotations: 79, - beginAnnotation: 80, - endAnnotation: 81, - paintJpegXObject: 82, - paintImageMaskXObject: 83, - paintImageMaskXObjectGroup: 84, - paintImageXObject: 85, - paintInlineImageXObject: 86, - paintInlineImageXObjectGroup: 87, - paintImageXObjectRepeat: 88, - paintImageMaskXObjectRepeat: 89, - paintSolidColorImageMask: 90, - constructPath: 91 -}; -exports.OPS = OPS; -const UNSUPPORTED_FEATURES = { - unknown: "unknown", - forms: "forms", - javaScript: "javaScript", - smask: "smask", - shadingPattern: "shadingPattern", - font: "font" -}; -exports.UNSUPPORTED_FEATURES = UNSUPPORTED_FEATURES; -const PasswordResponses = { - NEED_PASSWORD: 1, - INCORRECT_PASSWORD: 2 -}; -exports.PasswordResponses = PasswordResponses; -let verbosity = VerbosityLevel.WARNINGS; - -function setVerbosityLevel(level) { - if (Number.isInteger(level)) { - verbosity = level; - } -} - -function getVerbosityLevel() { - return verbosity; -} - -function info(msg) { - if (verbosity >= VerbosityLevel.INFOS) { - console.log(`Info: ${msg}`); - } -} - -function warn(msg) { - if (verbosity >= VerbosityLevel.WARNINGS) { - console.log(`Warning: ${msg}`); - } -} - -function unreachable(msg) { - throw new Error(msg); -} - -function assert(cond, msg) { - if (!cond) { - unreachable(msg); - } -} - -function isSameOrigin(baseUrl, otherUrl) { - let base; - - try { - base = new URL(baseUrl); - - if (!base.origin || base.origin === "null") { - return false; - } - } catch (e) { - return false; - } - - const other = new URL(otherUrl, base); - return base.origin === other.origin; -} - -function _isValidProtocol(url) { - if (!url) { - return false; - } - - switch (url.protocol) { - case "http:": - case "https:": - case "ftp:": - case "mailto:": - case "tel:": - return true; - - default: - return false; - } -} - -function createValidAbsoluteUrl(url, baseUrl) { - if (!url) { - return null; - } - - try { - const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url); - - if (_isValidProtocol(absoluteUrl)) { - return absoluteUrl; - } - } catch (ex) {} - - return null; -} - -function shadow(obj, prop, value) { - Object.defineProperty(obj, prop, { - value, - enumerable: true, - configurable: true, - writable: false - }); - return value; -} - -const BaseException = function BaseExceptionClosure() { - function BaseException(message) { - if (this.constructor === BaseException) { - unreachable("Cannot initialize BaseException."); - } - - this.message = message; - this.name = this.constructor.name; - } - - BaseException.prototype = new Error(); - BaseException.constructor = BaseException; - return BaseException; -}(); - -exports.BaseException = BaseException; - -class PasswordException extends BaseException { - constructor(msg, code) { - super(msg); - this.code = code; - } - -} - -exports.PasswordException = PasswordException; - -class UnknownErrorException extends BaseException { - constructor(msg, details) { - super(msg); - this.details = details; - } - -} - -exports.UnknownErrorException = UnknownErrorException; - -class InvalidPDFException extends BaseException {} - -exports.InvalidPDFException = InvalidPDFException; - -class MissingPDFException extends BaseException {} - -exports.MissingPDFException = MissingPDFException; - -class UnexpectedResponseException extends BaseException { - constructor(msg, status) { - super(msg); - this.status = status; - } - -} - -exports.UnexpectedResponseException = UnexpectedResponseException; - -class FormatError extends BaseException {} - -exports.FormatError = FormatError; - -class AbortException extends BaseException {} - -exports.AbortException = AbortException; -const NullCharactersRegExp = /\x00/g; - -function removeNullCharacters(str) { - if (typeof str !== "string") { - warn("The argument for removeNullCharacters must be a string."); - return str; - } - - return str.replace(NullCharactersRegExp, ""); -} - -function bytesToString(bytes) { - assert(bytes !== null && typeof bytes === "object" && bytes.length !== undefined, "Invalid argument for bytesToString"); - const length = bytes.length; - const MAX_ARGUMENT_COUNT = 8192; - - if (length < MAX_ARGUMENT_COUNT) { - return String.fromCharCode.apply(null, bytes); - } - - const strBuf = []; - - for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) { - const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length); - const chunk = bytes.subarray(i, chunkEnd); - strBuf.push(String.fromCharCode.apply(null, chunk)); - } - - return strBuf.join(""); -} - -function stringToBytes(str) { - assert(typeof str === "string", "Invalid argument for stringToBytes"); - const length = str.length; - const bytes = new Uint8Array(length); - - for (let i = 0; i < length; ++i) { - bytes[i] = str.charCodeAt(i) & 0xff; - } - - return bytes; -} - -function arrayByteLength(arr) { - if (arr.length !== undefined) { - return arr.length; - } - - assert(arr.byteLength !== undefined); - return arr.byteLength; -} - -function arraysToBytes(arr) { - const length = arr.length; - - if (length === 1 && arr[0] instanceof Uint8Array) { - return arr[0]; - } - - let resultLength = 0; - - for (let i = 0; i < length; i++) { - resultLength += arrayByteLength(arr[i]); - } - - let pos = 0; - const data = new Uint8Array(resultLength); - - for (let i = 0; i < length; i++) { - let item = arr[i]; - - if (!(item instanceof Uint8Array)) { - if (typeof item === "string") { - item = stringToBytes(item); - } else { - item = new Uint8Array(item); - } - } - - const itemLength = item.byteLength; - data.set(item, pos); - pos += itemLength; - } - - return data; -} - -function string32(value) { - return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff); -} - -function isLittleEndian() { - const buffer8 = new Uint8Array(4); - buffer8[0] = 1; - const view32 = new Uint32Array(buffer8.buffer, 0, 1); - return view32[0] === 1; -} - -const IsLittleEndianCached = { - get value() { - return shadow(this, "value", isLittleEndian()); - } - -}; -exports.IsLittleEndianCached = IsLittleEndianCached; - -function isEvalSupported() { - try { - new Function(""); - return true; - } catch (e) { - return false; - } -} - -const IsEvalSupportedCached = { - get value() { - return shadow(this, "value", isEvalSupported()); - } - -}; -exports.IsEvalSupportedCached = IsEvalSupportedCached; -const rgbBuf = ["rgb(", 0, ",", 0, ",", 0, ")"]; - -class Util { - static makeCssRgb(r, g, b) { - rgbBuf[1] = r; - rgbBuf[3] = g; - rgbBuf[5] = b; - return rgbBuf.join(""); - } - - static transform(m1, m2) { - return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]]; - } - - static applyTransform(p, m) { - const xt = p[0] * m[0] + p[1] * m[2] + m[4]; - const yt = p[0] * m[1] + p[1] * m[3] + m[5]; - return [xt, yt]; - } - - static applyInverseTransform(p, m) { - const d = m[0] * m[3] - m[1] * m[2]; - const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d; - const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d; - return [xt, yt]; - } - - static getAxialAlignedBoundingBox(r, m) { - const p1 = Util.applyTransform(r, m); - const p2 = Util.applyTransform(r.slice(2, 4), m); - const p3 = Util.applyTransform([r[0], r[3]], m); - const p4 = Util.applyTransform([r[2], r[1]], m); - return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])]; - } - - static inverseTransform(m) { - const d = m[0] * m[3] - m[1] * m[2]; - return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d]; - } - - static apply3dTransform(m, v) { - return [m[0] * v[0] + m[1] * v[1] + m[2] * v[2], m[3] * v[0] + m[4] * v[1] + m[5] * v[2], m[6] * v[0] + m[7] * v[1] + m[8] * v[2]]; - } - - static singularValueDecompose2dScale(m) { - const transpose = [m[0], m[2], m[1], m[3]]; - const a = m[0] * transpose[0] + m[1] * transpose[2]; - const b = m[0] * transpose[1] + m[1] * transpose[3]; - const c = m[2] * transpose[0] + m[3] * transpose[2]; - const d = m[2] * transpose[1] + m[3] * transpose[3]; - const first = (a + d) / 2; - const second = Math.sqrt((a + d) * (a + d) - 4 * (a * d - c * b)) / 2; - const sx = first + second || 1; - const sy = first - second || 1; - return [Math.sqrt(sx), Math.sqrt(sy)]; - } - - static normalizeRect(rect) { - const r = rect.slice(0); - - if (rect[0] > rect[2]) { - r[0] = rect[2]; - r[2] = rect[0]; - } - - if (rect[1] > rect[3]) { - r[1] = rect[3]; - r[3] = rect[1]; - } - - return r; - } - - static intersect(rect1, rect2) { - function compare(a, b) { - return a - b; - } - - const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare); - const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare); - const result = []; - rect1 = Util.normalizeRect(rect1); - rect2 = Util.normalizeRect(rect2); - - if (orderedX[0] === rect1[0] && orderedX[1] === rect2[0] || orderedX[0] === rect2[0] && orderedX[1] === rect1[0]) { - result[0] = orderedX[1]; - result[2] = orderedX[2]; - } else { - return null; - } - - if (orderedY[0] === rect1[1] && orderedY[1] === rect2[1] || orderedY[0] === rect2[1] && orderedY[1] === rect1[1]) { - result[1] = orderedY[1]; - result[3] = orderedY[2]; - } else { - return null; - } - - return result; - } - -} - -exports.Util = Util; -const PDFStringTranslateTable = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2D8, 0x2C7, 0x2C6, 0x2D9, 0x2DD, 0x2DB, 0x2DA, 0x2DC, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203A, 0x2212, 0x2030, 0x201E, 0x201C, 0x201D, 0x2018, 0x2019, 0x201A, 0x2122, 0xFB01, 0xFB02, 0x141, 0x152, 0x160, 0x178, 0x17D, 0x131, 0x142, 0x153, 0x161, 0x17E, 0, 0x20AC]; - -function stringToPDFString(str) { - const length = str.length, - strBuf = []; - - if (str[0] === "\xFE" && str[1] === "\xFF") { - for (let i = 2; i < length; i += 2) { - strBuf.push(String.fromCharCode(str.charCodeAt(i) << 8 | str.charCodeAt(i + 1))); - } - } else if (str[0] === "\xFF" && str[1] === "\xFE") { - for (let i = 2; i < length; i += 2) { - strBuf.push(String.fromCharCode(str.charCodeAt(i + 1) << 8 | str.charCodeAt(i))); - } - } else { - for (let i = 0; i < length; ++i) { - const code = PDFStringTranslateTable[str.charCodeAt(i)]; - strBuf.push(code ? String.fromCharCode(code) : str.charAt(i)); - } - } - - return strBuf.join(""); -} - -function stringToUTF8String(str) { - return decodeURIComponent(escape(str)); -} - -function utf8StringToString(str) { - return unescape(encodeURIComponent(str)); -} - -function isEmptyObj(obj) { - for (const key in obj) { - return false; - } - - return true; -} - -function isBool(v) { - return typeof v === "boolean"; -} - -function isNum(v) { - return typeof v === "number"; -} - -function isString(v) { - return typeof v === "string"; -} - -function isArrayBuffer(v) { - return typeof v === "object" && v !== null && v.byteLength !== undefined; -} - -function isArrayEqual(arr1, arr2) { - if (arr1.length !== arr2.length) { - return false; - } - - return arr1.every(function (element, index) { - return element === arr2[index]; - }); -} - -function createPromiseCapability() { - const capability = Object.create(null); - let isSettled = false; - Object.defineProperty(capability, "settled", { - get() { - return isSettled; - } - - }); - capability.promise = new Promise(function (resolve, reject) { - capability.resolve = function (data) { - isSettled = true; - resolve(data); - }; - - capability.reject = function (reason) { - isSettled = true; - reject(reason); - }; - }); - return capability; -} - -const createObjectURL = function createObjectURLClosure() { - const digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - return function createObjectURL(data, contentType, forceDataSchema = false) { - if (!forceDataSchema && URL.createObjectURL) { - const blob = new Blob([data], { - type: contentType - }); - return URL.createObjectURL(blob); - } - - let buffer = `data:${contentType};base64,`; - - for (let i = 0, ii = data.length; i < ii; i += 3) { - const b1 = data[i] & 0xff; - const b2 = data[i + 1] & 0xff; - const b3 = data[i + 2] & 0xff; - const d1 = b1 >> 2, - d2 = (b1 & 3) << 4 | b2 >> 4; - const d3 = i + 1 < ii ? (b2 & 0xf) << 2 | b3 >> 6 : 64; - const d4 = i + 2 < ii ? b3 & 0x3f : 64; - buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4]; - } - - return buffer; - }; -}(); - -exports.createObjectURL = createObjectURL; - -/***/ }), -/* 2 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -; - -/***/ }), -/* 3 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getDocument = getDocument; -exports.setPDFNetworkStreamFactory = setPDFNetworkStreamFactory; -exports.build = exports.version = exports.PDFPageProxy = exports.PDFDocumentProxy = exports.PDFWorker = exports.PDFDataRangeTransport = exports.LoopbackPort = void 0; - -var _util = __w_pdfjs_require__(1); - -var _display_utils = __w_pdfjs_require__(4); - -var _font_loader = __w_pdfjs_require__(5); - -var _api_compatibility = __w_pdfjs_require__(6); - -var _canvas = __w_pdfjs_require__(8); - -var _worker_options = __w_pdfjs_require__(10); - -var _is_node = __w_pdfjs_require__(7); - -var _message_handler = __w_pdfjs_require__(11); - -var _metadata = __w_pdfjs_require__(12); - -var _transport_stream = __w_pdfjs_require__(14); - -var _webgl = __w_pdfjs_require__(15); - -const DEFAULT_RANGE_CHUNK_SIZE = 65536; -const RENDERING_CANCELLED_TIMEOUT = 100; -let createPDFNetworkStream; - -function setPDFNetworkStreamFactory(pdfNetworkStreamFactory) { - createPDFNetworkStream = pdfNetworkStreamFactory; -} - -function getDocument(src) { - const task = new PDFDocumentLoadingTask(); - let source; - - if (typeof src === "string") { - source = { - url: src - }; - } else if ((0, _util.isArrayBuffer)(src)) { - source = { - data: src - }; - } else if (src instanceof PDFDataRangeTransport) { - source = { - range: src - }; - } else { - if (typeof src !== "object") { - throw new Error("Invalid parameter in getDocument, " + "need either Uint8Array, string or a parameter object"); - } - - if (!src.url && !src.data && !src.range) { - throw new Error("Invalid parameter object: need either .data, .range or .url"); - } - - source = src; - } - - const params = Object.create(null); - let rangeTransport = null, - worker = null; - - for (const key in source) { - if (key === "url" && typeof window !== "undefined") { - params[key] = new URL(source[key], window.location).href; - continue; - } else if (key === "range") { - rangeTransport = source[key]; - continue; - } else if (key === "worker") { - worker = source[key]; - continue; - } else if (key === "data" && !(source[key] instanceof Uint8Array)) { - const pdfBytes = source[key]; - - if (typeof pdfBytes === "string") { - params[key] = (0, _util.stringToBytes)(pdfBytes); - } else if (typeof pdfBytes === "object" && pdfBytes !== null && !isNaN(pdfBytes.length)) { - params[key] = new Uint8Array(pdfBytes); - } else if ((0, _util.isArrayBuffer)(pdfBytes)) { - params[key] = new Uint8Array(pdfBytes); - } else { - throw new Error("Invalid PDF binary data: either typed array, " + "string or array-like object is expected in the " + "data property."); - } - - continue; - } - - params[key] = source[key]; - } - - params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE; - params.CMapReaderFactory = params.CMapReaderFactory || _display_utils.DOMCMapReaderFactory; - params.ignoreErrors = params.stopAtErrors !== true; - params.pdfBug = params.pdfBug === true; - const NativeImageDecoderValues = Object.values(_util.NativeImageDecoding); - - if (params.nativeImageDecoderSupport === undefined || !NativeImageDecoderValues.includes(params.nativeImageDecoderSupport)) { - params.nativeImageDecoderSupport = _api_compatibility.apiCompatibilityParams.nativeImageDecoderSupport || _util.NativeImageDecoding.DECODE; - } - - if (!Number.isInteger(params.maxImageSize)) { - params.maxImageSize = -1; - } - - if (typeof params.isEvalSupported !== "boolean") { - params.isEvalSupported = true; - } - - if (typeof params.disableFontFace !== "boolean") { - params.disableFontFace = _api_compatibility.apiCompatibilityParams.disableFontFace || false; - } - - if (typeof params.disableRange !== "boolean") { - params.disableRange = false; - } - - if (typeof params.disableStream !== "boolean") { - params.disableStream = false; - } - - if (typeof params.disableAutoFetch !== "boolean") { - params.disableAutoFetch = false; - } - - if (typeof params.disableCreateObjectURL !== "boolean") { - params.disableCreateObjectURL = _api_compatibility.apiCompatibilityParams.disableCreateObjectURL || false; - } - - (0, _util.setVerbosityLevel)(params.verbosity); - - if (!worker) { - const workerParams = { - verbosity: params.verbosity, - port: _worker_options.GlobalWorkerOptions.workerPort - }; - worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams); - task._worker = worker; - } - - const docId = task.docId; - worker.promise.then(function () { - if (task.destroyed) { - throw new Error("Loading aborted"); - } - - return _fetchDocument(worker, params, rangeTransport, docId).then(function (workerId) { - if (task.destroyed) { - throw new Error("Loading aborted"); - } - - let networkStream; - - if (rangeTransport) { - networkStream = new _transport_stream.PDFDataTransportStream({ - length: params.length, - initialData: params.initialData, - progressiveDone: params.progressiveDone, - disableRange: params.disableRange, - disableStream: params.disableStream - }, rangeTransport); - } else if (!params.data) { - networkStream = createPDFNetworkStream({ - url: params.url, - length: params.length, - httpHeaders: params.httpHeaders, - withCredentials: params.withCredentials, - rangeChunkSize: params.rangeChunkSize, - disableRange: params.disableRange, - disableStream: params.disableStream - }); - } - - const messageHandler = new _message_handler.MessageHandler(docId, workerId, worker.port); - messageHandler.postMessageTransfers = worker.postMessageTransfers; - const transport = new WorkerTransport(messageHandler, task, networkStream, params); - task._transport = transport; - messageHandler.send("Ready", null); - }); - }).catch(task._capability.reject); - return task; -} - -function _fetchDocument(worker, source, pdfDataRangeTransport, docId) { - if (worker.destroyed) { - return Promise.reject(new Error("Worker was destroyed")); - } - - if (pdfDataRangeTransport) { - source.length = pdfDataRangeTransport.length; - source.initialData = pdfDataRangeTransport.initialData; - source.progressiveDone = pdfDataRangeTransport.progressiveDone; - } - - return worker.messageHandler.sendWithPromise("GetDocRequest", { - docId, - apiVersion: '2.4.456', - source: { - data: source.data, - url: source.url, - password: source.password, - disableAutoFetch: source.disableAutoFetch, - rangeChunkSize: source.rangeChunkSize, - length: source.length - }, - maxImageSize: source.maxImageSize, - disableFontFace: source.disableFontFace, - disableCreateObjectURL: source.disableCreateObjectURL, - postMessageTransfers: worker.postMessageTransfers, - docBaseUrl: source.docBaseUrl, - nativeImageDecoderSupport: source.nativeImageDecoderSupport, - ignoreErrors: source.ignoreErrors, - isEvalSupported: source.isEvalSupported - }).then(function (workerId) { - if (worker.destroyed) { - throw new Error("Worker was destroyed"); - } - - return workerId; - }); -} - -const PDFDocumentLoadingTask = function PDFDocumentLoadingTaskClosure() { - let nextDocumentId = 0; - - class PDFDocumentLoadingTask { - constructor() { - this._capability = (0, _util.createPromiseCapability)(); - this._transport = null; - this._worker = null; - this.docId = "d" + nextDocumentId++; - this.destroyed = false; - this.onPassword = null; - this.onProgress = null; - this.onUnsupportedFeature = null; - } - - get promise() { - return this._capability.promise; - } - - destroy() { - this.destroyed = true; - const transportDestroyed = !this._transport ? Promise.resolve() : this._transport.destroy(); - return transportDestroyed.then(() => { - this._transport = null; - - if (this._worker) { - this._worker.destroy(); - - this._worker = null; - } - }); - } - - then(onFulfilled, onRejected) { - throw new Error("Removed API method: " + "PDFDocumentLoadingTask.then, use the `promise` getter instead."); - } - - } - - return PDFDocumentLoadingTask; -}(); - -class PDFDataRangeTransport { - constructor(length, initialData, progressiveDone = false) { - this.length = length; - this.initialData = initialData; - this.progressiveDone = progressiveDone; - this._rangeListeners = []; - this._progressListeners = []; - this._progressiveReadListeners = []; - this._progressiveDoneListeners = []; - this._readyCapability = (0, _util.createPromiseCapability)(); - } - - addRangeListener(listener) { - this._rangeListeners.push(listener); - } - - addProgressListener(listener) { - this._progressListeners.push(listener); - } - - addProgressiveReadListener(listener) { - this._progressiveReadListeners.push(listener); - } - - addProgressiveDoneListener(listener) { - this._progressiveDoneListeners.push(listener); - } - - onDataRange(begin, chunk) { - for (const listener of this._rangeListeners) { - listener(begin, chunk); - } - } - - onDataProgress(loaded, total) { - this._readyCapability.promise.then(() => { - for (const listener of this._progressListeners) { - listener(loaded, total); - } - }); - } - - onDataProgressiveRead(chunk) { - this._readyCapability.promise.then(() => { - for (const listener of this._progressiveReadListeners) { - listener(chunk); - } - }); - } - - onDataProgressiveDone() { - this._readyCapability.promise.then(() => { - for (const listener of this._progressiveDoneListeners) { - listener(); - } - }); - } - - transportReady() { - this._readyCapability.resolve(); - } - - requestDataRange(begin, end) { - (0, _util.unreachable)("Abstract method PDFDataRangeTransport.requestDataRange"); - } - - abort() {} - -} - -exports.PDFDataRangeTransport = PDFDataRangeTransport; - -class PDFDocumentProxy { - constructor(pdfInfo, transport) { - this._pdfInfo = pdfInfo; - this._transport = transport; - } - - get numPages() { - return this._pdfInfo.numPages; - } - - get fingerprint() { - return this._pdfInfo.fingerprint; - } - - getPage(pageNumber) { - return this._transport.getPage(pageNumber); - } - - getPageIndex(ref) { - return this._transport.getPageIndex(ref); - } - - getDestinations() { - return this._transport.getDestinations(); - } - - getDestination(id) { - return this._transport.getDestination(id); - } - - getPageLabels() { - return this._transport.getPageLabels(); - } - - getPageLayout() { - return this._transport.getPageLayout(); - } - - getPageMode() { - return this._transport.getPageMode(); - } - - getViewerPreferences() { - return this._transport.getViewerPreferences(); - } - - getOpenAction() { - return this._transport.getOpenAction(); - } - - getOpenActionDestination() { - (0, _display_utils.deprecated)("getOpenActionDestination, use getOpenAction instead."); - return this.getOpenAction().then(function (openAction) { - return openAction && openAction.dest ? openAction.dest : null; - }); - } - - getAttachments() { - return this._transport.getAttachments(); - } - - getJavaScript() { - return this._transport.getJavaScript(); - } - - getOutline() { - return this._transport.getOutline(); - } - - getPermissions() { - return this._transport.getPermissions(); - } - - getMetadata() { - return this._transport.getMetadata(); - } - - getData() { - return this._transport.getData(); - } - - getDownloadInfo() { - return this._transport.downloadInfoCapability.promise; - } - - getStats() { - return this._transport.getStats(); - } - - cleanup() { - return this._transport.startCleanup(); - } - - destroy() { - return this.loadingTask.destroy(); - } - - get loadingParams() { - return this._transport.loadingParams; - } - - get loadingTask() { - return this._transport.loadingTask; - } - -} - -exports.PDFDocumentProxy = PDFDocumentProxy; - -class PDFPageProxy { - constructor(pageIndex, pageInfo, transport, pdfBug = false) { - this._pageIndex = pageIndex; - this._pageInfo = pageInfo; - this._transport = transport; - this._stats = pdfBug ? new _display_utils.StatTimer() : null; - this._pdfBug = pdfBug; - this.commonObjs = transport.commonObjs; - this.objs = new PDFObjects(); - this.cleanupAfterRender = false; - this.pendingCleanup = false; - this.intentStates = Object.create(null); - this.destroyed = false; - } - - get pageNumber() { - return this._pageIndex + 1; - } - - get rotate() { - return this._pageInfo.rotate; - } - - get ref() { - return this._pageInfo.ref; - } - - get userUnit() { - return this._pageInfo.userUnit; - } - - get view() { - return this._pageInfo.view; - } - - getViewport({ - scale, - rotation = this.rotate, - offsetX = 0, - offsetY = 0, - dontFlip = false - } = {}) { - if (arguments.length > 1 || typeof arguments[0] === "number") { - throw new Error("PDFPageProxy.getViewport is called with obsolete arguments."); - } - - return new _display_utils.PageViewport({ - viewBox: this.view, - scale, - rotation, - offsetX, - offsetY, - dontFlip - }); - } - - getAnnotations({ - intent = null - } = {}) { - if (!this.annotationsPromise || this.annotationsIntent !== intent) { - this.annotationsPromise = this._transport.getAnnotations(this._pageIndex, intent); - this.annotationsIntent = intent; - } - - return this.annotationsPromise; - } - - render({ - canvasContext, - viewport, - intent = "display", - enableWebGL = false, - renderInteractiveForms = false, - transform = null, - imageLayer = null, - canvasFactory = null, - background = null - }) { - if (this._stats) { - this._stats.time("Overall"); - } - - const renderingIntent = intent === "print" ? "print" : "display"; - this.pendingCleanup = false; - - if (!this.intentStates[renderingIntent]) { - this.intentStates[renderingIntent] = Object.create(null); - } - - const intentState = this.intentStates[renderingIntent]; - - if (intentState.streamReaderCancelTimeout) { - clearTimeout(intentState.streamReaderCancelTimeout); - intentState.streamReaderCancelTimeout = null; - } - - const canvasFactoryInstance = canvasFactory || new _display_utils.DOMCanvasFactory(); - const webGLContext = new _webgl.WebGLContext({ - enable: enableWebGL - }); - - if (!intentState.displayReadyCapability) { - intentState.displayReadyCapability = (0, _util.createPromiseCapability)(); - intentState.operatorList = { - fnArray: [], - argsArray: [], - lastChunk: false - }; - - if (this._stats) { - this._stats.time("Page Request"); - } - - this._pumpOperatorList({ - pageIndex: this._pageIndex, - intent: renderingIntent, - renderInteractiveForms: renderInteractiveForms === true - }); - } - - const complete = error => { - const i = intentState.renderTasks.indexOf(internalRenderTask); - - if (i >= 0) { - intentState.renderTasks.splice(i, 1); - } - - if (this.cleanupAfterRender || renderingIntent === "print") { - this.pendingCleanup = true; - } - - this._tryCleanup(); - - if (error) { - internalRenderTask.capability.reject(error); - - this._abortOperatorList({ - intentState, - reason: error - }); - } else { - internalRenderTask.capability.resolve(); - } - - if (this._stats) { - this._stats.timeEnd("Rendering"); - - this._stats.timeEnd("Overall"); - } - }; - - const internalRenderTask = new InternalRenderTask({ - callback: complete, - params: { - canvasContext, - viewport, - transform, - imageLayer, - background - }, - objs: this.objs, - commonObjs: this.commonObjs, - operatorList: intentState.operatorList, - pageIndex: this._pageIndex, - canvasFactory: canvasFactoryInstance, - webGLContext, - useRequestAnimationFrame: renderingIntent !== "print", - pdfBug: this._pdfBug - }); - - if (!intentState.renderTasks) { - intentState.renderTasks = []; - } - - intentState.renderTasks.push(internalRenderTask); - const renderTask = internalRenderTask.task; - intentState.displayReadyCapability.promise.then(transparency => { - if (this.pendingCleanup) { - complete(); - return; - } - - if (this._stats) { - this._stats.time("Rendering"); - } - - internalRenderTask.initializeGraphics(transparency); - internalRenderTask.operatorListChanged(); - }).catch(complete); - return renderTask; - } - - getOperatorList() { - function operatorListChanged() { - if (intentState.operatorList.lastChunk) { - intentState.opListReadCapability.resolve(intentState.operatorList); - const i = intentState.renderTasks.indexOf(opListTask); - - if (i >= 0) { - intentState.renderTasks.splice(i, 1); - } - } - } - - const renderingIntent = "oplist"; - - if (!this.intentStates[renderingIntent]) { - this.intentStates[renderingIntent] = Object.create(null); - } - - const intentState = this.intentStates[renderingIntent]; - let opListTask; - - if (!intentState.opListReadCapability) { - opListTask = {}; - opListTask.operatorListChanged = operatorListChanged; - intentState.opListReadCapability = (0, _util.createPromiseCapability)(); - intentState.renderTasks = []; - intentState.renderTasks.push(opListTask); - intentState.operatorList = { - fnArray: [], - argsArray: [], - lastChunk: false - }; - - if (this._stats) { - this._stats.time("Page Request"); - } - - this._pumpOperatorList({ - pageIndex: this._pageIndex, - intent: renderingIntent - }); - } - - return intentState.opListReadCapability.promise; - } - - streamTextContent({ - normalizeWhitespace = false, - disableCombineTextItems = false - } = {}) { - const TEXT_CONTENT_CHUNK_SIZE = 100; - return this._transport.messageHandler.sendWithStream("GetTextContent", { - pageIndex: this._pageIndex, - normalizeWhitespace: normalizeWhitespace === true, - combineTextItems: disableCombineTextItems !== true - }, { - highWaterMark: TEXT_CONTENT_CHUNK_SIZE, - - size(textContent) { - return textContent.items.length; - } - - }); - } - - getTextContent(params = {}) { - const readableStream = this.streamTextContent(params); - return new Promise(function (resolve, reject) { - function pump() { - reader.read().then(function ({ - value, - done - }) { - if (done) { - resolve(textContent); - return; - } - - Object.assign(textContent.styles, value.styles); - textContent.items.push(...value.items); - pump(); - }, reject); - } - - const reader = readableStream.getReader(); - const textContent = { - items: [], - styles: Object.create(null) - }; - pump(); - }); - } - - _destroy() { - this.destroyed = true; - this._transport.pageCache[this._pageIndex] = null; - const waitOn = []; - Object.keys(this.intentStates).forEach(intent => { - const intentState = this.intentStates[intent]; - - this._abortOperatorList({ - intentState, - reason: new Error("Page was destroyed."), - force: true - }); - - if (intent === "oplist") { - return; - } - - intentState.renderTasks.forEach(function (renderTask) { - const renderCompleted = renderTask.capability.promise.catch(function () {}); - waitOn.push(renderCompleted); - renderTask.cancel(); - }); - }); - this.objs.clear(); - this.annotationsPromise = null; - this.pendingCleanup = false; - return Promise.all(waitOn); - } - - cleanup(resetStats = false) { - this.pendingCleanup = true; - return this._tryCleanup(resetStats); - } - - _tryCleanup(resetStats = false) { - if (!this.pendingCleanup || Object.keys(this.intentStates).some(intent => { - const intentState = this.intentStates[intent]; - return intentState.renderTasks.length !== 0 || !intentState.operatorList.lastChunk; - })) { - return false; - } - - Object.keys(this.intentStates).forEach(intent => { - delete this.intentStates[intent]; - }); - this.objs.clear(); - this.annotationsPromise = null; - - if (resetStats && this._stats) { - this._stats = new _display_utils.StatTimer(); - } - - this.pendingCleanup = false; - return true; - } - - _startRenderPage(transparency, intent) { - const intentState = this.intentStates[intent]; - - if (!intentState) { - return; - } - - if (this._stats) { - this._stats.timeEnd("Page Request"); - } - - if (intentState.displayReadyCapability) { - intentState.displayReadyCapability.resolve(transparency); - } - } - - _renderPageChunk(operatorListChunk, intentState) { - for (let i = 0, ii = operatorListChunk.length; i < ii; i++) { - intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]); - intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]); - } - - intentState.operatorList.lastChunk = operatorListChunk.lastChunk; - - for (let i = 0; i < intentState.renderTasks.length; i++) { - intentState.renderTasks[i].operatorListChanged(); - } - - if (operatorListChunk.lastChunk) { - this._tryCleanup(); - } - } - - _pumpOperatorList(args) { - (0, _util.assert)(args.intent, 'PDFPageProxy._pumpOperatorList: Expected "intent" argument.'); - - const readableStream = this._transport.messageHandler.sendWithStream("GetOperatorList", args); - - const reader = readableStream.getReader(); - const intentState = this.intentStates[args.intent]; - intentState.streamReader = reader; - - const pump = () => { - reader.read().then(({ - value, - done - }) => { - if (done) { - intentState.streamReader = null; - return; - } - - if (this._transport.destroyed) { - return; - } - - this._renderPageChunk(value, intentState); - - pump(); - }, reason => { - intentState.streamReader = null; - - if (this._transport.destroyed) { - return; - } - - if (intentState.operatorList) { - intentState.operatorList.lastChunk = true; - - for (let i = 0; i < intentState.renderTasks.length; i++) { - intentState.renderTasks[i].operatorListChanged(); - } - - this._tryCleanup(); - } - - if (intentState.displayReadyCapability) { - intentState.displayReadyCapability.reject(reason); - } else if (intentState.opListReadCapability) { - intentState.opListReadCapability.reject(reason); - } else { - throw reason; - } - }); - }; - - pump(); - } - - _abortOperatorList({ - intentState, - reason, - force = false - }) { - (0, _util.assert)(reason instanceof Error || typeof reason === "object" && reason !== null, 'PDFPageProxy._abortOperatorList: Expected "reason" argument.'); - - if (!intentState.streamReader) { - return; - } - - if (!force) { - if (intentState.renderTasks.length !== 0) { - return; - } - - if (reason instanceof _display_utils.RenderingCancelledException) { - intentState.streamReaderCancelTimeout = setTimeout(() => { - this._abortOperatorList({ - intentState, - reason, - force: true - }); - - intentState.streamReaderCancelTimeout = null; - }, RENDERING_CANCELLED_TIMEOUT); - return; - } - } - - intentState.streamReader.cancel(new _util.AbortException(reason && reason.message)); - intentState.streamReader = null; - - if (this._transport.destroyed) { - return; - } - - Object.keys(this.intentStates).some(intent => { - if (this.intentStates[intent] === intentState) { - delete this.intentStates[intent]; - return true; - } - - return false; - }); - this.cleanup(); - } - - get stats() { - return this._stats; - } - -} - -exports.PDFPageProxy = PDFPageProxy; - -class LoopbackPort { - constructor(defer = true) { - this._listeners = []; - this._defer = defer; - this._deferred = Promise.resolve(undefined); - } - - postMessage(obj, transfers) { - function cloneValue(value) { - if (typeof value !== "object" || value === null) { - return value; - } - - if (cloned.has(value)) { - return cloned.get(value); - } - - let buffer, result; - - if ((buffer = value.buffer) && (0, _util.isArrayBuffer)(buffer)) { - const transferable = transfers && transfers.includes(buffer); - - if (transferable) { - result = new value.constructor(buffer, value.byteOffset, value.byteLength); - } else { - result = new value.constructor(value); - } - - cloned.set(value, result); - return result; - } - - result = Array.isArray(value) ? [] : {}; - cloned.set(value, result); - - for (const i in value) { - let desc, - p = value; - - while (!(desc = Object.getOwnPropertyDescriptor(p, i))) { - p = Object.getPrototypeOf(p); - } - - if (typeof desc.value === "undefined") { - continue; - } - - if (typeof desc.value === "function") { - if (value.hasOwnProperty && value.hasOwnProperty(i)) { - throw new Error(`LoopbackPort.postMessage - cannot clone: ${value[i]}`); - } - - continue; - } - - result[i] = cloneValue(desc.value); - } - - return result; - } - - if (!this._defer) { - this._listeners.forEach(listener => { - listener.call(this, { - data: obj - }); - }); - - return; - } - - const cloned = new WeakMap(); - const e = { - data: cloneValue(obj) - }; - - this._deferred.then(() => { - this._listeners.forEach(listener => { - listener.call(this, e); - }); - }); - } - - addEventListener(name, listener) { - this._listeners.push(listener); - } - - removeEventListener(name, listener) { - const i = this._listeners.indexOf(listener); - - this._listeners.splice(i, 1); - } - - terminate() { - this._listeners.length = 0; - } - -} - -exports.LoopbackPort = LoopbackPort; - -const PDFWorker = function PDFWorkerClosure() { - const pdfWorkerPorts = new WeakMap(); - let isWorkerDisabled = false; - let fallbackWorkerSrc; - let nextFakeWorkerId = 0; - let fakeWorkerCapability; - - if (_is_node.isNodeJS && typeof require === "function") { - isWorkerDisabled = true; - fallbackWorkerSrc = "./pdf.worker.js"; - - } else if (typeof document === "object" && "currentScript" in document) { - const pdfjsFilePath = document.currentScript && document.currentScript.src; - - if (pdfjsFilePath) { - fallbackWorkerSrc = pdfjsFilePath.replace(/(\.(?:min\.)?js)(\?.*)?$/i, ".worker$1$2"); - } - } - - function getWorkerSrc() { - if (_worker_options.GlobalWorkerOptions.workerSrc) { - return _worker_options.GlobalWorkerOptions.workerSrc; - } - - if (typeof fallbackWorkerSrc !== "undefined") { - if (!_is_node.isNodeJS) { - (0, _display_utils.deprecated)('No "GlobalWorkerOptions.workerSrc" specified.'); - } - - return fallbackWorkerSrc; - } - - throw new Error('No "GlobalWorkerOptions.workerSrc" specified.'); - } - - function getMainThreadWorkerMessageHandler() { - let mainWorkerMessageHandler; - - try { - mainWorkerMessageHandler = globalThis.pdfjsWorker && globalThis.pdfjsWorker.WorkerMessageHandler; - } catch (ex) {} - - return mainWorkerMessageHandler || null; - } - - function setupFakeWorkerGlobal() { - if (fakeWorkerCapability) { - return fakeWorkerCapability.promise; - } - - fakeWorkerCapability = (0, _util.createPromiseCapability)(); - - const loader = async function () { - const mainWorkerMessageHandler = getMainThreadWorkerMessageHandler(); - - if (mainWorkerMessageHandler) { - return mainWorkerMessageHandler; - } - - if (_is_node.isNodeJS && typeof require === "function") { - const worker = eval("require")(getWorkerSrc()); - return worker.WorkerMessageHandler; - } - - await (0, _display_utils.loadScript)(getWorkerSrc()); - return window.pdfjsWorker.WorkerMessageHandler; - }; - - loader().then(fakeWorkerCapability.resolve, fakeWorkerCapability.reject); - return fakeWorkerCapability.promise; - } - - function createCDNWrapper(url) { - const wrapper = "importScripts('" + url + "');"; - return URL.createObjectURL(new Blob([wrapper])); - } - - class PDFWorker { - constructor({ - name = null, - port = null, - verbosity = (0, _util.getVerbosityLevel)() - } = {}) { - if (port && pdfWorkerPorts.has(port)) { - throw new Error("Cannot use more than one PDFWorker per port"); - } - - this.name = name; - this.destroyed = false; - this.postMessageTransfers = true; - this.verbosity = verbosity; - this._readyCapability = (0, _util.createPromiseCapability)(); - this._port = null; - this._webWorker = null; - this._messageHandler = null; - - if (port) { - pdfWorkerPorts.set(port, this); - - this._initializeFromPort(port); - - return; - } - - this._initialize(); - } - - get promise() { - return this._readyCapability.promise; - } - - get port() { - return this._port; - } - - get messageHandler() { - return this._messageHandler; - } - - _initializeFromPort(port) { - this._port = port; - this._messageHandler = new _message_handler.MessageHandler("main", "worker", port); - - this._messageHandler.on("ready", function () {}); - - this._readyCapability.resolve(); - } - - _initialize() { - if (typeof Worker !== "undefined" && !isWorkerDisabled && !getMainThreadWorkerMessageHandler()) { - let workerSrc = getWorkerSrc(); - - try { - if (!(0, _util.isSameOrigin)(window.location.href, workerSrc)) { - workerSrc = createCDNWrapper(new URL(workerSrc, window.location).href); - } - - const worker = new Worker(workerSrc); - const messageHandler = new _message_handler.MessageHandler("main", "worker", worker); - - const terminateEarly = () => { - worker.removeEventListener("error", onWorkerError); - messageHandler.destroy(); - worker.terminate(); - - if (this.destroyed) { - this._readyCapability.reject(new Error("Worker was destroyed")); - } else { - this._setupFakeWorker(); - } - }; - - const onWorkerError = () => { - if (!this._webWorker) { - terminateEarly(); - } - }; - - worker.addEventListener("error", onWorkerError); - messageHandler.on("test", data => { - worker.removeEventListener("error", onWorkerError); - - if (this.destroyed) { - terminateEarly(); - return; - } - - if (data) { - this._messageHandler = messageHandler; - this._port = worker; - this._webWorker = worker; - - if (!data.supportTransfers) { - this.postMessageTransfers = false; - } - - this._readyCapability.resolve(); - - messageHandler.send("configure", { - verbosity: this.verbosity - }); - } else { - this._setupFakeWorker(); - - messageHandler.destroy(); - worker.terminate(); - } - }); - messageHandler.on("ready", data => { - worker.removeEventListener("error", onWorkerError); - - if (this.destroyed) { - terminateEarly(); - return; - } - - try { - sendTest(); - } catch (e) { - this._setupFakeWorker(); - } - }); - - const sendTest = () => { - const testObj = new Uint8Array([this.postMessageTransfers ? 255 : 0]); - - try { - messageHandler.send("test", testObj, [testObj.buffer]); - } catch (ex) { - (0, _util.warn)("Cannot use postMessage transfers."); - testObj[0] = 0; - messageHandler.send("test", testObj); - } - }; - - sendTest(); - return; - } catch (e) { - (0, _util.info)("The worker has been disabled."); - } - } - - this._setupFakeWorker(); - } - - _setupFakeWorker() { - if (!isWorkerDisabled) { - (0, _util.warn)("Setting up fake worker."); - isWorkerDisabled = true; - } - - setupFakeWorkerGlobal().then(WorkerMessageHandler => { - if (this.destroyed) { - this._readyCapability.reject(new Error("Worker was destroyed")); - - return; - } - - const port = new LoopbackPort(); - this._port = port; - const id = "fake" + nextFakeWorkerId++; - const workerHandler = new _message_handler.MessageHandler(id + "_worker", id, port); - WorkerMessageHandler.setup(workerHandler, port); - const messageHandler = new _message_handler.MessageHandler(id, id + "_worker", port); - this._messageHandler = messageHandler; - - this._readyCapability.resolve(); - - messageHandler.send("configure", { - verbosity: this.verbosity - }); - }).catch(reason => { - this._readyCapability.reject(new Error(`Setting up fake worker failed: "${reason.message}".`)); - }); - } - - destroy() { - this.destroyed = true; - - if (this._webWorker) { - this._webWorker.terminate(); - - this._webWorker = null; - } - - pdfWorkerPorts.delete(this._port); - this._port = null; - - if (this._messageHandler) { - this._messageHandler.destroy(); - - this._messageHandler = null; - } - } - - static fromPort(params) { - if (!params || !params.port) { - throw new Error("PDFWorker.fromPort - invalid method signature."); - } - - if (pdfWorkerPorts.has(params.port)) { - return pdfWorkerPorts.get(params.port); - } - - return new PDFWorker(params); - } - - static getWorkerSrc() { - return getWorkerSrc(); - } - - } - - return PDFWorker; -}(); - -exports.PDFWorker = PDFWorker; - -class WorkerTransport { - constructor(messageHandler, loadingTask, networkStream, params) { - this.messageHandler = messageHandler; - this.loadingTask = loadingTask; - this.commonObjs = new PDFObjects(); - this.fontLoader = new _font_loader.FontLoader({ - docId: loadingTask.docId, - onUnsupportedFeature: this._onUnsupportedFeature.bind(this) - }); - this._params = params; - this.CMapReaderFactory = new params.CMapReaderFactory({ - baseUrl: params.cMapUrl, - isCompressed: params.cMapPacked - }); - this.destroyed = false; - this.destroyCapability = null; - this._passwordCapability = null; - this._networkStream = networkStream; - this._fullReader = null; - this._lastProgress = null; - this.pageCache = []; - this.pagePromises = []; - this.downloadInfoCapability = (0, _util.createPromiseCapability)(); - this.setupMessageHandler(); - } - - destroy() { - if (this.destroyCapability) { - return this.destroyCapability.promise; - } - - this.destroyed = true; - this.destroyCapability = (0, _util.createPromiseCapability)(); - - if (this._passwordCapability) { - this._passwordCapability.reject(new Error("Worker was destroyed during onPassword callback")); - } - - const waitOn = []; - this.pageCache.forEach(function (page) { - if (page) { - waitOn.push(page._destroy()); - } - }); - this.pageCache.length = 0; - this.pagePromises.length = 0; - const terminated = this.messageHandler.sendWithPromise("Terminate", null); - waitOn.push(terminated); - Promise.all(waitOn).then(() => { - this.fontLoader.clear(); - - if (this._networkStream) { - this._networkStream.cancelAllRequests(new _util.AbortException("Worker was terminated.")); - } - - if (this.messageHandler) { - this.messageHandler.destroy(); - this.messageHandler = null; - } - - this.destroyCapability.resolve(); - }, this.destroyCapability.reject); - return this.destroyCapability.promise; - } - - setupMessageHandler() { - const { - messageHandler, - loadingTask - } = this; - messageHandler.on("GetReader", (data, sink) => { - (0, _util.assert)(this._networkStream); - this._fullReader = this._networkStream.getFullReader(); - - this._fullReader.onProgress = evt => { - this._lastProgress = { - loaded: evt.loaded, - total: evt.total - }; - }; - - sink.onPull = () => { - this._fullReader.read().then(function ({ - value, - done - }) { - if (done) { - sink.close(); - return; - } - - (0, _util.assert)((0, _util.isArrayBuffer)(value)); - sink.enqueue(new Uint8Array(value), 1, [value]); - }).catch(reason => { - sink.error(reason); - }); - }; - - sink.onCancel = reason => { - this._fullReader.cancel(reason); - }; - }); - messageHandler.on("ReaderHeadersReady", data => { - const headersCapability = (0, _util.createPromiseCapability)(); - const fullReader = this._fullReader; - fullReader.headersReady.then(() => { - if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) { - if (this._lastProgress && loadingTask.onProgress) { - loadingTask.onProgress(this._lastProgress); - } - - fullReader.onProgress = evt => { - if (loadingTask.onProgress) { - loadingTask.onProgress({ - loaded: evt.loaded, - total: evt.total - }); - } - }; - } - - headersCapability.resolve({ - isStreamingSupported: fullReader.isStreamingSupported, - isRangeSupported: fullReader.isRangeSupported, - contentLength: fullReader.contentLength - }); - }, headersCapability.reject); - return headersCapability.promise; - }); - messageHandler.on("GetRangeReader", (data, sink) => { - (0, _util.assert)(this._networkStream); - - const rangeReader = this._networkStream.getRangeReader(data.begin, data.end); - - if (!rangeReader) { - sink.close(); - return; - } - - sink.onPull = () => { - rangeReader.read().then(function ({ - value, - done - }) { - if (done) { - sink.close(); - return; - } - - (0, _util.assert)((0, _util.isArrayBuffer)(value)); - sink.enqueue(new Uint8Array(value), 1, [value]); - }).catch(reason => { - sink.error(reason); - }); - }; - - sink.onCancel = reason => { - rangeReader.cancel(reason); - }; - }); - messageHandler.on("GetDoc", ({ - pdfInfo - }) => { - this._numPages = pdfInfo.numPages; - - loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this)); - }); - messageHandler.on("DocException", function (ex) { - let reason; - - switch (ex.name) { - case "PasswordException": - reason = new _util.PasswordException(ex.message, ex.code); - break; - - case "InvalidPDFException": - reason = new _util.InvalidPDFException(ex.message); - break; - - case "MissingPDFException": - reason = new _util.MissingPDFException(ex.message); - break; - - case "UnexpectedResponseException": - reason = new _util.UnexpectedResponseException(ex.message, ex.status); - break; - - case "UnknownErrorException": - reason = new _util.UnknownErrorException(ex.message, ex.details); - break; - } - - loadingTask._capability.reject(reason); - }); - messageHandler.on("PasswordRequest", exception => { - this._passwordCapability = (0, _util.createPromiseCapability)(); - - if (loadingTask.onPassword) { - const updatePassword = password => { - this._passwordCapability.resolve({ - password - }); - }; - - try { - loadingTask.onPassword(updatePassword, exception.code); - } catch (ex) { - this._passwordCapability.reject(ex); - } - } else { - this._passwordCapability.reject(new _util.PasswordException(exception.message, exception.code)); - } - - return this._passwordCapability.promise; - }); - messageHandler.on("DataLoaded", data => { - if (loadingTask.onProgress) { - loadingTask.onProgress({ - loaded: data.length, - total: data.length - }); - } - - this.downloadInfoCapability.resolve(data); - }); - messageHandler.on("StartRenderPage", data => { - if (this.destroyed) { - return; - } - - const page = this.pageCache[data.pageIndex]; - - page._startRenderPage(data.transparency, data.intent); - }); - messageHandler.on("commonobj", data => { - if (this.destroyed) { - return; - } - - const [id, type, exportedData] = data; - - if (this.commonObjs.has(id)) { - return; - } - - switch (type) { - case "Font": - const params = this._params; - - if ("error" in exportedData) { - const exportedError = exportedData.error; - (0, _util.warn)(`Error during font loading: ${exportedError}`); - this.commonObjs.resolve(id, exportedError); - break; - } - - let fontRegistry = null; - - if (params.pdfBug && globalThis.FontInspector && globalThis.FontInspector.enabled) { - fontRegistry = { - registerFont(font, url) { - globalThis.FontInspector.fontAdded(font, url); - } - - }; - } - - const font = new _font_loader.FontFaceObject(exportedData, { - isEvalSupported: params.isEvalSupported, - disableFontFace: params.disableFontFace, - ignoreErrors: params.ignoreErrors, - onUnsupportedFeature: this._onUnsupportedFeature.bind(this), - fontRegistry - }); - this.fontLoader.bind(font).then(() => { - this.commonObjs.resolve(id, font); - }, reason => { - messageHandler.sendWithPromise("FontFallback", { - id - }).finally(() => { - this.commonObjs.resolve(id, font); - }); - }); - break; - - case "FontPath": - case "FontType3Res": - this.commonObjs.resolve(id, exportedData); - break; - - default: - throw new Error(`Got unknown common object type ${type}`); - } - }); - messageHandler.on("obj", data => { - if (this.destroyed) { - return undefined; - } - - const [id, pageIndex, type, imageData] = data; - const pageProxy = this.pageCache[pageIndex]; - - if (pageProxy.objs.has(id)) { - return undefined; - } - - switch (type) { - case "JpegStream": - return new Promise((resolve, reject) => { - const img = new Image(); - - img.onload = function () { - resolve(img); - }; - - img.onerror = function () { - reject(new Error("Error during JPEG image loading")); - (0, _display_utils.releaseImageResources)(img); - }; - - img.src = imageData; - }).then(img => { - pageProxy.objs.resolve(id, img); - }); - - case "Image": - pageProxy.objs.resolve(id, imageData); - const MAX_IMAGE_SIZE_TO_STORE = 8000000; - - if (imageData && "data" in imageData && imageData.data.length > MAX_IMAGE_SIZE_TO_STORE) { - pageProxy.cleanupAfterRender = true; - } - - break; - - default: - throw new Error(`Got unknown object type ${type}`); - } - - return undefined; - }); - messageHandler.on("DocProgress", data => { - if (this.destroyed) { - return; - } - - if (loadingTask.onProgress) { - loadingTask.onProgress({ - loaded: data.loaded, - total: data.total - }); - } - }); - messageHandler.on("UnsupportedFeature", this._onUnsupportedFeature.bind(this)); - messageHandler.on("JpegDecode", data => { - if (this.destroyed) { - return Promise.reject(new Error("Worker was destroyed")); - } - - if (typeof document === "undefined") { - return Promise.reject(new Error('"document" is not defined.')); - } - - const [imageUrl, components] = data; - - if (components !== 3 && components !== 1) { - return Promise.reject(new Error("Only 3 components or 1 component can be returned")); - } - - return new Promise(function (resolve, reject) { - const img = new Image(); - - img.onload = function () { - const { - width, - height - } = img; - const size = width * height; - const rgbaLength = size * 4; - const buf = new Uint8ClampedArray(size * components); - let tmpCanvas = document.createElement("canvas"); - tmpCanvas.width = width; - tmpCanvas.height = height; - let tmpCtx = tmpCanvas.getContext("2d"); - tmpCtx.drawImage(img, 0, 0); - const data = tmpCtx.getImageData(0, 0, width, height).data; - - if (components === 3) { - for (let i = 0, j = 0; i < rgbaLength; i += 4, j += 3) { - buf[j] = data[i]; - buf[j + 1] = data[i + 1]; - buf[j + 2] = data[i + 2]; - } - } else if (components === 1) { - for (let i = 0, j = 0; i < rgbaLength; i += 4, j++) { - buf[j] = data[i]; - } - } - - resolve({ - data: buf, - width, - height - }); - (0, _display_utils.releaseImageResources)(img); - tmpCanvas.width = 0; - tmpCanvas.height = 0; - tmpCanvas = null; - tmpCtx = null; - }; - - img.onerror = function () { - reject(new Error("JpegDecode failed to load image")); - (0, _display_utils.releaseImageResources)(img); - }; - - img.src = imageUrl; - }); - }); - messageHandler.on("FetchBuiltInCMap", (data, sink) => { - if (this.destroyed) { - sink.error(new Error("Worker was destroyed")); - return; - } - - let fetched = false; - - sink.onPull = () => { - if (fetched) { - sink.close(); - return; - } - - fetched = true; - this.CMapReaderFactory.fetch(data).then(function (builtInCMap) { - sink.enqueue(builtInCMap, 1, [builtInCMap.cMapData.buffer]); - }).catch(function (reason) { - sink.error(reason); - }); - }; - }); - } - - _onUnsupportedFeature({ - featureId - }) { - if (this.destroyed) { - return; - } - - if (this.loadingTask.onUnsupportedFeature) { - this.loadingTask.onUnsupportedFeature(featureId); - } - } - - getData() { - return this.messageHandler.sendWithPromise("GetData", null); - } - - getPage(pageNumber) { - if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) { - return Promise.reject(new Error("Invalid page request")); - } - - const pageIndex = pageNumber - 1; - - if (pageIndex in this.pagePromises) { - return this.pagePromises[pageIndex]; - } - - const promise = this.messageHandler.sendWithPromise("GetPage", { - pageIndex - }).then(pageInfo => { - if (this.destroyed) { - throw new Error("Transport destroyed"); - } - - const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.pdfBug); - this.pageCache[pageIndex] = page; - return page; - }); - this.pagePromises[pageIndex] = promise; - return promise; - } - - getPageIndex(ref) { - return this.messageHandler.sendWithPromise("GetPageIndex", { - ref - }).catch(function (reason) { - return Promise.reject(new Error(reason)); - }); - } - - getAnnotations(pageIndex, intent) { - return this.messageHandler.sendWithPromise("GetAnnotations", { - pageIndex, - intent - }); - } - - getDestinations() { - return this.messageHandler.sendWithPromise("GetDestinations", null); - } - - getDestination(id) { - if (typeof id !== "string") { - return Promise.reject(new Error("Invalid destination request.")); - } - - return this.messageHandler.sendWithPromise("GetDestination", { - id - }); - } - - getPageLabels() { - return this.messageHandler.sendWithPromise("GetPageLabels", null); - } - - getPageLayout() { - return this.messageHandler.sendWithPromise("GetPageLayout", null); - } - - getPageMode() { - return this.messageHandler.sendWithPromise("GetPageMode", null); - } - - getViewerPreferences() { - return this.messageHandler.sendWithPromise("GetViewerPreferences", null); - } - - getOpenAction() { - return this.messageHandler.sendWithPromise("GetOpenAction", null); - } - - getAttachments() { - return this.messageHandler.sendWithPromise("GetAttachments", null); - } - - getJavaScript() { - return this.messageHandler.sendWithPromise("GetJavaScript", null); - } - - getOutline() { - return this.messageHandler.sendWithPromise("GetOutline", null); - } - - getPermissions() { - return this.messageHandler.sendWithPromise("GetPermissions", null); - } - - getMetadata() { - return this.messageHandler.sendWithPromise("GetMetadata", null).then(results => { - return { - info: results[0], - metadata: results[1] ? new _metadata.Metadata(results[1]) : null, - contentDispositionFilename: this._fullReader ? this._fullReader.filename : null - }; - }); - } - - getStats() { - return this.messageHandler.sendWithPromise("GetStats", null); - } - - startCleanup() { - return this.messageHandler.sendWithPromise("Cleanup", null).then(() => { - for (let i = 0, ii = this.pageCache.length; i < ii; i++) { - const page = this.pageCache[i]; - - if (page) { - const cleanupSuccessful = page.cleanup(); - - if (!cleanupSuccessful) { - throw new Error(`startCleanup: Page ${i + 1} is currently rendering.`); - } - } - } - - this.commonObjs.clear(); - this.fontLoader.clear(); - }); - } - - get loadingParams() { - const params = this._params; - return (0, _util.shadow)(this, "loadingParams", { - disableAutoFetch: params.disableAutoFetch, - disableCreateObjectURL: params.disableCreateObjectURL, - disableFontFace: params.disableFontFace, - nativeImageDecoderSupport: params.nativeImageDecoderSupport - }); - } - -} - -class PDFObjects { - constructor() { - this._objs = Object.create(null); - } - - _ensureObj(objId) { - if (this._objs[objId]) { - return this._objs[objId]; - } - - return this._objs[objId] = { - capability: (0, _util.createPromiseCapability)(), - data: null, - resolved: false - }; - } - - get(objId, callback = null) { - if (callback) { - this._ensureObj(objId).capability.promise.then(callback); - - return null; - } - - const obj = this._objs[objId]; - - if (!obj || !obj.resolved) { - throw new Error(`Requesting object that isn't resolved yet ${objId}.`); - } - - return obj.data; - } - - has(objId) { - const obj = this._objs[objId]; - return obj ? obj.resolved : false; - } - - resolve(objId, data) { - const obj = this._ensureObj(objId); - - obj.resolved = true; - obj.data = data; - obj.capability.resolve(data); - } - - clear() { - for (const objId in this._objs) { - const { - data - } = this._objs[objId]; - - if (typeof Image !== "undefined" && data instanceof Image) { - (0, _display_utils.releaseImageResources)(data); - } - } - - this._objs = Object.create(null); - } - -} - -class RenderTask { - constructor(internalRenderTask) { - this._internalRenderTask = internalRenderTask; - this.onContinue = null; - } - - get promise() { - return this._internalRenderTask.capability.promise; - } - - cancel() { - this._internalRenderTask.cancel(); - } - - then(onFulfilled, onRejected) { - throw new Error("Removed API method: " + "RenderTask.then, use the `promise` getter instead."); - } - -} - -const InternalRenderTask = function InternalRenderTaskClosure() { - const canvasInRendering = new WeakSet(); - - class InternalRenderTask { - constructor({ - callback, - params, - objs, - commonObjs, - operatorList, - pageIndex, - canvasFactory, - webGLContext, - useRequestAnimationFrame = false, - pdfBug = false - }) { - this.callback = callback; - this.params = params; - this.objs = objs; - this.commonObjs = commonObjs; - this.operatorListIdx = null; - this.operatorList = operatorList; - this._pageIndex = pageIndex; - this.canvasFactory = canvasFactory; - this.webGLContext = webGLContext; - this._pdfBug = pdfBug; - this.running = false; - this.graphicsReadyCallback = null; - this.graphicsReady = false; - this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== "undefined"; - this.cancelled = false; - this.capability = (0, _util.createPromiseCapability)(); - this.task = new RenderTask(this); - this._continueBound = this._continue.bind(this); - this._scheduleNextBound = this._scheduleNext.bind(this); - this._nextBound = this._next.bind(this); - this._canvas = params.canvasContext.canvas; - } - - initializeGraphics(transparency = false) { - if (this.cancelled) { - return; - } - - if (this._canvas) { - if (canvasInRendering.has(this._canvas)) { - throw new Error("Cannot use the same canvas during multiple render() operations. " + "Use different canvas or ensure previous operations were " + "cancelled or completed."); - } - - canvasInRendering.add(this._canvas); - } - - if (this._pdfBug && globalThis.StepperManager && globalThis.StepperManager.enabled) { - this.stepper = globalThis.StepperManager.create(this._pageIndex); - this.stepper.init(this.operatorList); - this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint(); - } - - const { - canvasContext, - viewport, - transform, - imageLayer, - background - } = this.params; - this.gfx = new _canvas.CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.webGLContext, imageLayer); - this.gfx.beginDrawing({ - transform, - viewport, - transparency, - background - }); - this.operatorListIdx = 0; - this.graphicsReady = true; - - if (this.graphicsReadyCallback) { - this.graphicsReadyCallback(); - } - } - - cancel(error = null) { - this.running = false; - this.cancelled = true; - - if (this.gfx) { - this.gfx.endDrawing(); - } - - if (this._canvas) { - canvasInRendering.delete(this._canvas); - } - - this.callback(error || new _display_utils.RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex + 1}`, "canvas")); - } - - operatorListChanged() { - if (!this.graphicsReady) { - if (!this.graphicsReadyCallback) { - this.graphicsReadyCallback = this._continueBound; - } - - return; - } - - if (this.stepper) { - this.stepper.updateOperatorList(this.operatorList); - } - - if (this.running) { - return; - } - - this._continue(); - } - - _continue() { - this.running = true; - - if (this.cancelled) { - return; - } - - if (this.task.onContinue) { - this.task.onContinue(this._scheduleNextBound); - } else { - this._scheduleNext(); - } - } - - _scheduleNext() { - if (this._useRequestAnimationFrame) { - window.requestAnimationFrame(() => { - this._nextBound().catch(this.cancel.bind(this)); - }); - } else { - Promise.resolve().then(this._nextBound).catch(this.cancel.bind(this)); - } - } - - async _next() { - if (this.cancelled) { - return; - } - - this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper); - - if (this.operatorListIdx === this.operatorList.argsArray.length) { - this.running = false; - - if (this.operatorList.lastChunk) { - this.gfx.endDrawing(); - - if (this._canvas) { - canvasInRendering.delete(this._canvas); - } - - this.callback(); - } - } - } - - } - - return InternalRenderTask; -}(); - -const version = '2.4.456'; -exports.version = version; -const build = '228a591c'; -exports.build = build; - -/***/ }), -/* 4 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.addLinkAttributes = addLinkAttributes; -exports.getFilenameFromUrl = getFilenameFromUrl; -exports.isFetchSupported = isFetchSupported; -exports.isValidFetchUrl = isValidFetchUrl; -exports.loadScript = loadScript; -exports.deprecated = deprecated; -exports.releaseImageResources = releaseImageResources; -exports.PDFDateString = exports.StatTimer = exports.DOMSVGFactory = exports.DOMCMapReaderFactory = exports.DOMCanvasFactory = exports.DEFAULT_LINK_REL = exports.LinkTarget = exports.RenderingCancelledException = exports.PageViewport = void 0; - -var _util = __w_pdfjs_require__(1); - -const DEFAULT_LINK_REL = "noopener noreferrer nofollow"; -exports.DEFAULT_LINK_REL = DEFAULT_LINK_REL; -const SVG_NS = "http://www.w3.org/2000/svg"; - -class DOMCanvasFactory { - create(width, height) { - if (width <= 0 || height <= 0) { - throw new Error("Invalid canvas size"); - } - - const canvas = document.createElement("canvas"); - const context = canvas.getContext("2d"); - canvas.width = width; - canvas.height = height; - return { - canvas, - context - }; - } - - reset(canvasAndContext, width, height) { - if (!canvasAndContext.canvas) { - throw new Error("Canvas is not specified"); - } - - if (width <= 0 || height <= 0) { - throw new Error("Invalid canvas size"); - } - - canvasAndContext.canvas.width = width; - canvasAndContext.canvas.height = height; - } - - destroy(canvasAndContext) { - if (!canvasAndContext.canvas) { - throw new Error("Canvas is not specified"); - } - - canvasAndContext.canvas.width = 0; - canvasAndContext.canvas.height = 0; - canvasAndContext.canvas = null; - canvasAndContext.context = null; - } - -} - -exports.DOMCanvasFactory = DOMCanvasFactory; - -class DOMCMapReaderFactory { - constructor({ - baseUrl = null, - isCompressed = false - }) { - this.baseUrl = baseUrl; - this.isCompressed = isCompressed; - } - - async fetch({ - name - }) { - if (!this.baseUrl) { - throw new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and "cMapPacked" API parameters are provided.'); - } - - if (!name) { - throw new Error("CMap name must be specified."); - } - - const url = this.baseUrl + name + (this.isCompressed ? ".bcmap" : ""); - const compressionType = this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE; - - if (isFetchSupported() && isValidFetchUrl(url, document.baseURI)) { - return fetch(url).then(async response => { - if (!response.ok) { - throw new Error(response.statusText); - } - - let cMapData; - - if (this.isCompressed) { - cMapData = new Uint8Array((await response.arrayBuffer())); - } else { - cMapData = (0, _util.stringToBytes)((await response.text())); - } - - return { - cMapData, - compressionType - }; - }).catch(reason => { - throw new Error(`Unable to load ${this.isCompressed ? "binary " : ""}` + `CMap at: ${url}`); - }); - } - - return new Promise((resolve, reject) => { - const request = new XMLHttpRequest(); - request.open("GET", url, true); - - if (this.isCompressed) { - request.responseType = "arraybuffer"; - } - - request.onreadystatechange = () => { - if (request.readyState !== XMLHttpRequest.DONE) { - return; - } - - if (request.status === 200 || request.status === 0) { - let cMapData; - - if (this.isCompressed && request.response) { - cMapData = new Uint8Array(request.response); - } else if (!this.isCompressed && request.responseText) { - cMapData = (0, _util.stringToBytes)(request.responseText); - } - - if (cMapData) { - resolve({ - cMapData, - compressionType - }); - return; - } - } - - reject(new Error(request.statusText)); - }; - - request.send(null); - }).catch(reason => { - throw new Error(`Unable to load ${this.isCompressed ? "binary " : ""}` + `CMap at: ${url}`); - }); - } - -} - -exports.DOMCMapReaderFactory = DOMCMapReaderFactory; - -class DOMSVGFactory { - create(width, height) { - (0, _util.assert)(width > 0 && height > 0, "Invalid SVG dimensions"); - const svg = document.createElementNS(SVG_NS, "svg:svg"); - svg.setAttribute("version", "1.1"); - svg.setAttribute("width", width + "px"); - svg.setAttribute("height", height + "px"); - svg.setAttribute("preserveAspectRatio", "none"); - svg.setAttribute("viewBox", "0 0 " + width + " " + height); - return svg; - } - - createElement(type) { - (0, _util.assert)(typeof type === "string", "Invalid SVG element type"); - return document.createElementNS(SVG_NS, type); - } - -} - -exports.DOMSVGFactory = DOMSVGFactory; - -class PageViewport { - constructor({ - viewBox, - scale, - rotation, - offsetX = 0, - offsetY = 0, - dontFlip = false - }) { - this.viewBox = viewBox; - this.scale = scale; - this.rotation = rotation; - this.offsetX = offsetX; - this.offsetY = offsetY; - const centerX = (viewBox[2] + viewBox[0]) / 2; - const centerY = (viewBox[3] + viewBox[1]) / 2; - let rotateA, rotateB, rotateC, rotateD; - rotation = rotation % 360; - rotation = rotation < 0 ? rotation + 360 : rotation; - - switch (rotation) { - case 180: - rotateA = -1; - rotateB = 0; - rotateC = 0; - rotateD = 1; - break; - - case 90: - rotateA = 0; - rotateB = 1; - rotateC = 1; - rotateD = 0; - break; - - case 270: - rotateA = 0; - rotateB = -1; - rotateC = -1; - rotateD = 0; - break; - - default: - rotateA = 1; - rotateB = 0; - rotateC = 0; - rotateD = -1; - break; - } - - if (dontFlip) { - rotateC = -rotateC; - rotateD = -rotateD; - } - - let offsetCanvasX, offsetCanvasY; - let width, height; - - if (rotateA === 0) { - offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX; - offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY; - width = Math.abs(viewBox[3] - viewBox[1]) * scale; - height = Math.abs(viewBox[2] - viewBox[0]) * scale; - } else { - offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX; - offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY; - width = Math.abs(viewBox[2] - viewBox[0]) * scale; - height = Math.abs(viewBox[3] - viewBox[1]) * scale; - } - - this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY]; - this.width = width; - this.height = height; - } - - clone({ - scale = this.scale, - rotation = this.rotation, - offsetX = this.offsetX, - offsetY = this.offsetY, - dontFlip = false - } = {}) { - return new PageViewport({ - viewBox: this.viewBox.slice(), - scale, - rotation, - offsetX, - offsetY, - dontFlip - }); - } - - convertToViewportPoint(x, y) { - return _util.Util.applyTransform([x, y], this.transform); - } - - convertToViewportRectangle(rect) { - const topLeft = _util.Util.applyTransform([rect[0], rect[1]], this.transform); - - const bottomRight = _util.Util.applyTransform([rect[2], rect[3]], this.transform); - - return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]]; - } - - convertToPdfPoint(x, y) { - return _util.Util.applyInverseTransform([x, y], this.transform); - } - -} - -exports.PageViewport = PageViewport; - -class RenderingCancelledException extends _util.BaseException { - constructor(msg, type) { - super(msg); - this.type = type; - } - -} - -exports.RenderingCancelledException = RenderingCancelledException; -const LinkTarget = { - NONE: 0, - SELF: 1, - BLANK: 2, - PARENT: 3, - TOP: 4 -}; -exports.LinkTarget = LinkTarget; - -function addLinkAttributes(link, { - url, - target, - rel, - enabled = true -} = {}) { - (0, _util.assert)(url && typeof url === "string", 'addLinkAttributes: A valid "url" parameter must provided.'); - const urlNullRemoved = (0, _util.removeNullCharacters)(url); - - if (enabled) { - link.href = link.title = urlNullRemoved; - } else { - link.href = ""; - link.title = `Disabled: ${urlNullRemoved}`; - - link.onclick = () => { - return false; - }; - } - - let targetStr = ""; - - switch (target) { - case LinkTarget.NONE: - break; - - case LinkTarget.SELF: - targetStr = "_self"; - break; - - case LinkTarget.BLANK: - targetStr = "_blank"; - break; - - case LinkTarget.PARENT: - targetStr = "_parent"; - break; - - case LinkTarget.TOP: - targetStr = "_top"; - break; - } - - link.target = targetStr; - link.rel = typeof rel === "string" ? rel : DEFAULT_LINK_REL; -} - -function getFilenameFromUrl(url) { - const anchor = url.indexOf("#"); - const query = url.indexOf("?"); - const end = Math.min(anchor > 0 ? anchor : url.length, query > 0 ? query : url.length); - return url.substring(url.lastIndexOf("/", end) + 1, end); -} - -class StatTimer { - constructor() { - this.started = Object.create(null); - this.times = []; - } - - time(name) { - if (name in this.started) { - (0, _util.warn)(`Timer is already running for ${name}`); - } - - this.started[name] = Date.now(); - } - - timeEnd(name) { - if (!(name in this.started)) { - (0, _util.warn)(`Timer has not been started for ${name}`); - } - - this.times.push({ - name, - start: this.started[name], - end: Date.now() - }); - delete this.started[name]; - } - - toString() { - const outBuf = []; - let longest = 0; - - for (const time of this.times) { - const name = time.name; - - if (name.length > longest) { - longest = name.length; - } - } - - for (const time of this.times) { - const duration = time.end - time.start; - outBuf.push(`${time.name.padEnd(longest)} ${duration}ms\n`); - } - - return outBuf.join(""); - } - -} - -exports.StatTimer = StatTimer; - -function isFetchSupported() { - return typeof fetch !== "undefined" && typeof Response !== "undefined" && "body" in Response.prototype && typeof ReadableStream !== "undefined"; -} - -function isValidFetchUrl(url, baseUrl) { - try { - const { - protocol - } = baseUrl ? new URL(url, baseUrl) : new URL(url); - return protocol === "http:" || protocol === "https:"; - } catch (ex) { - return false; - } -} - -function loadScript(src) { - return new Promise((resolve, reject) => { - const script = document.createElement("script"); - script.src = src; - script.onload = resolve; - - script.onerror = function () { - reject(new Error(`Cannot load script at: ${script.src}`)); - }; - - (document.head || document.documentElement).appendChild(script); - }); -} - -function deprecated(details) { - console.log("Deprecated API usage: " + details); -} - -function releaseImageResources(img) { - (0, _util.assert)(img instanceof Image, "Invalid `img` parameter."); - const url = img.src; - - if (typeof url === "string" && url.startsWith("blob:") && URL.revokeObjectURL) { - URL.revokeObjectURL(url); - } - - img.removeAttribute("src"); -} - -let pdfDateStringRegex; - -class PDFDateString { - static toDateObject(input) { - if (!input || !(0, _util.isString)(input)) { - return null; - } - - if (!pdfDateStringRegex) { - pdfDateStringRegex = new RegExp("^D:" + "(\\d{4})" + "(\\d{2})?" + "(\\d{2})?" + "(\\d{2})?" + "(\\d{2})?" + "(\\d{2})?" + "([Z|+|-])?" + "(\\d{2})?" + "'?" + "(\\d{2})?" + "'?"); - } - - const matches = pdfDateStringRegex.exec(input); - - if (!matches) { - return null; - } - - const year = parseInt(matches[1], 10); - let month = parseInt(matches[2], 10); - month = month >= 1 && month <= 12 ? month - 1 : 0; - let day = parseInt(matches[3], 10); - day = day >= 1 && day <= 31 ? day : 1; - let hour = parseInt(matches[4], 10); - hour = hour >= 0 && hour <= 23 ? hour : 0; - let minute = parseInt(matches[5], 10); - minute = minute >= 0 && minute <= 59 ? minute : 0; - let second = parseInt(matches[6], 10); - second = second >= 0 && second <= 59 ? second : 0; - const universalTimeRelation = matches[7] || "Z"; - let offsetHour = parseInt(matches[8], 10); - offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0; - let offsetMinute = parseInt(matches[9], 10) || 0; - offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0; - - if (universalTimeRelation === "-") { - hour += offsetHour; - minute += offsetMinute; - } else if (universalTimeRelation === "+") { - hour -= offsetHour; - minute -= offsetMinute; - } - - return new Date(Date.UTC(year, month, day, hour, minute, second)); - } - -} - -exports.PDFDateString = PDFDateString; - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.FontLoader = exports.FontFaceObject = void 0; - -var _util = __w_pdfjs_require__(1); - -class BaseFontLoader { - constructor({ - docId, - onUnsupportedFeature - }) { - if (this.constructor === BaseFontLoader) { - (0, _util.unreachable)("Cannot initialize BaseFontLoader."); - } - - this.docId = docId; - this._onUnsupportedFeature = onUnsupportedFeature; - this.nativeFontFaces = []; - this.styleElement = null; - } - - addNativeFontFace(nativeFontFace) { - this.nativeFontFaces.push(nativeFontFace); - document.fonts.add(nativeFontFace); - } - - insertRule(rule) { - let styleElement = this.styleElement; - - if (!styleElement) { - styleElement = this.styleElement = document.createElement("style"); - styleElement.id = `PDFJS_FONT_STYLE_TAG_${this.docId}`; - document.documentElement.getElementsByTagName("head")[0].appendChild(styleElement); - } - - const styleSheet = styleElement.sheet; - styleSheet.insertRule(rule, styleSheet.cssRules.length); - } - - clear() { - this.nativeFontFaces.forEach(function (nativeFontFace) { - document.fonts.delete(nativeFontFace); - }); - this.nativeFontFaces.length = 0; - - if (this.styleElement) { - this.styleElement.remove(); - this.styleElement = null; - } - } - - async bind(font) { - if (font.attached || font.missingFile) { - return; - } - - font.attached = true; - - if (this.isFontLoadingAPISupported) { - const nativeFontFace = font.createNativeFontFace(); - - if (nativeFontFace) { - this.addNativeFontFace(nativeFontFace); - - try { - await nativeFontFace.loaded; - } catch (ex) { - this._onUnsupportedFeature({ - featureId: _util.UNSUPPORTED_FEATURES.font - }); - - (0, _util.warn)(`Failed to load font '${nativeFontFace.family}': '${ex}'.`); - font.disableFontFace = true; - throw ex; - } - } - - return; - } - - const rule = font.createFontFaceRule(); - - if (rule) { - this.insertRule(rule); - - if (this.isSyncFontLoadingSupported) { - return; - } - - await new Promise(resolve => { - const request = this._queueLoadingCallback(resolve); - - this._prepareFontLoadEvent([rule], [font], request); - }); - } - } - - _queueLoadingCallback(callback) { - (0, _util.unreachable)("Abstract method `_queueLoadingCallback`."); - } - - get isFontLoadingAPISupported() { - const supported = typeof document !== "undefined" && !!document.fonts; - return (0, _util.shadow)(this, "isFontLoadingAPISupported", supported); - } - - get isSyncFontLoadingSupported() { - (0, _util.unreachable)("Abstract method `isSyncFontLoadingSupported`."); - } - - get _loadTestFont() { - (0, _util.unreachable)("Abstract method `_loadTestFont`."); - } - - _prepareFontLoadEvent(rules, fontsToLoad, request) { - (0, _util.unreachable)("Abstract method `_prepareFontLoadEvent`."); - } - -} - -let FontLoader; -exports.FontLoader = FontLoader; -{ - exports.FontLoader = FontLoader = class GenericFontLoader extends BaseFontLoader { - constructor(docId) { - super(docId); - this.loadingContext = { - requests: [], - nextRequestId: 0 - }; - this.loadTestFontId = 0; - } - - get isSyncFontLoadingSupported() { - let supported = false; - - if (typeof navigator === "undefined") { - supported = true; - } else { - const m = /Mozilla\/5.0.*?rv:(\d+).*? Gecko/.exec(navigator.userAgent); - - if (m && m[1] >= 14) { - supported = true; - } - } - - return (0, _util.shadow)(this, "isSyncFontLoadingSupported", supported); - } - - _queueLoadingCallback(callback) { - function completeRequest() { - (0, _util.assert)(!request.done, "completeRequest() cannot be called twice."); - request.done = true; - - while (context.requests.length > 0 && context.requests[0].done) { - const otherRequest = context.requests.shift(); - setTimeout(otherRequest.callback, 0); - } - } - - const context = this.loadingContext; - const request = { - id: `pdfjs-font-loading-${context.nextRequestId++}`, - done: false, - complete: completeRequest, - callback - }; - context.requests.push(request); - return request; - } - - get _loadTestFont() { - const getLoadTestFont = function () { - return atob("T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQA" + "FQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAA" + "ALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgA" + "AAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1" + "AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD" + "6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACM" + "AooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4D" + "IP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAA" + "AAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUA" + "AQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgAB" + "AAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABY" + "AAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAA" + "AC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAA" + "AAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQAC" + "AQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3" + "Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTj" + "FQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA=="); - }; - - return (0, _util.shadow)(this, "_loadTestFont", getLoadTestFont()); - } - - _prepareFontLoadEvent(rules, fonts, request) { - function int32(data, offset) { - return data.charCodeAt(offset) << 24 | data.charCodeAt(offset + 1) << 16 | data.charCodeAt(offset + 2) << 8 | data.charCodeAt(offset + 3) & 0xff; - } - - function spliceString(s, offset, remove, insert) { - const chunk1 = s.substring(0, offset); - const chunk2 = s.substring(offset + remove); - return chunk1 + insert + chunk2; - } - - let i, ii; - const canvas = document.createElement("canvas"); - canvas.width = 1; - canvas.height = 1; - const ctx = canvas.getContext("2d"); - let called = 0; - - function isFontReady(name, callback) { - called++; - - if (called > 30) { - (0, _util.warn)("Load test font never loaded."); - callback(); - return; - } - - ctx.font = "30px " + name; - ctx.fillText(".", 0, 20); - const imageData = ctx.getImageData(0, 0, 1, 1); - - if (imageData.data[3] > 0) { - callback(); - return; - } - - setTimeout(isFontReady.bind(null, name, callback)); - } - - const loadTestFontId = `lt${Date.now()}${this.loadTestFontId++}`; - let data = this._loadTestFont; - const COMMENT_OFFSET = 976; - data = spliceString(data, COMMENT_OFFSET, loadTestFontId.length, loadTestFontId); - const CFF_CHECKSUM_OFFSET = 16; - const XXXX_VALUE = 0x58585858; - let checksum = int32(data, CFF_CHECKSUM_OFFSET); - - for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) { - checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0; - } - - if (i < loadTestFontId.length) { - checksum = checksum - XXXX_VALUE + int32(loadTestFontId + "XXX", i) | 0; - } - - data = spliceString(data, CFF_CHECKSUM_OFFSET, 4, (0, _util.string32)(checksum)); - const url = `url(data:font/opentype;base64,${btoa(data)});`; - const rule = `@font-face {font-family:"${loadTestFontId}";src:${url}}`; - this.insertRule(rule); - const names = []; - - for (i = 0, ii = fonts.length; i < ii; i++) { - names.push(fonts[i].loadedName); - } - - names.push(loadTestFontId); - const div = document.createElement("div"); - div.style.visibility = "hidden"; - div.style.width = div.style.height = "10px"; - div.style.position = "absolute"; - div.style.top = div.style.left = "0px"; - - for (i = 0, ii = names.length; i < ii; ++i) { - const span = document.createElement("span"); - span.textContent = "Hi"; - span.style.fontFamily = names[i]; - div.appendChild(span); - } - - document.body.appendChild(div); - isFontReady(loadTestFontId, function () { - document.body.removeChild(div); - request.complete(); - }); - } - - }; -} - -class FontFaceObject { - constructor(translatedData, { - isEvalSupported = true, - disableFontFace = false, - ignoreErrors = false, - onUnsupportedFeature = null, - fontRegistry = null - }) { - this.compiledGlyphs = Object.create(null); - - for (const i in translatedData) { - this[i] = translatedData[i]; - } - - this.isEvalSupported = isEvalSupported !== false; - this.disableFontFace = disableFontFace === true; - this.ignoreErrors = ignoreErrors === true; - this._onUnsupportedFeature = onUnsupportedFeature; - this.fontRegistry = fontRegistry; - } - - createNativeFontFace() { - if (!this.data || this.disableFontFace) { - return null; - } - - const nativeFontFace = new FontFace(this.loadedName, this.data, {}); - - if (this.fontRegistry) { - this.fontRegistry.registerFont(this); - } - - return nativeFontFace; - } - - createFontFaceRule() { - if (!this.data || this.disableFontFace) { - return null; - } - - const data = (0, _util.bytesToString)(new Uint8Array(this.data)); - const url = `url(data:${this.mimetype};base64,${btoa(data)});`; - const rule = `@font-face {font-family:"${this.loadedName}";src:${url}}`; - - if (this.fontRegistry) { - this.fontRegistry.registerFont(this, url); - } - - return rule; - } - - getPathGenerator(objs, character) { - if (this.compiledGlyphs[character] !== undefined) { - return this.compiledGlyphs[character]; - } - - let cmds, current; - - try { - cmds = objs.get(this.loadedName + "_path_" + character); - } catch (ex) { - if (!this.ignoreErrors) { - throw ex; - } - - if (this._onUnsupportedFeature) { - this._onUnsupportedFeature({ - featureId: _util.UNSUPPORTED_FEATURES.font - }); - } - - (0, _util.warn)(`getPathGenerator - ignoring character: "${ex}".`); - return this.compiledGlyphs[character] = function (c, size) {}; - } - - if (this.isEvalSupported && _util.IsEvalSupportedCached.value) { - let args, - js = ""; - - for (let i = 0, ii = cmds.length; i < ii; i++) { - current = cmds[i]; - - if (current.args !== undefined) { - args = current.args.join(","); - } else { - args = ""; - } - - js += "c." + current.cmd + "(" + args + ");\n"; - } - - return this.compiledGlyphs[character] = new Function("c", "size", js); - } - - return this.compiledGlyphs[character] = function (c, size) { - for (let i = 0, ii = cmds.length; i < ii; i++) { - current = cmds[i]; - - if (current.cmd === "scale") { - current.args = [size, -size]; - } - - c[current.cmd].apply(c, current.args); - } - }; - } - -} - -exports.FontFaceObject = FontFaceObject; - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -const compatibilityParams = Object.create(null); -{ - const { - isNodeJS - } = __w_pdfjs_require__(7); - - const userAgent = typeof navigator !== "undefined" && navigator.userAgent || ""; - const isIE = /Trident/.test(userAgent); - const isIOSChrome = /CriOS/.test(userAgent); - - (function checkOnBlobSupport() { - if (isIE || isIOSChrome) { - compatibilityParams.disableCreateObjectURL = true; - } - })(); - - (function checkFontFaceAndImage() { - if (isNodeJS) { - compatibilityParams.disableFontFace = true; - compatibilityParams.nativeImageDecoderSupport = "none"; - } - })(); -} -exports.apiCompatibilityParams = Object.freeze(compatibilityParams); - -/***/ }), -/* 7 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.isNodeJS = void 0; -const isNodeJS = typeof process === "object" && process + "" === "[object process]" && !process.versions["nw"] && !process.versions["electron"]; -exports.isNodeJS = isNodeJS; - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.CanvasGraphics = void 0; - -var _util = __w_pdfjs_require__(1); - -var _pattern_helper = __w_pdfjs_require__(9); - -var MIN_FONT_SIZE = 16; -var MAX_FONT_SIZE = 100; -var MAX_GROUP_SIZE = 4096; -var MIN_WIDTH_FACTOR = 0.65; -var COMPILE_TYPE3_GLYPHS = true; -var MAX_SIZE_TO_COMPILE = 1000; -var FULL_CHUNK_HEIGHT = 16; - -function addContextCurrentTransform(ctx) { - if (!ctx.mozCurrentTransform) { - ctx._originalSave = ctx.save; - ctx._originalRestore = ctx.restore; - ctx._originalRotate = ctx.rotate; - ctx._originalScale = ctx.scale; - ctx._originalTranslate = ctx.translate; - ctx._originalTransform = ctx.transform; - ctx._originalSetTransform = ctx.setTransform; - ctx._transformMatrix = ctx._transformMatrix || [1, 0, 0, 1, 0, 0]; - ctx._transformStack = []; - Object.defineProperty(ctx, "mozCurrentTransform", { - get: function getCurrentTransform() { - return this._transformMatrix; - } - }); - Object.defineProperty(ctx, "mozCurrentTransformInverse", { - get: function getCurrentTransformInverse() { - var m = this._transformMatrix; - var a = m[0], - b = m[1], - c = m[2], - d = m[3], - e = m[4], - f = m[5]; - var ad_bc = a * d - b * c; - var bc_ad = b * c - a * d; - return [d / ad_bc, b / bc_ad, c / bc_ad, a / ad_bc, (d * e - c * f) / bc_ad, (b * e - a * f) / ad_bc]; - } - }); - - ctx.save = function ctxSave() { - var old = this._transformMatrix; - - this._transformStack.push(old); - - this._transformMatrix = old.slice(0, 6); - - this._originalSave(); - }; - - ctx.restore = function ctxRestore() { - var prev = this._transformStack.pop(); - - if (prev) { - this._transformMatrix = prev; - - this._originalRestore(); - } - }; - - ctx.translate = function ctxTranslate(x, y) { - var m = this._transformMatrix; - m[4] = m[0] * x + m[2] * y + m[4]; - m[5] = m[1] * x + m[3] * y + m[5]; - - this._originalTranslate(x, y); - }; - - ctx.scale = function ctxScale(x, y) { - var m = this._transformMatrix; - m[0] = m[0] * x; - m[1] = m[1] * x; - m[2] = m[2] * y; - m[3] = m[3] * y; - - this._originalScale(x, y); - }; - - ctx.transform = function ctxTransform(a, b, c, d, e, f) { - var m = this._transformMatrix; - this._transformMatrix = [m[0] * a + m[2] * b, m[1] * a + m[3] * b, m[0] * c + m[2] * d, m[1] * c + m[3] * d, m[0] * e + m[2] * f + m[4], m[1] * e + m[3] * f + m[5]]; - - ctx._originalTransform(a, b, c, d, e, f); - }; - - ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) { - this._transformMatrix = [a, b, c, d, e, f]; - - ctx._originalSetTransform(a, b, c, d, e, f); - }; - - ctx.rotate = function ctxRotate(angle) { - var cosValue = Math.cos(angle); - var sinValue = Math.sin(angle); - var m = this._transformMatrix; - this._transformMatrix = [m[0] * cosValue + m[2] * sinValue, m[1] * cosValue + m[3] * sinValue, m[0] * -sinValue + m[2] * cosValue, m[1] * -sinValue + m[3] * cosValue, m[4], m[5]]; - - this._originalRotate(angle); - }; - } -} - -var CachedCanvases = function CachedCanvasesClosure() { - function CachedCanvases(canvasFactory) { - this.canvasFactory = canvasFactory; - this.cache = Object.create(null); - } - - CachedCanvases.prototype = { - getCanvas: function CachedCanvases_getCanvas(id, width, height, trackTransform) { - var canvasEntry; - - if (this.cache[id] !== undefined) { - canvasEntry = this.cache[id]; - this.canvasFactory.reset(canvasEntry, width, height); - canvasEntry.context.setTransform(1, 0, 0, 1, 0, 0); - } else { - canvasEntry = this.canvasFactory.create(width, height); - this.cache[id] = canvasEntry; - } - - if (trackTransform) { - addContextCurrentTransform(canvasEntry.context); - } - - return canvasEntry; - }, - - clear() { - for (var id in this.cache) { - var canvasEntry = this.cache[id]; - this.canvasFactory.destroy(canvasEntry); - delete this.cache[id]; - } - } - - }; - return CachedCanvases; -}(); - -function compileType3Glyph(imgData) { - var POINT_TO_PROCESS_LIMIT = 1000; - var width = imgData.width, - height = imgData.height; - var i, - j, - j0, - width1 = width + 1; - var points = new Uint8Array(width1 * (height + 1)); - var POINT_TYPES = new Uint8Array([0, 2, 4, 0, 1, 0, 5, 4, 8, 10, 0, 8, 0, 2, 1, 0]); - var lineSize = width + 7 & ~7, - data0 = imgData.data; - var data = new Uint8Array(lineSize * height), - pos = 0, - ii; - - for (i = 0, ii = data0.length; i < ii; i++) { - var mask = 128, - elem = data0[i]; - - while (mask > 0) { - data[pos++] = elem & mask ? 0 : 255; - mask >>= 1; - } - } - - var count = 0; - pos = 0; - - if (data[pos] !== 0) { - points[0] = 1; - ++count; - } - - for (j = 1; j < width; j++) { - if (data[pos] !== data[pos + 1]) { - points[j] = data[pos] ? 2 : 1; - ++count; - } - - pos++; - } - - if (data[pos] !== 0) { - points[j] = 2; - ++count; - } - - for (i = 1; i < height; i++) { - pos = i * lineSize; - j0 = i * width1; - - if (data[pos - lineSize] !== data[pos]) { - points[j0] = data[pos] ? 1 : 8; - ++count; - } - - var sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0); - - for (j = 1; j < width; j++) { - sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0); - - if (POINT_TYPES[sum]) { - points[j0 + j] = POINT_TYPES[sum]; - ++count; - } - - pos++; - } - - if (data[pos - lineSize] !== data[pos]) { - points[j0 + j] = data[pos] ? 2 : 4; - ++count; - } - - if (count > POINT_TO_PROCESS_LIMIT) { - return null; - } - } - - pos = lineSize * (height - 1); - j0 = i * width1; - - if (data[pos] !== 0) { - points[j0] = 8; - ++count; - } - - for (j = 1; j < width; j++) { - if (data[pos] !== data[pos + 1]) { - points[j0 + j] = data[pos] ? 4 : 8; - ++count; - } - - pos++; - } - - if (data[pos] !== 0) { - points[j0 + j] = 4; - ++count; - } - - if (count > POINT_TO_PROCESS_LIMIT) { - return null; - } - - var steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]); - var outlines = []; - - for (i = 0; count && i <= height; i++) { - var p = i * width1; - var end = p + width; - - while (p < end && !points[p]) { - p++; - } - - if (p === end) { - continue; - } - - var coords = [p % width1, i]; - var type = points[p], - p0 = p, - pp; - - do { - var step = steps[type]; - - do { - p += step; - } while (!points[p]); - - pp = points[p]; - - if (pp !== 5 && pp !== 10) { - type = pp; - points[p] = 0; - } else { - type = pp & 0x33 * type >> 4; - points[p] &= type >> 2 | type << 2; - } - - coords.push(p % width1); - coords.push(p / width1 | 0); - - if (!points[p]) { - --count; - } - } while (p0 !== p); - - outlines.push(coords); - --i; - } - - var drawOutline = function (c) { - c.save(); - c.scale(1 / width, -1 / height); - c.translate(0, -height); - c.beginPath(); - - for (var i = 0, ii = outlines.length; i < ii; i++) { - var o = outlines[i]; - c.moveTo(o[0], o[1]); - - for (var j = 2, jj = o.length; j < jj; j += 2) { - c.lineTo(o[j], o[j + 1]); - } - } - - c.fill(); - c.beginPath(); - c.restore(); - }; - - return drawOutline; -} - -var CanvasExtraState = function CanvasExtraStateClosure() { - function CanvasExtraState() { - this.alphaIsShape = false; - this.fontSize = 0; - this.fontSizeScale = 1; - this.textMatrix = _util.IDENTITY_MATRIX; - this.textMatrixScale = 1; - this.fontMatrix = _util.FONT_IDENTITY_MATRIX; - this.leading = 0; - this.x = 0; - this.y = 0; - this.lineX = 0; - this.lineY = 0; - this.charSpacing = 0; - this.wordSpacing = 0; - this.textHScale = 1; - this.textRenderingMode = _util.TextRenderingMode.FILL; - this.textRise = 0; - this.fillColor = "#000000"; - this.strokeColor = "#000000"; - this.patternFill = false; - this.fillAlpha = 1; - this.strokeAlpha = 1; - this.lineWidth = 1; - this.activeSMask = null; - this.resumeSMaskCtx = null; - } - - CanvasExtraState.prototype = { - clone: function CanvasExtraState_clone() { - return Object.create(this); - }, - setCurrentPoint: function CanvasExtraState_setCurrentPoint(x, y) { - this.x = x; - this.y = y; - } - }; - return CanvasExtraState; -}(); - -var CanvasGraphics = function CanvasGraphicsClosure() { - var EXECUTION_TIME = 15; - var EXECUTION_STEPS = 10; - - function CanvasGraphics(canvasCtx, commonObjs, objs, canvasFactory, webGLContext, imageLayer) { - this.ctx = canvasCtx; - this.current = new CanvasExtraState(); - this.stateStack = []; - this.pendingClip = null; - this.pendingEOFill = false; - this.res = null; - this.xobjs = null; - this.commonObjs = commonObjs; - this.objs = objs; - this.canvasFactory = canvasFactory; - this.webGLContext = webGLContext; - this.imageLayer = imageLayer; - this.groupStack = []; - this.processingType3 = null; - this.baseTransform = null; - this.baseTransformStack = []; - this.groupLevel = 0; - this.smaskStack = []; - this.smaskCounter = 0; - this.tempSMask = null; - this.cachedCanvases = new CachedCanvases(this.canvasFactory); - - if (canvasCtx) { - addContextCurrentTransform(canvasCtx); - } - - this._cachedGetSinglePixelWidth = null; - } - - function putBinaryImageData(ctx, imgData) { - if (typeof ImageData !== "undefined" && imgData instanceof ImageData) { - ctx.putImageData(imgData, 0, 0); - return; - } - - var height = imgData.height, - width = imgData.width; - var partialChunkHeight = height % FULL_CHUNK_HEIGHT; - var fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT; - var totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1; - var chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT); - var srcPos = 0, - destPos; - var src = imgData.data; - var dest = chunkImgData.data; - var i, j, thisChunkHeight, elemsInThisChunk; - - if (imgData.kind === _util.ImageKind.GRAYSCALE_1BPP) { - var srcLength = src.byteLength; - var dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2); - var dest32DataLength = dest32.length; - var fullSrcDiff = width + 7 >> 3; - var white = 0xffffffff; - var black = _util.IsLittleEndianCached.value ? 0xff000000 : 0x000000ff; - - for (i = 0; i < totalChunks; i++) { - thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight; - destPos = 0; - - for (j = 0; j < thisChunkHeight; j++) { - var srcDiff = srcLength - srcPos; - var k = 0; - var kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7; - var kEndUnrolled = kEnd & ~7; - var mask = 0; - var srcByte = 0; - - for (; k < kEndUnrolled; k += 8) { - srcByte = src[srcPos++]; - dest32[destPos++] = srcByte & 128 ? white : black; - dest32[destPos++] = srcByte & 64 ? white : black; - dest32[destPos++] = srcByte & 32 ? white : black; - dest32[destPos++] = srcByte & 16 ? white : black; - dest32[destPos++] = srcByte & 8 ? white : black; - dest32[destPos++] = srcByte & 4 ? white : black; - dest32[destPos++] = srcByte & 2 ? white : black; - dest32[destPos++] = srcByte & 1 ? white : black; - } - - for (; k < kEnd; k++) { - if (mask === 0) { - srcByte = src[srcPos++]; - mask = 128; - } - - dest32[destPos++] = srcByte & mask ? white : black; - mask >>= 1; - } - } - - while (destPos < dest32DataLength) { - dest32[destPos++] = 0; - } - - ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT); - } - } else if (imgData.kind === _util.ImageKind.RGBA_32BPP) { - j = 0; - elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4; - - for (i = 0; i < fullChunks; i++) { - dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk)); - srcPos += elemsInThisChunk; - ctx.putImageData(chunkImgData, 0, j); - j += FULL_CHUNK_HEIGHT; - } - - if (i < totalChunks) { - elemsInThisChunk = width * partialChunkHeight * 4; - dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk)); - ctx.putImageData(chunkImgData, 0, j); - } - } else if (imgData.kind === _util.ImageKind.RGB_24BPP) { - thisChunkHeight = FULL_CHUNK_HEIGHT; - elemsInThisChunk = width * thisChunkHeight; - - for (i = 0; i < totalChunks; i++) { - if (i >= fullChunks) { - thisChunkHeight = partialChunkHeight; - elemsInThisChunk = width * thisChunkHeight; - } - - destPos = 0; - - for (j = elemsInThisChunk; j--;) { - dest[destPos++] = src[srcPos++]; - dest[destPos++] = src[srcPos++]; - dest[destPos++] = src[srcPos++]; - dest[destPos++] = 255; - } - - ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT); - } - } else { - throw new Error(`bad image kind: ${imgData.kind}`); - } - } - - function putBinaryImageMask(ctx, imgData) { - var height = imgData.height, - width = imgData.width; - var partialChunkHeight = height % FULL_CHUNK_HEIGHT; - var fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT; - var totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1; - var chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT); - var srcPos = 0; - var src = imgData.data; - var dest = chunkImgData.data; - - for (var i = 0; i < totalChunks; i++) { - var thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight; - var destPos = 3; - - for (var j = 0; j < thisChunkHeight; j++) { - var mask = 0; - - for (var k = 0; k < width; k++) { - if (!mask) { - var elem = src[srcPos++]; - mask = 128; - } - - dest[destPos] = elem & mask ? 0 : 255; - destPos += 4; - mask >>= 1; - } - } - - ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT); - } - } - - function copyCtxState(sourceCtx, destCtx) { - var properties = ["strokeStyle", "fillStyle", "fillRule", "globalAlpha", "lineWidth", "lineCap", "lineJoin", "miterLimit", "globalCompositeOperation", "font"]; - - for (var i = 0, ii = properties.length; i < ii; i++) { - var property = properties[i]; - - if (sourceCtx[property] !== undefined) { - destCtx[property] = sourceCtx[property]; - } - } - - if (sourceCtx.setLineDash !== undefined) { - destCtx.setLineDash(sourceCtx.getLineDash()); - destCtx.lineDashOffset = sourceCtx.lineDashOffset; - } - } - - function resetCtxToDefault(ctx) { - ctx.strokeStyle = "#000000"; - ctx.fillStyle = "#000000"; - ctx.fillRule = "nonzero"; - ctx.globalAlpha = 1; - ctx.lineWidth = 1; - ctx.lineCap = "butt"; - ctx.lineJoin = "miter"; - ctx.miterLimit = 10; - ctx.globalCompositeOperation = "source-over"; - ctx.font = "10px sans-serif"; - - if (ctx.setLineDash !== undefined) { - ctx.setLineDash([]); - ctx.lineDashOffset = 0; - } - } - - function composeSMaskBackdrop(bytes, r0, g0, b0) { - var length = bytes.length; - - for (var i = 3; i < length; i += 4) { - var alpha = bytes[i]; - - if (alpha === 0) { - bytes[i - 3] = r0; - bytes[i - 2] = g0; - bytes[i - 1] = b0; - } else if (alpha < 255) { - var alpha_ = 255 - alpha; - bytes[i - 3] = bytes[i - 3] * alpha + r0 * alpha_ >> 8; - bytes[i - 2] = bytes[i - 2] * alpha + g0 * alpha_ >> 8; - bytes[i - 1] = bytes[i - 1] * alpha + b0 * alpha_ >> 8; - } - } - } - - function composeSMaskAlpha(maskData, layerData, transferMap) { - var length = maskData.length; - var scale = 1 / 255; - - for (var i = 3; i < length; i += 4) { - var alpha = transferMap ? transferMap[maskData[i]] : maskData[i]; - layerData[i] = layerData[i] * alpha * scale | 0; - } - } - - function composeSMaskLuminosity(maskData, layerData, transferMap) { - var length = maskData.length; - - for (var i = 3; i < length; i += 4) { - var y = maskData[i - 3] * 77 + maskData[i - 2] * 152 + maskData[i - 1] * 28; - layerData[i] = transferMap ? layerData[i] * transferMap[y >> 8] >> 8 : layerData[i] * y >> 16; - } - } - - function genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap) { - var hasBackdrop = !!backdrop; - var r0 = hasBackdrop ? backdrop[0] : 0; - var g0 = hasBackdrop ? backdrop[1] : 0; - var b0 = hasBackdrop ? backdrop[2] : 0; - var composeFn; - - if (subtype === "Luminosity") { - composeFn = composeSMaskLuminosity; - } else { - composeFn = composeSMaskAlpha; - } - - var PIXELS_TO_PROCESS = 1048576; - var chunkSize = Math.min(height, Math.ceil(PIXELS_TO_PROCESS / width)); - - for (var row = 0; row < height; row += chunkSize) { - var chunkHeight = Math.min(chunkSize, height - row); - var maskData = maskCtx.getImageData(0, row, width, chunkHeight); - var layerData = layerCtx.getImageData(0, row, width, chunkHeight); - - if (hasBackdrop) { - composeSMaskBackdrop(maskData.data, r0, g0, b0); - } - - composeFn(maskData.data, layerData.data, transferMap); - maskCtx.putImageData(layerData, 0, row); - } - } - - function composeSMask(ctx, smask, layerCtx, webGLContext) { - var mask = smask.canvas; - var maskCtx = smask.context; - ctx.setTransform(smask.scaleX, 0, 0, smask.scaleY, smask.offsetX, smask.offsetY); - var backdrop = smask.backdrop || null; - - if (!smask.transferMap && webGLContext.isEnabled) { - const composed = webGLContext.composeSMask({ - layer: layerCtx.canvas, - mask, - properties: { - subtype: smask.subtype, - backdrop - } - }); - ctx.setTransform(1, 0, 0, 1, 0, 0); - ctx.drawImage(composed, smask.offsetX, smask.offsetY); - return; - } - - genericComposeSMask(maskCtx, layerCtx, mask.width, mask.height, smask.subtype, backdrop, smask.transferMap); - ctx.drawImage(mask, 0, 0); - } - - var LINE_CAP_STYLES = ["butt", "round", "square"]; - var LINE_JOIN_STYLES = ["miter", "round", "bevel"]; - var NORMAL_CLIP = {}; - var EO_CLIP = {}; - CanvasGraphics.prototype = { - beginDrawing({ - transform, - viewport, - transparency = false, - background = null - }) { - var width = this.ctx.canvas.width; - var height = this.ctx.canvas.height; - this.ctx.save(); - this.ctx.fillStyle = background || "rgb(255, 255, 255)"; - this.ctx.fillRect(0, 0, width, height); - this.ctx.restore(); - - if (transparency) { - var transparentCanvas = this.cachedCanvases.getCanvas("transparent", width, height, true); - this.compositeCtx = this.ctx; - this.transparentCanvas = transparentCanvas.canvas; - this.ctx = transparentCanvas.context; - this.ctx.save(); - this.ctx.transform.apply(this.ctx, this.compositeCtx.mozCurrentTransform); - } - - this.ctx.save(); - resetCtxToDefault(this.ctx); - - if (transform) { - this.ctx.transform.apply(this.ctx, transform); - } - - this.ctx.transform.apply(this.ctx, viewport.transform); - this.baseTransform = this.ctx.mozCurrentTransform.slice(); - - if (this.imageLayer) { - this.imageLayer.beginLayout(); - } - }, - - executeOperatorList: function CanvasGraphics_executeOperatorList(operatorList, executionStartIdx, continueCallback, stepper) { - var argsArray = operatorList.argsArray; - var fnArray = operatorList.fnArray; - var i = executionStartIdx || 0; - var argsArrayLen = argsArray.length; - - if (argsArrayLen === i) { - return i; - } - - var chunkOperations = argsArrayLen - i > EXECUTION_STEPS && typeof continueCallback === "function"; - var endTime = chunkOperations ? Date.now() + EXECUTION_TIME : 0; - var steps = 0; - var commonObjs = this.commonObjs; - var objs = this.objs; - var fnId; - - while (true) { - if (stepper !== undefined && i === stepper.nextBreakPoint) { - stepper.breakIt(i, continueCallback); - return i; - } - - fnId = fnArray[i]; - - if (fnId !== _util.OPS.dependency) { - this[fnId].apply(this, argsArray[i]); - } else { - for (const depObjId of argsArray[i]) { - const objsPool = depObjId.startsWith("g_") ? commonObjs : objs; - - if (!objsPool.has(depObjId)) { - objsPool.get(depObjId, continueCallback); - return i; - } - } - } - - i++; - - if (i === argsArrayLen) { - return i; - } - - if (chunkOperations && ++steps > EXECUTION_STEPS) { - if (Date.now() > endTime) { - continueCallback(); - return i; - } - - steps = 0; - } - } - }, - endDrawing: function CanvasGraphics_endDrawing() { - if (this.current.activeSMask !== null) { - this.endSMaskGroup(); - } - - this.ctx.restore(); - - if (this.transparentCanvas) { - this.ctx = this.compositeCtx; - this.ctx.save(); - this.ctx.setTransform(1, 0, 0, 1, 0, 0); - this.ctx.drawImage(this.transparentCanvas, 0, 0); - this.ctx.restore(); - this.transparentCanvas = null; - } - - this.cachedCanvases.clear(); - this.webGLContext.clear(); - - if (this.imageLayer) { - this.imageLayer.endLayout(); - } - }, - setLineWidth: function CanvasGraphics_setLineWidth(width) { - this.current.lineWidth = width; - this.ctx.lineWidth = width; - }, - setLineCap: function CanvasGraphics_setLineCap(style) { - this.ctx.lineCap = LINE_CAP_STYLES[style]; - }, - setLineJoin: function CanvasGraphics_setLineJoin(style) { - this.ctx.lineJoin = LINE_JOIN_STYLES[style]; - }, - setMiterLimit: function CanvasGraphics_setMiterLimit(limit) { - this.ctx.miterLimit = limit; - }, - setDash: function CanvasGraphics_setDash(dashArray, dashPhase) { - var ctx = this.ctx; - - if (ctx.setLineDash !== undefined) { - ctx.setLineDash(dashArray); - ctx.lineDashOffset = dashPhase; - } - }, - - setRenderingIntent(intent) {}, - - setFlatness(flatness) {}, - - setGState: function CanvasGraphics_setGState(states) { - for (var i = 0, ii = states.length; i < ii; i++) { - var state = states[i]; - var key = state[0]; - var value = state[1]; - - switch (key) { - case "LW": - this.setLineWidth(value); - break; - - case "LC": - this.setLineCap(value); - break; - - case "LJ": - this.setLineJoin(value); - break; - - case "ML": - this.setMiterLimit(value); - break; - - case "D": - this.setDash(value[0], value[1]); - break; - - case "RI": - this.setRenderingIntent(value); - break; - - case "FL": - this.setFlatness(value); - break; - - case "Font": - this.setFont(value[0], value[1]); - break; - - case "CA": - this.current.strokeAlpha = state[1]; - break; - - case "ca": - this.current.fillAlpha = state[1]; - this.ctx.globalAlpha = state[1]; - break; - - case "BM": - this.ctx.globalCompositeOperation = value; - break; - - case "SMask": - if (this.current.activeSMask) { - if (this.stateStack.length > 0 && this.stateStack[this.stateStack.length - 1].activeSMask === this.current.activeSMask) { - this.suspendSMaskGroup(); - } else { - this.endSMaskGroup(); - } - } - - this.current.activeSMask = value ? this.tempSMask : null; - - if (this.current.activeSMask) { - this.beginSMaskGroup(); - } - - this.tempSMask = null; - break; - } - } - }, - beginSMaskGroup: function CanvasGraphics_beginSMaskGroup() { - var activeSMask = this.current.activeSMask; - var drawnWidth = activeSMask.canvas.width; - var drawnHeight = activeSMask.canvas.height; - var cacheId = "smaskGroupAt" + this.groupLevel; - var scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight, true); - var currentCtx = this.ctx; - var currentTransform = currentCtx.mozCurrentTransform; - this.ctx.save(); - var groupCtx = scratchCanvas.context; - groupCtx.scale(1 / activeSMask.scaleX, 1 / activeSMask.scaleY); - groupCtx.translate(-activeSMask.offsetX, -activeSMask.offsetY); - groupCtx.transform.apply(groupCtx, currentTransform); - activeSMask.startTransformInverse = groupCtx.mozCurrentTransformInverse; - copyCtxState(currentCtx, groupCtx); - this.ctx = groupCtx; - this.setGState([["BM", "source-over"], ["ca", 1], ["CA", 1]]); - this.groupStack.push(currentCtx); - this.groupLevel++; - }, - suspendSMaskGroup: function CanvasGraphics_endSMaskGroup() { - var groupCtx = this.ctx; - this.groupLevel--; - this.ctx = this.groupStack.pop(); - composeSMask(this.ctx, this.current.activeSMask, groupCtx, this.webGLContext); - this.ctx.restore(); - this.ctx.save(); - copyCtxState(groupCtx, this.ctx); - this.current.resumeSMaskCtx = groupCtx; - - var deltaTransform = _util.Util.transform(this.current.activeSMask.startTransformInverse, groupCtx.mozCurrentTransform); - - this.ctx.transform.apply(this.ctx, deltaTransform); - groupCtx.save(); - groupCtx.setTransform(1, 0, 0, 1, 0, 0); - groupCtx.clearRect(0, 0, groupCtx.canvas.width, groupCtx.canvas.height); - groupCtx.restore(); - }, - resumeSMaskGroup: function CanvasGraphics_endSMaskGroup() { - var groupCtx = this.current.resumeSMaskCtx; - var currentCtx = this.ctx; - this.ctx = groupCtx; - this.groupStack.push(currentCtx); - this.groupLevel++; - }, - endSMaskGroup: function CanvasGraphics_endSMaskGroup() { - var groupCtx = this.ctx; - this.groupLevel--; - this.ctx = this.groupStack.pop(); - composeSMask(this.ctx, this.current.activeSMask, groupCtx, this.webGLContext); - this.ctx.restore(); - copyCtxState(groupCtx, this.ctx); - - var deltaTransform = _util.Util.transform(this.current.activeSMask.startTransformInverse, groupCtx.mozCurrentTransform); - - this.ctx.transform.apply(this.ctx, deltaTransform); - }, - save: function CanvasGraphics_save() { - this.ctx.save(); - var old = this.current; - this.stateStack.push(old); - this.current = old.clone(); - this.current.resumeSMaskCtx = null; - }, - restore: function CanvasGraphics_restore() { - if (this.current.resumeSMaskCtx) { - this.resumeSMaskGroup(); - } - - if (this.current.activeSMask !== null && (this.stateStack.length === 0 || this.stateStack[this.stateStack.length - 1].activeSMask !== this.current.activeSMask)) { - this.endSMaskGroup(); - } - - if (this.stateStack.length !== 0) { - this.current = this.stateStack.pop(); - this.ctx.restore(); - this.pendingClip = null; - this._cachedGetSinglePixelWidth = null; - } - }, - transform: function CanvasGraphics_transform(a, b, c, d, e, f) { - this.ctx.transform(a, b, c, d, e, f); - this._cachedGetSinglePixelWidth = null; - }, - constructPath: function CanvasGraphics_constructPath(ops, args) { - var ctx = this.ctx; - var current = this.current; - var x = current.x, - y = current.y; - - for (var i = 0, j = 0, ii = ops.length; i < ii; i++) { - switch (ops[i] | 0) { - case _util.OPS.rectangle: - x = args[j++]; - y = args[j++]; - var width = args[j++]; - var height = args[j++]; - - if (width === 0) { - width = this.getSinglePixelWidth(); - } - - if (height === 0) { - height = this.getSinglePixelWidth(); - } - - var xw = x + width; - var yh = y + height; - this.ctx.moveTo(x, y); - this.ctx.lineTo(xw, y); - this.ctx.lineTo(xw, yh); - this.ctx.lineTo(x, yh); - this.ctx.lineTo(x, y); - this.ctx.closePath(); - break; - - case _util.OPS.moveTo: - x = args[j++]; - y = args[j++]; - ctx.moveTo(x, y); - break; - - case _util.OPS.lineTo: - x = args[j++]; - y = args[j++]; - ctx.lineTo(x, y); - break; - - case _util.OPS.curveTo: - x = args[j + 4]; - y = args[j + 5]; - ctx.bezierCurveTo(args[j], args[j + 1], args[j + 2], args[j + 3], x, y); - j += 6; - break; - - case _util.OPS.curveTo2: - ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]); - x = args[j + 2]; - y = args[j + 3]; - j += 4; - break; - - case _util.OPS.curveTo3: - x = args[j + 2]; - y = args[j + 3]; - ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y); - j += 4; - break; - - case _util.OPS.closePath: - ctx.closePath(); - break; - } - } - - current.setCurrentPoint(x, y); - }, - closePath: function CanvasGraphics_closePath() { - this.ctx.closePath(); - }, - stroke: function CanvasGraphics_stroke(consumePath) { - consumePath = typeof consumePath !== "undefined" ? consumePath : true; - var ctx = this.ctx; - var strokeColor = this.current.strokeColor; - ctx.globalAlpha = this.current.strokeAlpha; - - if (strokeColor && strokeColor.hasOwnProperty("type") && strokeColor.type === "Pattern") { - ctx.save(); - const transform = ctx.mozCurrentTransform; - - const scale = _util.Util.singularValueDecompose2dScale(transform)[0]; - - ctx.strokeStyle = strokeColor.getPattern(ctx, this); - ctx.lineWidth = Math.max(this.getSinglePixelWidth() * MIN_WIDTH_FACTOR, this.current.lineWidth * scale); - ctx.stroke(); - ctx.restore(); - } else { - ctx.lineWidth = Math.max(this.getSinglePixelWidth() * MIN_WIDTH_FACTOR, this.current.lineWidth); - ctx.stroke(); - } - - if (consumePath) { - this.consumePath(); - } - - ctx.globalAlpha = this.current.fillAlpha; - }, - closeStroke: function CanvasGraphics_closeStroke() { - this.closePath(); - this.stroke(); - }, - fill: function CanvasGraphics_fill(consumePath) { - consumePath = typeof consumePath !== "undefined" ? consumePath : true; - var ctx = this.ctx; - var fillColor = this.current.fillColor; - var isPatternFill = this.current.patternFill; - var needRestore = false; - - if (isPatternFill) { - ctx.save(); - - if (this.baseTransform) { - ctx.setTransform.apply(ctx, this.baseTransform); - } - - ctx.fillStyle = fillColor.getPattern(ctx, this); - needRestore = true; - } - - if (this.pendingEOFill) { - ctx.fill("evenodd"); - this.pendingEOFill = false; - } else { - ctx.fill(); - } - - if (needRestore) { - ctx.restore(); - } - - if (consumePath) { - this.consumePath(); - } - }, - eoFill: function CanvasGraphics_eoFill() { - this.pendingEOFill = true; - this.fill(); - }, - fillStroke: function CanvasGraphics_fillStroke() { - this.fill(false); - this.stroke(false); - this.consumePath(); - }, - eoFillStroke: function CanvasGraphics_eoFillStroke() { - this.pendingEOFill = true; - this.fillStroke(); - }, - closeFillStroke: function CanvasGraphics_closeFillStroke() { - this.closePath(); - this.fillStroke(); - }, - closeEOFillStroke: function CanvasGraphics_closeEOFillStroke() { - this.pendingEOFill = true; - this.closePath(); - this.fillStroke(); - }, - endPath: function CanvasGraphics_endPath() { - this.consumePath(); - }, - clip: function CanvasGraphics_clip() { - this.pendingClip = NORMAL_CLIP; - }, - eoClip: function CanvasGraphics_eoClip() { - this.pendingClip = EO_CLIP; - }, - beginText: function CanvasGraphics_beginText() { - this.current.textMatrix = _util.IDENTITY_MATRIX; - this.current.textMatrixScale = 1; - this.current.x = this.current.lineX = 0; - this.current.y = this.current.lineY = 0; - }, - endText: function CanvasGraphics_endText() { - var paths = this.pendingTextPaths; - var ctx = this.ctx; - - if (paths === undefined) { - ctx.beginPath(); - return; - } - - ctx.save(); - ctx.beginPath(); - - for (var i = 0; i < paths.length; i++) { - var path = paths[i]; - ctx.setTransform.apply(ctx, path.transform); - ctx.translate(path.x, path.y); - path.addToPath(ctx, path.fontSize); - } - - ctx.restore(); - ctx.clip(); - ctx.beginPath(); - delete this.pendingTextPaths; - }, - setCharSpacing: function CanvasGraphics_setCharSpacing(spacing) { - this.current.charSpacing = spacing; - }, - setWordSpacing: function CanvasGraphics_setWordSpacing(spacing) { - this.current.wordSpacing = spacing; - }, - setHScale: function CanvasGraphics_setHScale(scale) { - this.current.textHScale = scale / 100; - }, - setLeading: function CanvasGraphics_setLeading(leading) { - this.current.leading = -leading; - }, - setFont: function CanvasGraphics_setFont(fontRefName, size) { - var fontObj = this.commonObjs.get(fontRefName); - var current = this.current; - - if (!fontObj) { - throw new Error(`Can't find font for ${fontRefName}`); - } - - current.fontMatrix = fontObj.fontMatrix ? fontObj.fontMatrix : _util.FONT_IDENTITY_MATRIX; - - if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) { - (0, _util.warn)("Invalid font matrix for font " + fontRefName); - } - - if (size < 0) { - size = -size; - current.fontDirection = -1; - } else { - current.fontDirection = 1; - } - - this.current.font = fontObj; - this.current.fontSize = size; - - if (fontObj.isType3Font) { - return; - } - - var name = fontObj.loadedName || "sans-serif"; - let bold = "normal"; - - if (fontObj.black) { - bold = "900"; - } else if (fontObj.bold) { - bold = "bold"; - } - - var italic = fontObj.italic ? "italic" : "normal"; - var typeface = `"${name}", ${fontObj.fallbackName}`; - let browserFontSize = size; - - if (size < MIN_FONT_SIZE) { - browserFontSize = MIN_FONT_SIZE; - } else if (size > MAX_FONT_SIZE) { - browserFontSize = MAX_FONT_SIZE; - } - - this.current.fontSizeScale = size / browserFontSize; - this.ctx.font = `${italic} ${bold} ${browserFontSize}px ${typeface}`; - }, - setTextRenderingMode: function CanvasGraphics_setTextRenderingMode(mode) { - this.current.textRenderingMode = mode; - }, - setTextRise: function CanvasGraphics_setTextRise(rise) { - this.current.textRise = rise; - }, - moveText: function CanvasGraphics_moveText(x, y) { - this.current.x = this.current.lineX += x; - this.current.y = this.current.lineY += y; - }, - setLeadingMoveText: function CanvasGraphics_setLeadingMoveText(x, y) { - this.setLeading(-y); - this.moveText(x, y); - }, - setTextMatrix: function CanvasGraphics_setTextMatrix(a, b, c, d, e, f) { - this.current.textMatrix = [a, b, c, d, e, f]; - this.current.textMatrixScale = Math.sqrt(a * a + b * b); - this.current.x = this.current.lineX = 0; - this.current.y = this.current.lineY = 0; - }, - nextLine: function CanvasGraphics_nextLine() { - this.moveText(0, this.current.leading); - }, - - paintChar(character, x, y, patternTransform) { - var ctx = this.ctx; - var current = this.current; - var font = current.font; - var textRenderingMode = current.textRenderingMode; - var fontSize = current.fontSize / current.fontSizeScale; - var fillStrokeMode = textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK; - var isAddToPathSet = !!(textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG); - const patternFill = current.patternFill && font.data; - var addToPath; - - if (font.disableFontFace || isAddToPathSet || patternFill) { - addToPath = font.getPathGenerator(this.commonObjs, character); - } - - if (font.disableFontFace || patternFill) { - ctx.save(); - ctx.translate(x, y); - ctx.beginPath(); - addToPath(ctx, fontSize); - - if (patternTransform) { - ctx.setTransform.apply(ctx, patternTransform); - } - - if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - ctx.fill(); - } - - if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - ctx.stroke(); - } - - ctx.restore(); - } else { - if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - ctx.fillText(character, x, y); - } - - if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - ctx.strokeText(character, x, y); - } - } - - if (isAddToPathSet) { - var paths = this.pendingTextPaths || (this.pendingTextPaths = []); - paths.push({ - transform: ctx.mozCurrentTransform, - x, - y, - fontSize, - addToPath - }); - } - }, - - get isFontSubpixelAAEnabled() { - const { - context: ctx - } = this.cachedCanvases.getCanvas("isFontSubpixelAAEnabled", 10, 10); - ctx.scale(1.5, 1); - ctx.fillText("I", 0, 10); - var data = ctx.getImageData(0, 0, 10, 10).data; - var enabled = false; - - for (var i = 3; i < data.length; i += 4) { - if (data[i] > 0 && data[i] < 255) { - enabled = true; - break; - } - } - - return (0, _util.shadow)(this, "isFontSubpixelAAEnabled", enabled); - }, - - showText: function CanvasGraphics_showText(glyphs) { - var current = this.current; - var font = current.font; - - if (font.isType3Font) { - return this.showType3Text(glyphs); - } - - var fontSize = current.fontSize; - - if (fontSize === 0) { - return undefined; - } - - var ctx = this.ctx; - var fontSizeScale = current.fontSizeScale; - var charSpacing = current.charSpacing; - var wordSpacing = current.wordSpacing; - var fontDirection = current.fontDirection; - var textHScale = current.textHScale * fontDirection; - var glyphsLength = glyphs.length; - var vertical = font.vertical; - var spacingDir = vertical ? 1 : -1; - var defaultVMetrics = font.defaultVMetrics; - var widthAdvanceScale = fontSize * current.fontMatrix[0]; - var simpleFillText = current.textRenderingMode === _util.TextRenderingMode.FILL && !font.disableFontFace && !current.patternFill; - ctx.save(); - let patternTransform; - - if (current.patternFill) { - ctx.save(); - const pattern = current.fillColor.getPattern(ctx, this); - patternTransform = ctx.mozCurrentTransform; - ctx.restore(); - ctx.fillStyle = pattern; - } - - ctx.transform.apply(ctx, current.textMatrix); - ctx.translate(current.x, current.y + current.textRise); - - if (fontDirection > 0) { - ctx.scale(textHScale, -1); - } else { - ctx.scale(textHScale, 1); - } - - var lineWidth = current.lineWidth; - var scale = current.textMatrixScale; - - if (scale === 0 || lineWidth === 0) { - var fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK; - - if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - this._cachedGetSinglePixelWidth = null; - lineWidth = this.getSinglePixelWidth() * MIN_WIDTH_FACTOR; - } - } else { - lineWidth /= scale; - } - - if (fontSizeScale !== 1.0) { - ctx.scale(fontSizeScale, fontSizeScale); - lineWidth /= fontSizeScale; - } - - ctx.lineWidth = lineWidth; - var x = 0, - i; - - for (i = 0; i < glyphsLength; ++i) { - var glyph = glyphs[i]; - - if ((0, _util.isNum)(glyph)) { - x += spacingDir * glyph * fontSize / 1000; - continue; - } - - var restoreNeeded = false; - var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing; - var character = glyph.fontChar; - var accent = glyph.accent; - var scaledX, scaledY, scaledAccentX, scaledAccentY; - var width = glyph.width; - - if (vertical) { - var vmetric, vx, vy; - vmetric = glyph.vmetric || defaultVMetrics; - vx = glyph.vmetric ? vmetric[1] : width * 0.5; - vx = -vx * widthAdvanceScale; - vy = vmetric[2] * widthAdvanceScale; - width = vmetric ? -vmetric[0] : width; - scaledX = vx / fontSizeScale; - scaledY = (x + vy) / fontSizeScale; - } else { - scaledX = x / fontSizeScale; - scaledY = 0; - } - - if (font.remeasure && width > 0) { - var measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale; - - if (width < measuredWidth && this.isFontSubpixelAAEnabled) { - var characterScaleX = width / measuredWidth; - restoreNeeded = true; - ctx.save(); - ctx.scale(characterScaleX, 1); - scaledX /= characterScaleX; - } else if (width !== measuredWidth) { - scaledX += (width - measuredWidth) / 2000 * fontSize / fontSizeScale; - } - } - - if (glyph.isInFont || font.missingFile) { - if (simpleFillText && !accent) { - ctx.fillText(character, scaledX, scaledY); - } else { - this.paintChar(character, scaledX, scaledY, patternTransform); - - if (accent) { - scaledAccentX = scaledX + accent.offset.x / fontSizeScale; - scaledAccentY = scaledY - accent.offset.y / fontSizeScale; - this.paintChar(accent.fontChar, scaledAccentX, scaledAccentY, patternTransform); - } - } - } - - var charWidth; - - if (vertical) { - charWidth = width * widthAdvanceScale - spacing * fontDirection; - } else { - charWidth = width * widthAdvanceScale + spacing * fontDirection; - } - - x += charWidth; - - if (restoreNeeded) { - ctx.restore(); - } - } - - if (vertical) { - current.y -= x; - } else { - current.x += x * textHScale; - } - - ctx.restore(); - }, - showType3Text: function CanvasGraphics_showType3Text(glyphs) { - var ctx = this.ctx; - var current = this.current; - var font = current.font; - var fontSize = current.fontSize; - var fontDirection = current.fontDirection; - var spacingDir = font.vertical ? 1 : -1; - var charSpacing = current.charSpacing; - var wordSpacing = current.wordSpacing; - var textHScale = current.textHScale * fontDirection; - var fontMatrix = current.fontMatrix || _util.FONT_IDENTITY_MATRIX; - var glyphsLength = glyphs.length; - var isTextInvisible = current.textRenderingMode === _util.TextRenderingMode.INVISIBLE; - var i, glyph, width, spacingLength; - - if (isTextInvisible || fontSize === 0) { - return; - } - - this._cachedGetSinglePixelWidth = null; - ctx.save(); - ctx.transform.apply(ctx, current.textMatrix); - ctx.translate(current.x, current.y); - ctx.scale(textHScale, fontDirection); - - for (i = 0; i < glyphsLength; ++i) { - glyph = glyphs[i]; - - if ((0, _util.isNum)(glyph)) { - spacingLength = spacingDir * glyph * fontSize / 1000; - this.ctx.translate(spacingLength, 0); - current.x += spacingLength * textHScale; - continue; - } - - var spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing; - var operatorList = font.charProcOperatorList[glyph.operatorListId]; - - if (!operatorList) { - (0, _util.warn)(`Type3 character "${glyph.operatorListId}" is not available.`); - continue; - } - - this.processingType3 = glyph; - this.save(); - ctx.scale(fontSize, fontSize); - ctx.transform.apply(ctx, fontMatrix); - this.executeOperatorList(operatorList); - this.restore(); - - var transformed = _util.Util.applyTransform([glyph.width, 0], fontMatrix); - - width = transformed[0] * fontSize + spacing; - ctx.translate(width, 0); - current.x += width * textHScale; - } - - ctx.restore(); - this.processingType3 = null; - }, - setCharWidth: function CanvasGraphics_setCharWidth(xWidth, yWidth) {}, - setCharWidthAndBounds: function CanvasGraphics_setCharWidthAndBounds(xWidth, yWidth, llx, lly, urx, ury) { - this.ctx.rect(llx, lly, urx - llx, ury - lly); - this.clip(); - this.endPath(); - }, - getColorN_Pattern: function CanvasGraphics_getColorN_Pattern(IR) { - var pattern; - - if (IR[0] === "TilingPattern") { - var color = IR[1]; - var baseTransform = this.baseTransform || this.ctx.mozCurrentTransform.slice(); - var canvasGraphicsFactory = { - createCanvasGraphics: ctx => { - return new CanvasGraphics(ctx, this.commonObjs, this.objs, this.canvasFactory, this.webGLContext); - } - }; - pattern = new _pattern_helper.TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform); - } else { - pattern = (0, _pattern_helper.getShadingPatternFromIR)(IR); - } - - return pattern; - }, - setStrokeColorN: function CanvasGraphics_setStrokeColorN() { - this.current.strokeColor = this.getColorN_Pattern(arguments); - }, - setFillColorN: function CanvasGraphics_setFillColorN() { - this.current.fillColor = this.getColorN_Pattern(arguments); - this.current.patternFill = true; - }, - setStrokeRGBColor: function CanvasGraphics_setStrokeRGBColor(r, g, b) { - var color = _util.Util.makeCssRgb(r, g, b); - - this.ctx.strokeStyle = color; - this.current.strokeColor = color; - }, - setFillRGBColor: function CanvasGraphics_setFillRGBColor(r, g, b) { - var color = _util.Util.makeCssRgb(r, g, b); - - this.ctx.fillStyle = color; - this.current.fillColor = color; - this.current.patternFill = false; - }, - shadingFill: function CanvasGraphics_shadingFill(patternIR) { - var ctx = this.ctx; - this.save(); - var pattern = (0, _pattern_helper.getShadingPatternFromIR)(patternIR); - ctx.fillStyle = pattern.getPattern(ctx, this, true); - var inv = ctx.mozCurrentTransformInverse; - - if (inv) { - var canvas = ctx.canvas; - var width = canvas.width; - var height = canvas.height; - - var bl = _util.Util.applyTransform([0, 0], inv); - - var br = _util.Util.applyTransform([0, height], inv); - - var ul = _util.Util.applyTransform([width, 0], inv); - - var ur = _util.Util.applyTransform([width, height], inv); - - var x0 = Math.min(bl[0], br[0], ul[0], ur[0]); - var y0 = Math.min(bl[1], br[1], ul[1], ur[1]); - var x1 = Math.max(bl[0], br[0], ul[0], ur[0]); - var y1 = Math.max(bl[1], br[1], ul[1], ur[1]); - this.ctx.fillRect(x0, y0, x1 - x0, y1 - y0); - } else { - this.ctx.fillRect(-1e10, -1e10, 2e10, 2e10); - } - - this.restore(); - }, - beginInlineImage: function CanvasGraphics_beginInlineImage() { - (0, _util.unreachable)("Should not call beginInlineImage"); - }, - beginImageData: function CanvasGraphics_beginImageData() { - (0, _util.unreachable)("Should not call beginImageData"); - }, - paintFormXObjectBegin: function CanvasGraphics_paintFormXObjectBegin(matrix, bbox) { - this.save(); - this.baseTransformStack.push(this.baseTransform); - - if (Array.isArray(matrix) && matrix.length === 6) { - this.transform.apply(this, matrix); - } - - this.baseTransform = this.ctx.mozCurrentTransform; - - if (bbox) { - var width = bbox[2] - bbox[0]; - var height = bbox[3] - bbox[1]; - this.ctx.rect(bbox[0], bbox[1], width, height); - this.clip(); - this.endPath(); - } - }, - paintFormXObjectEnd: function CanvasGraphics_paintFormXObjectEnd() { - this.restore(); - this.baseTransform = this.baseTransformStack.pop(); - }, - beginGroup: function CanvasGraphics_beginGroup(group) { - this.save(); - var currentCtx = this.ctx; - - if (!group.isolated) { - (0, _util.info)("TODO: Support non-isolated groups."); - } - - if (group.knockout) { - (0, _util.warn)("Knockout groups not supported."); - } - - var currentTransform = currentCtx.mozCurrentTransform; - - if (group.matrix) { - currentCtx.transform.apply(currentCtx, group.matrix); - } - - if (!group.bbox) { - throw new Error("Bounding box is required."); - } - - var bounds = _util.Util.getAxialAlignedBoundingBox(group.bbox, currentCtx.mozCurrentTransform); - - var canvasBounds = [0, 0, currentCtx.canvas.width, currentCtx.canvas.height]; - bounds = _util.Util.intersect(bounds, canvasBounds) || [0, 0, 0, 0]; - var offsetX = Math.floor(bounds[0]); - var offsetY = Math.floor(bounds[1]); - var drawnWidth = Math.max(Math.ceil(bounds[2]) - offsetX, 1); - var drawnHeight = Math.max(Math.ceil(bounds[3]) - offsetY, 1); - var scaleX = 1, - scaleY = 1; - - if (drawnWidth > MAX_GROUP_SIZE) { - scaleX = drawnWidth / MAX_GROUP_SIZE; - drawnWidth = MAX_GROUP_SIZE; - } - - if (drawnHeight > MAX_GROUP_SIZE) { - scaleY = drawnHeight / MAX_GROUP_SIZE; - drawnHeight = MAX_GROUP_SIZE; - } - - var cacheId = "groupAt" + this.groupLevel; - - if (group.smask) { - cacheId += "_smask_" + this.smaskCounter++ % 2; - } - - var scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight, true); - var groupCtx = scratchCanvas.context; - groupCtx.scale(1 / scaleX, 1 / scaleY); - groupCtx.translate(-offsetX, -offsetY); - groupCtx.transform.apply(groupCtx, currentTransform); - - if (group.smask) { - this.smaskStack.push({ - canvas: scratchCanvas.canvas, - context: groupCtx, - offsetX, - offsetY, - scaleX, - scaleY, - subtype: group.smask.subtype, - backdrop: group.smask.backdrop, - transferMap: group.smask.transferMap || null, - startTransformInverse: null - }); - } else { - currentCtx.setTransform(1, 0, 0, 1, 0, 0); - currentCtx.translate(offsetX, offsetY); - currentCtx.scale(scaleX, scaleY); - } - - copyCtxState(currentCtx, groupCtx); - this.ctx = groupCtx; - this.setGState([["BM", "source-over"], ["ca", 1], ["CA", 1]]); - this.groupStack.push(currentCtx); - this.groupLevel++; - this.current.activeSMask = null; - }, - endGroup: function CanvasGraphics_endGroup(group) { - this.groupLevel--; - var groupCtx = this.ctx; - this.ctx = this.groupStack.pop(); - - if (this.ctx.imageSmoothingEnabled !== undefined) { - this.ctx.imageSmoothingEnabled = false; - } else { - this.ctx.mozImageSmoothingEnabled = false; - } - - if (group.smask) { - this.tempSMask = this.smaskStack.pop(); - } else { - this.ctx.drawImage(groupCtx.canvas, 0, 0); - } - - this.restore(); - }, - beginAnnotations: function CanvasGraphics_beginAnnotations() { - this.save(); - - if (this.baseTransform) { - this.ctx.setTransform.apply(this.ctx, this.baseTransform); - } - }, - endAnnotations: function CanvasGraphics_endAnnotations() { - this.restore(); - }, - beginAnnotation: function CanvasGraphics_beginAnnotation(rect, transform, matrix) { - this.save(); - resetCtxToDefault(this.ctx); - this.current = new CanvasExtraState(); - - if (Array.isArray(rect) && rect.length === 4) { - var width = rect[2] - rect[0]; - var height = rect[3] - rect[1]; - this.ctx.rect(rect[0], rect[1], width, height); - this.clip(); - this.endPath(); - } - - this.transform.apply(this, transform); - this.transform.apply(this, matrix); - }, - endAnnotation: function CanvasGraphics_endAnnotation() { - this.restore(); - }, - paintJpegXObject: function CanvasGraphics_paintJpegXObject(objId, w, h) { - const domImage = this.processingType3 ? this.commonObjs.get(objId) : this.objs.get(objId); - - if (!domImage) { - (0, _util.warn)("Dependent image isn't ready yet"); - return; - } - - this.save(); - var ctx = this.ctx; - ctx.scale(1 / w, -1 / h); - ctx.drawImage(domImage, 0, 0, domImage.width, domImage.height, 0, -h, w, h); - - if (this.imageLayer) { - var currentTransform = ctx.mozCurrentTransformInverse; - var position = this.getCanvasPosition(0, 0); - this.imageLayer.appendImage({ - objId, - left: position[0], - top: position[1], - width: w / currentTransform[0], - height: h / currentTransform[3] - }); - } - - this.restore(); - }, - paintImageMaskXObject: function CanvasGraphics_paintImageMaskXObject(img) { - var ctx = this.ctx; - var width = img.width, - height = img.height; - var fillColor = this.current.fillColor; - var isPatternFill = this.current.patternFill; - var glyph = this.processingType3; - - if (COMPILE_TYPE3_GLYPHS && glyph && glyph.compiled === undefined) { - if (width <= MAX_SIZE_TO_COMPILE && height <= MAX_SIZE_TO_COMPILE) { - glyph.compiled = compileType3Glyph({ - data: img.data, - width, - height - }); - } else { - glyph.compiled = null; - } - } - - if (glyph && glyph.compiled) { - glyph.compiled(ctx); - return; - } - - var maskCanvas = this.cachedCanvases.getCanvas("maskCanvas", width, height); - var maskCtx = maskCanvas.context; - maskCtx.save(); - putBinaryImageMask(maskCtx, img); - maskCtx.globalCompositeOperation = "source-in"; - maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this) : fillColor; - maskCtx.fillRect(0, 0, width, height); - maskCtx.restore(); - this.paintInlineImageXObject(maskCanvas.canvas); - }, - paintImageMaskXObjectRepeat: function CanvasGraphics_paintImageMaskXObjectRepeat(imgData, scaleX, scaleY, positions) { - var width = imgData.width; - var height = imgData.height; - var fillColor = this.current.fillColor; - var isPatternFill = this.current.patternFill; - var maskCanvas = this.cachedCanvases.getCanvas("maskCanvas", width, height); - var maskCtx = maskCanvas.context; - maskCtx.save(); - putBinaryImageMask(maskCtx, imgData); - maskCtx.globalCompositeOperation = "source-in"; - maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this) : fillColor; - maskCtx.fillRect(0, 0, width, height); - maskCtx.restore(); - var ctx = this.ctx; - - for (var i = 0, ii = positions.length; i < ii; i += 2) { - ctx.save(); - ctx.transform(scaleX, 0, 0, scaleY, positions[i], positions[i + 1]); - ctx.scale(1, -1); - ctx.drawImage(maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1); - ctx.restore(); - } - }, - paintImageMaskXObjectGroup: function CanvasGraphics_paintImageMaskXObjectGroup(images) { - var ctx = this.ctx; - var fillColor = this.current.fillColor; - var isPatternFill = this.current.patternFill; - - for (var i = 0, ii = images.length; i < ii; i++) { - var image = images[i]; - var width = image.width, - height = image.height; - var maskCanvas = this.cachedCanvases.getCanvas("maskCanvas", width, height); - var maskCtx = maskCanvas.context; - maskCtx.save(); - putBinaryImageMask(maskCtx, image); - maskCtx.globalCompositeOperation = "source-in"; - maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this) : fillColor; - maskCtx.fillRect(0, 0, width, height); - maskCtx.restore(); - ctx.save(); - ctx.transform.apply(ctx, image.transform); - ctx.scale(1, -1); - ctx.drawImage(maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1); - ctx.restore(); - } - }, - paintImageXObject: function CanvasGraphics_paintImageXObject(objId) { - const imgData = this.processingType3 ? this.commonObjs.get(objId) : this.objs.get(objId); - - if (!imgData) { - (0, _util.warn)("Dependent image isn't ready yet"); - return; - } - - this.paintInlineImageXObject(imgData); - }, - paintImageXObjectRepeat: function CanvasGraphics_paintImageXObjectRepeat(objId, scaleX, scaleY, positions) { - const imgData = this.processingType3 ? this.commonObjs.get(objId) : this.objs.get(objId); - - if (!imgData) { - (0, _util.warn)("Dependent image isn't ready yet"); - return; - } - - var width = imgData.width; - var height = imgData.height; - var map = []; - - for (var i = 0, ii = positions.length; i < ii; i += 2) { - map.push({ - transform: [scaleX, 0, 0, scaleY, positions[i], positions[i + 1]], - x: 0, - y: 0, - w: width, - h: height - }); - } - - this.paintInlineImageXObjectGroup(imgData, map); - }, - paintInlineImageXObject: function CanvasGraphics_paintInlineImageXObject(imgData) { - var width = imgData.width; - var height = imgData.height; - var ctx = this.ctx; - this.save(); - ctx.scale(1 / width, -1 / height); - var currentTransform = ctx.mozCurrentTransformInverse; - var a = currentTransform[0], - b = currentTransform[1]; - var widthScale = Math.max(Math.sqrt(a * a + b * b), 1); - var c = currentTransform[2], - d = currentTransform[3]; - var heightScale = Math.max(Math.sqrt(c * c + d * d), 1); - var imgToPaint, tmpCanvas; - - if (typeof HTMLElement === "function" && imgData instanceof HTMLElement || !imgData.data) { - imgToPaint = imgData; - } else { - tmpCanvas = this.cachedCanvases.getCanvas("inlineImage", width, height); - var tmpCtx = tmpCanvas.context; - putBinaryImageData(tmpCtx, imgData); - imgToPaint = tmpCanvas.canvas; - } - - var paintWidth = width, - paintHeight = height; - var tmpCanvasId = "prescale1"; - - while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) { - var newWidth = paintWidth, - newHeight = paintHeight; - - if (widthScale > 2 && paintWidth > 1) { - newWidth = Math.ceil(paintWidth / 2); - widthScale /= paintWidth / newWidth; - } - - if (heightScale > 2 && paintHeight > 1) { - newHeight = Math.ceil(paintHeight / 2); - heightScale /= paintHeight / newHeight; - } - - tmpCanvas = this.cachedCanvases.getCanvas(tmpCanvasId, newWidth, newHeight); - tmpCtx = tmpCanvas.context; - tmpCtx.clearRect(0, 0, newWidth, newHeight); - tmpCtx.drawImage(imgToPaint, 0, 0, paintWidth, paintHeight, 0, 0, newWidth, newHeight); - imgToPaint = tmpCanvas.canvas; - paintWidth = newWidth; - paintHeight = newHeight; - tmpCanvasId = tmpCanvasId === "prescale1" ? "prescale2" : "prescale1"; - } - - ctx.drawImage(imgToPaint, 0, 0, paintWidth, paintHeight, 0, -height, width, height); - - if (this.imageLayer) { - var position = this.getCanvasPosition(0, -height); - this.imageLayer.appendImage({ - imgData, - left: position[0], - top: position[1], - width: width / currentTransform[0], - height: height / currentTransform[3] - }); - } - - this.restore(); - }, - paintInlineImageXObjectGroup: function CanvasGraphics_paintInlineImageXObjectGroup(imgData, map) { - var ctx = this.ctx; - var w = imgData.width; - var h = imgData.height; - var tmpCanvas = this.cachedCanvases.getCanvas("inlineImage", w, h); - var tmpCtx = tmpCanvas.context; - putBinaryImageData(tmpCtx, imgData); - - for (var i = 0, ii = map.length; i < ii; i++) { - var entry = map[i]; - ctx.save(); - ctx.transform.apply(ctx, entry.transform); - ctx.scale(1, -1); - ctx.drawImage(tmpCanvas.canvas, entry.x, entry.y, entry.w, entry.h, 0, -1, 1, 1); - - if (this.imageLayer) { - var position = this.getCanvasPosition(entry.x, entry.y); - this.imageLayer.appendImage({ - imgData, - left: position[0], - top: position[1], - width: w, - height: h - }); - } - - ctx.restore(); - } - }, - paintSolidColorImageMask: function CanvasGraphics_paintSolidColorImageMask() { - this.ctx.fillRect(0, 0, 1, 1); - }, - paintXObject: function CanvasGraphics_paintXObject() { - (0, _util.warn)("Unsupported 'paintXObject' command."); - }, - markPoint: function CanvasGraphics_markPoint(tag) {}, - markPointProps: function CanvasGraphics_markPointProps(tag, properties) {}, - beginMarkedContent: function CanvasGraphics_beginMarkedContent(tag) {}, - beginMarkedContentProps: function CanvasGraphics_beginMarkedContentProps(tag, properties) {}, - endMarkedContent: function CanvasGraphics_endMarkedContent() {}, - beginCompat: function CanvasGraphics_beginCompat() {}, - endCompat: function CanvasGraphics_endCompat() {}, - consumePath: function CanvasGraphics_consumePath() { - var ctx = this.ctx; - - if (this.pendingClip) { - if (this.pendingClip === EO_CLIP) { - ctx.clip("evenodd"); - } else { - ctx.clip(); - } - - this.pendingClip = null; - } - - ctx.beginPath(); - }, - - getSinglePixelWidth(scale) { - if (this._cachedGetSinglePixelWidth === null) { - const inverse = this.ctx.mozCurrentTransformInverse; - this._cachedGetSinglePixelWidth = Math.sqrt(Math.max(inverse[0] * inverse[0] + inverse[1] * inverse[1], inverse[2] * inverse[2] + inverse[3] * inverse[3])); - } - - return this._cachedGetSinglePixelWidth; - }, - - getCanvasPosition: function CanvasGraphics_getCanvasPosition(x, y) { - var transform = this.ctx.mozCurrentTransform; - return [transform[0] * x + transform[2] * y + transform[4], transform[1] * x + transform[3] * y + transform[5]]; - } - }; - - for (var op in _util.OPS) { - CanvasGraphics.prototype[_util.OPS[op]] = CanvasGraphics.prototype[op]; - } - - return CanvasGraphics; -}(); - -exports.CanvasGraphics = CanvasGraphics; - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getShadingPatternFromIR = getShadingPatternFromIR; -exports.TilingPattern = void 0; - -var _util = __w_pdfjs_require__(1); - -var ShadingIRs = {}; - -function applyBoundingBox(ctx, bbox) { - if (!bbox || typeof Path2D === "undefined") { - return; - } - - const width = bbox[2] - bbox[0]; - const height = bbox[3] - bbox[1]; - const region = new Path2D(); - region.rect(bbox[0], bbox[1], width, height); - ctx.clip(region); -} - -ShadingIRs.RadialAxial = { - fromIR: function RadialAxial_fromIR(raw) { - var type = raw[1]; - var bbox = raw[2]; - var colorStops = raw[3]; - var p0 = raw[4]; - var p1 = raw[5]; - var r0 = raw[6]; - var r1 = raw[7]; - return { - type: "Pattern", - getPattern: function RadialAxial_getPattern(ctx) { - applyBoundingBox(ctx, bbox); - var grad; - - if (type === "axial") { - grad = ctx.createLinearGradient(p0[0], p0[1], p1[0], p1[1]); - } else if (type === "radial") { - grad = ctx.createRadialGradient(p0[0], p0[1], r0, p1[0], p1[1], r1); - } - - for (var i = 0, ii = colorStops.length; i < ii; ++i) { - var c = colorStops[i]; - grad.addColorStop(c[0], c[1]); - } - - return grad; - } - }; - } -}; - -var createMeshCanvas = function createMeshCanvasClosure() { - function drawTriangle(data, context, p1, p2, p3, c1, c2, c3) { - var coords = context.coords, - colors = context.colors; - var bytes = data.data, - rowSize = data.width * 4; - var tmp; - - if (coords[p1 + 1] > coords[p2 + 1]) { - tmp = p1; - p1 = p2; - p2 = tmp; - tmp = c1; - c1 = c2; - c2 = tmp; - } - - if (coords[p2 + 1] > coords[p3 + 1]) { - tmp = p2; - p2 = p3; - p3 = tmp; - tmp = c2; - c2 = c3; - c3 = tmp; - } - - if (coords[p1 + 1] > coords[p2 + 1]) { - tmp = p1; - p1 = p2; - p2 = tmp; - tmp = c1; - c1 = c2; - c2 = tmp; - } - - var x1 = (coords[p1] + context.offsetX) * context.scaleX; - var y1 = (coords[p1 + 1] + context.offsetY) * context.scaleY; - var x2 = (coords[p2] + context.offsetX) * context.scaleX; - var y2 = (coords[p2 + 1] + context.offsetY) * context.scaleY; - var x3 = (coords[p3] + context.offsetX) * context.scaleX; - var y3 = (coords[p3 + 1] + context.offsetY) * context.scaleY; - - if (y1 >= y3) { - return; - } - - var c1r = colors[c1], - c1g = colors[c1 + 1], - c1b = colors[c1 + 2]; - var c2r = colors[c2], - c2g = colors[c2 + 1], - c2b = colors[c2 + 2]; - var c3r = colors[c3], - c3g = colors[c3 + 1], - c3b = colors[c3 + 2]; - var minY = Math.round(y1), - maxY = Math.round(y3); - var xa, car, cag, cab; - var xb, cbr, cbg, cbb; - - for (var y = minY; y <= maxY; y++) { - if (y < y2) { - let k; - - if (y < y1) { - k = 0; - } else if (y1 === y2) { - k = 1; - } else { - k = (y1 - y) / (y1 - y2); - } - - xa = x1 - (x1 - x2) * k; - car = c1r - (c1r - c2r) * k; - cag = c1g - (c1g - c2g) * k; - cab = c1b - (c1b - c2b) * k; - } else { - let k; - - if (y > y3) { - k = 1; - } else if (y2 === y3) { - k = 0; - } else { - k = (y2 - y) / (y2 - y3); - } - - xa = x2 - (x2 - x3) * k; - car = c2r - (c2r - c3r) * k; - cag = c2g - (c2g - c3g) * k; - cab = c2b - (c2b - c3b) * k; - } - - let k; - - if (y < y1) { - k = 0; - } else if (y > y3) { - k = 1; - } else { - k = (y1 - y) / (y1 - y3); - } - - xb = x1 - (x1 - x3) * k; - cbr = c1r - (c1r - c3r) * k; - cbg = c1g - (c1g - c3g) * k; - cbb = c1b - (c1b - c3b) * k; - var x1_ = Math.round(Math.min(xa, xb)); - var x2_ = Math.round(Math.max(xa, xb)); - var j = rowSize * y + x1_ * 4; - - for (var x = x1_; x <= x2_; x++) { - let k = (xa - x) / (xa - xb); - - if (k < 0) { - k = 0; - } else if (k > 1) { - k = 1; - } - - bytes[j++] = car - (car - cbr) * k | 0; - bytes[j++] = cag - (cag - cbg) * k | 0; - bytes[j++] = cab - (cab - cbb) * k | 0; - bytes[j++] = 255; - } - } - } - - function drawFigure(data, figure, context) { - var ps = figure.coords; - var cs = figure.colors; - var i, ii; - - switch (figure.type) { - case "lattice": - var verticesPerRow = figure.verticesPerRow; - var rows = Math.floor(ps.length / verticesPerRow) - 1; - var cols = verticesPerRow - 1; - - for (i = 0; i < rows; i++) { - var q = i * verticesPerRow; - - for (var j = 0; j < cols; j++, q++) { - drawTriangle(data, context, ps[q], ps[q + 1], ps[q + verticesPerRow], cs[q], cs[q + 1], cs[q + verticesPerRow]); - drawTriangle(data, context, ps[q + verticesPerRow + 1], ps[q + 1], ps[q + verticesPerRow], cs[q + verticesPerRow + 1], cs[q + 1], cs[q + verticesPerRow]); - } - } - - break; - - case "triangles": - for (i = 0, ii = ps.length; i < ii; i += 3) { - drawTriangle(data, context, ps[i], ps[i + 1], ps[i + 2], cs[i], cs[i + 1], cs[i + 2]); - } - - break; - - default: - throw new Error("illegal figure"); - } - } - - function createMeshCanvas(bounds, combinesScale, coords, colors, figures, backgroundColor, cachedCanvases, webGLContext) { - var EXPECTED_SCALE = 1.1; - var MAX_PATTERN_SIZE = 3000; - var BORDER_SIZE = 2; - var offsetX = Math.floor(bounds[0]); - var offsetY = Math.floor(bounds[1]); - var boundsWidth = Math.ceil(bounds[2]) - offsetX; - var boundsHeight = Math.ceil(bounds[3]) - offsetY; - var width = Math.min(Math.ceil(Math.abs(boundsWidth * combinesScale[0] * EXPECTED_SCALE)), MAX_PATTERN_SIZE); - var height = Math.min(Math.ceil(Math.abs(boundsHeight * combinesScale[1] * EXPECTED_SCALE)), MAX_PATTERN_SIZE); - var scaleX = boundsWidth / width; - var scaleY = boundsHeight / height; - var context = { - coords, - colors, - offsetX: -offsetX, - offsetY: -offsetY, - scaleX: 1 / scaleX, - scaleY: 1 / scaleY - }; - var paddedWidth = width + BORDER_SIZE * 2; - var paddedHeight = height + BORDER_SIZE * 2; - var canvas, tmpCanvas, i, ii; - - if (webGLContext.isEnabled) { - canvas = webGLContext.drawFigures({ - width, - height, - backgroundColor, - figures, - context - }); - tmpCanvas = cachedCanvases.getCanvas("mesh", paddedWidth, paddedHeight, false); - tmpCanvas.context.drawImage(canvas, BORDER_SIZE, BORDER_SIZE); - canvas = tmpCanvas.canvas; - } else { - tmpCanvas = cachedCanvases.getCanvas("mesh", paddedWidth, paddedHeight, false); - var tmpCtx = tmpCanvas.context; - var data = tmpCtx.createImageData(width, height); - - if (backgroundColor) { - var bytes = data.data; - - for (i = 0, ii = bytes.length; i < ii; i += 4) { - bytes[i] = backgroundColor[0]; - bytes[i + 1] = backgroundColor[1]; - bytes[i + 2] = backgroundColor[2]; - bytes[i + 3] = 255; - } - } - - for (i = 0; i < figures.length; i++) { - drawFigure(data, figures[i], context); - } - - tmpCtx.putImageData(data, BORDER_SIZE, BORDER_SIZE); - canvas = tmpCanvas.canvas; - } - - return { - canvas, - offsetX: offsetX - BORDER_SIZE * scaleX, - offsetY: offsetY - BORDER_SIZE * scaleY, - scaleX, - scaleY - }; - } - - return createMeshCanvas; -}(); - -ShadingIRs.Mesh = { - fromIR: function Mesh_fromIR(raw) { - var coords = raw[2]; - var colors = raw[3]; - var figures = raw[4]; - var bounds = raw[5]; - var matrix = raw[6]; - var bbox = raw[7]; - var background = raw[8]; - return { - type: "Pattern", - getPattern: function Mesh_getPattern(ctx, owner, shadingFill) { - applyBoundingBox(ctx, bbox); - var scale; - - if (shadingFill) { - scale = _util.Util.singularValueDecompose2dScale(ctx.mozCurrentTransform); - } else { - scale = _util.Util.singularValueDecompose2dScale(owner.baseTransform); - - if (matrix) { - var matrixScale = _util.Util.singularValueDecompose2dScale(matrix); - - scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]]; - } - } - - var temporaryPatternCanvas = createMeshCanvas(bounds, scale, coords, colors, figures, shadingFill ? null : background, owner.cachedCanvases, owner.webGLContext); - - if (!shadingFill) { - ctx.setTransform.apply(ctx, owner.baseTransform); - - if (matrix) { - ctx.transform.apply(ctx, matrix); - } - } - - ctx.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY); - ctx.scale(temporaryPatternCanvas.scaleX, temporaryPatternCanvas.scaleY); - return ctx.createPattern(temporaryPatternCanvas.canvas, "no-repeat"); - } - }; - } -}; -ShadingIRs.Dummy = { - fromIR: function Dummy_fromIR() { - return { - type: "Pattern", - getPattern: function Dummy_fromIR_getPattern() { - return "hotpink"; - } - }; - } -}; - -function getShadingPatternFromIR(raw) { - var shadingIR = ShadingIRs[raw[0]]; - - if (!shadingIR) { - throw new Error(`Unknown IR type: ${raw[0]}`); - } - - return shadingIR.fromIR(raw); -} - -var TilingPattern = function TilingPatternClosure() { - var PaintType = { - COLORED: 1, - UNCOLORED: 2 - }; - var MAX_PATTERN_SIZE = 3000; - - function TilingPattern(IR, color, ctx, canvasGraphicsFactory, baseTransform) { - this.operatorList = IR[2]; - this.matrix = IR[3] || [1, 0, 0, 1, 0, 0]; - this.bbox = IR[4]; - this.xstep = IR[5]; - this.ystep = IR[6]; - this.paintType = IR[7]; - this.tilingType = IR[8]; - this.color = color; - this.canvasGraphicsFactory = canvasGraphicsFactory; - this.baseTransform = baseTransform; - this.type = "Pattern"; - this.ctx = ctx; - } - - TilingPattern.prototype = { - createPatternCanvas: function TilinPattern_createPatternCanvas(owner) { - var operatorList = this.operatorList; - var bbox = this.bbox; - var xstep = this.xstep; - var ystep = this.ystep; - var paintType = this.paintType; - var tilingType = this.tilingType; - var color = this.color; - var canvasGraphicsFactory = this.canvasGraphicsFactory; - (0, _util.info)("TilingType: " + tilingType); - var x0 = bbox[0], - y0 = bbox[1], - x1 = bbox[2], - y1 = bbox[3]; - - var matrixScale = _util.Util.singularValueDecompose2dScale(this.matrix); - - var curMatrixScale = _util.Util.singularValueDecompose2dScale(this.baseTransform); - - var combinedScale = [matrixScale[0] * curMatrixScale[0], matrixScale[1] * curMatrixScale[1]]; - var dimx = this.getSizeAndScale(xstep, this.ctx.canvas.width, combinedScale[0]); - var dimy = this.getSizeAndScale(ystep, this.ctx.canvas.height, combinedScale[1]); - var tmpCanvas = owner.cachedCanvases.getCanvas("pattern", dimx.size, dimy.size, true); - var tmpCtx = tmpCanvas.context; - var graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx); - graphics.groupLevel = owner.groupLevel; - this.setFillAndStrokeStyleToContext(graphics, paintType, color); - graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0); - graphics.transform(1, 0, 0, 1, -x0, -y0); - this.clipBbox(graphics, bbox, x0, y0, x1, y1); - graphics.executeOperatorList(operatorList); - this.ctx.transform(1, 0, 0, 1, x0, y0); - this.ctx.scale(1 / dimx.scale, 1 / dimy.scale); - return tmpCanvas.canvas; - }, - getSizeAndScale: function TilingPattern_getSizeAndScale(step, realOutputSize, scale) { - step = Math.abs(step); - var maxSize = Math.max(MAX_PATTERN_SIZE, realOutputSize); - var size = Math.ceil(step * scale); - - if (size >= maxSize) { - size = maxSize; - } else { - scale = size / step; - } - - return { - scale, - size - }; - }, - clipBbox: function clipBbox(graphics, bbox, x0, y0, x1, y1) { - if (Array.isArray(bbox) && bbox.length === 4) { - var bboxWidth = x1 - x0; - var bboxHeight = y1 - y0; - graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight); - graphics.clip(); - graphics.endPath(); - } - }, - setFillAndStrokeStyleToContext: function setFillAndStrokeStyleToContext(graphics, paintType, color) { - const context = graphics.ctx, - current = graphics.current; - - switch (paintType) { - case PaintType.COLORED: - var ctx = this.ctx; - context.fillStyle = ctx.fillStyle; - context.strokeStyle = ctx.strokeStyle; - current.fillColor = ctx.fillStyle; - current.strokeColor = ctx.strokeStyle; - break; - - case PaintType.UNCOLORED: - var cssColor = _util.Util.makeCssRgb(color[0], color[1], color[2]); - - context.fillStyle = cssColor; - context.strokeStyle = cssColor; - current.fillColor = cssColor; - current.strokeColor = cssColor; - break; - - default: - throw new _util.FormatError(`Unsupported paint type: ${paintType}`); - } - }, - getPattern: function TilingPattern_getPattern(ctx, owner) { - ctx = this.ctx; - ctx.setTransform.apply(ctx, this.baseTransform); - ctx.transform.apply(ctx, this.matrix); - var temporaryPatternCanvas = this.createPatternCanvas(owner); - return ctx.createPattern(temporaryPatternCanvas, "repeat"); - } - }; - return TilingPattern; -}(); - -exports.TilingPattern = TilingPattern; - -/***/ }), -/* 10 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GlobalWorkerOptions = void 0; -const GlobalWorkerOptions = Object.create(null); -exports.GlobalWorkerOptions = GlobalWorkerOptions; -GlobalWorkerOptions.workerPort = GlobalWorkerOptions.workerPort === undefined ? null : GlobalWorkerOptions.workerPort; -GlobalWorkerOptions.workerSrc = GlobalWorkerOptions.workerSrc === undefined ? "" : GlobalWorkerOptions.workerSrc; - -/***/ }), -/* 11 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.MessageHandler = void 0; - -var _util = __w_pdfjs_require__(1); - -const CallbackKind = { - UNKNOWN: 0, - DATA: 1, - ERROR: 2 -}; -const StreamKind = { - UNKNOWN: 0, - CANCEL: 1, - CANCEL_COMPLETE: 2, - CLOSE: 3, - ENQUEUE: 4, - ERROR: 5, - PULL: 6, - PULL_COMPLETE: 7, - START_COMPLETE: 8 -}; - -function wrapReason(reason) { - if (typeof reason !== "object" || reason === null) { - return reason; - } - - switch (reason.name) { - case "AbortException": - return new _util.AbortException(reason.message); - - case "MissingPDFException": - return new _util.MissingPDFException(reason.message); - - case "UnexpectedResponseException": - return new _util.UnexpectedResponseException(reason.message, reason.status); - - case "UnknownErrorException": - return new _util.UnknownErrorException(reason.message, reason.details); - - default: - return new _util.UnknownErrorException(reason.message, reason.toString()); - } -} - -class MessageHandler { - constructor(sourceName, targetName, comObj) { - this.sourceName = sourceName; - this.targetName = targetName; - this.comObj = comObj; - this.callbackId = 1; - this.streamId = 1; - this.postMessageTransfers = true; - this.streamSinks = Object.create(null); - this.streamControllers = Object.create(null); - this.callbackCapabilities = Object.create(null); - this.actionHandler = Object.create(null); - - this._onComObjOnMessage = event => { - const data = event.data; - - if (data.targetName !== this.sourceName) { - return; - } - - if (data.stream) { - this._processStreamMessage(data); - - return; - } - - if (data.callback) { - const callbackId = data.callbackId; - const capability = this.callbackCapabilities[callbackId]; - - if (!capability) { - throw new Error(`Cannot resolve callback ${callbackId}`); - } - - delete this.callbackCapabilities[callbackId]; - - if (data.callback === CallbackKind.DATA) { - capability.resolve(data.data); - } else if (data.callback === CallbackKind.ERROR) { - capability.reject(wrapReason(data.reason)); - } else { - throw new Error("Unexpected callback case"); - } - - return; - } - - const action = this.actionHandler[data.action]; - - if (!action) { - throw new Error(`Unknown action from worker: ${data.action}`); - } - - if (data.callbackId) { - const sourceName = this.sourceName; - const targetName = data.sourceName; - new Promise(function (resolve) { - resolve(action(data.data)); - }).then(function (result) { - comObj.postMessage({ - sourceName, - targetName, - callback: CallbackKind.DATA, - callbackId: data.callbackId, - data: result - }); - }, function (reason) { - comObj.postMessage({ - sourceName, - targetName, - callback: CallbackKind.ERROR, - callbackId: data.callbackId, - reason: wrapReason(reason) - }); - }); - return; - } - - if (data.streamId) { - this._createStreamSink(data); - - return; - } - - action(data.data); - }; - - comObj.addEventListener("message", this._onComObjOnMessage); - } - - on(actionName, handler) { - const ah = this.actionHandler; - - if (ah[actionName]) { - throw new Error(`There is already an actionName called "${actionName}"`); - } - - ah[actionName] = handler; - } - - send(actionName, data, transfers) { - this._postMessage({ - sourceName: this.sourceName, - targetName: this.targetName, - action: actionName, - data - }, transfers); - } - - sendWithPromise(actionName, data, transfers) { - const callbackId = this.callbackId++; - const capability = (0, _util.createPromiseCapability)(); - this.callbackCapabilities[callbackId] = capability; - - try { - this._postMessage({ - sourceName: this.sourceName, - targetName: this.targetName, - action: actionName, - callbackId, - data - }, transfers); - } catch (ex) { - capability.reject(ex); - } - - return capability.promise; - } - - sendWithStream(actionName, data, queueingStrategy, transfers) { - const streamId = this.streamId++; - const sourceName = this.sourceName; - const targetName = this.targetName; - const comObj = this.comObj; - return new ReadableStream({ - start: controller => { - const startCapability = (0, _util.createPromiseCapability)(); - this.streamControllers[streamId] = { - controller, - startCall: startCapability, - pullCall: null, - cancelCall: null, - isClosed: false - }; - - this._postMessage({ - sourceName, - targetName, - action: actionName, - streamId, - data, - desiredSize: controller.desiredSize - }, transfers); - - return startCapability.promise; - }, - pull: controller => { - const pullCapability = (0, _util.createPromiseCapability)(); - this.streamControllers[streamId].pullCall = pullCapability; - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.PULL, - streamId, - desiredSize: controller.desiredSize - }); - return pullCapability.promise; - }, - cancel: reason => { - (0, _util.assert)(reason instanceof Error, "cancel must have a valid reason"); - const cancelCapability = (0, _util.createPromiseCapability)(); - this.streamControllers[streamId].cancelCall = cancelCapability; - this.streamControllers[streamId].isClosed = true; - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.CANCEL, - streamId, - reason: wrapReason(reason) - }); - return cancelCapability.promise; - } - }, queueingStrategy); - } - - _createStreamSink(data) { - const self = this; - const action = this.actionHandler[data.action]; - const streamId = data.streamId; - const sourceName = this.sourceName; - const targetName = data.sourceName; - const comObj = this.comObj; - const streamSink = { - enqueue(chunk, size = 1, transfers) { - if (this.isCancelled) { - return; - } - - const lastDesiredSize = this.desiredSize; - this.desiredSize -= size; - - if (lastDesiredSize > 0 && this.desiredSize <= 0) { - this.sinkCapability = (0, _util.createPromiseCapability)(); - this.ready = this.sinkCapability.promise; - } - - self._postMessage({ - sourceName, - targetName, - stream: StreamKind.ENQUEUE, - streamId, - chunk - }, transfers); - }, - - close() { - if (this.isCancelled) { - return; - } - - this.isCancelled = true; - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.CLOSE, - streamId - }); - delete self.streamSinks[streamId]; - }, - - error(reason) { - (0, _util.assert)(reason instanceof Error, "error must have a valid reason"); - - if (this.isCancelled) { - return; - } - - this.isCancelled = true; - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.ERROR, - streamId, - reason: wrapReason(reason) - }); - }, - - sinkCapability: (0, _util.createPromiseCapability)(), - onPull: null, - onCancel: null, - isCancelled: false, - desiredSize: data.desiredSize, - ready: null - }; - streamSink.sinkCapability.resolve(); - streamSink.ready = streamSink.sinkCapability.promise; - this.streamSinks[streamId] = streamSink; - new Promise(function (resolve) { - resolve(action(data.data, streamSink)); - }).then(function () { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.START_COMPLETE, - streamId, - success: true - }); - }, function (reason) { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.START_COMPLETE, - streamId, - reason: wrapReason(reason) - }); - }); - } - - _processStreamMessage(data) { - const streamId = data.streamId; - const sourceName = this.sourceName; - const targetName = data.sourceName; - const comObj = this.comObj; - - switch (data.stream) { - case StreamKind.START_COMPLETE: - if (data.success) { - this.streamControllers[streamId].startCall.resolve(); - } else { - this.streamControllers[streamId].startCall.reject(wrapReason(data.reason)); - } - - break; - - case StreamKind.PULL_COMPLETE: - if (data.success) { - this.streamControllers[streamId].pullCall.resolve(); - } else { - this.streamControllers[streamId].pullCall.reject(wrapReason(data.reason)); - } - - break; - - case StreamKind.PULL: - if (!this.streamSinks[streamId]) { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.PULL_COMPLETE, - streamId, - success: true - }); - break; - } - - if (this.streamSinks[streamId].desiredSize <= 0 && data.desiredSize > 0) { - this.streamSinks[streamId].sinkCapability.resolve(); - } - - this.streamSinks[streamId].desiredSize = data.desiredSize; - const { - onPull - } = this.streamSinks[data.streamId]; - new Promise(function (resolve) { - resolve(onPull && onPull()); - }).then(function () { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.PULL_COMPLETE, - streamId, - success: true - }); - }, function (reason) { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.PULL_COMPLETE, - streamId, - reason: wrapReason(reason) - }); - }); - break; - - case StreamKind.ENQUEUE: - (0, _util.assert)(this.streamControllers[streamId], "enqueue should have stream controller"); - - if (this.streamControllers[streamId].isClosed) { - break; - } - - this.streamControllers[streamId].controller.enqueue(data.chunk); - break; - - case StreamKind.CLOSE: - (0, _util.assert)(this.streamControllers[streamId], "close should have stream controller"); - - if (this.streamControllers[streamId].isClosed) { - break; - } - - this.streamControllers[streamId].isClosed = true; - this.streamControllers[streamId].controller.close(); - - this._deleteStreamController(streamId); - - break; - - case StreamKind.ERROR: - (0, _util.assert)(this.streamControllers[streamId], "error should have stream controller"); - this.streamControllers[streamId].controller.error(wrapReason(data.reason)); - - this._deleteStreamController(streamId); - - break; - - case StreamKind.CANCEL_COMPLETE: - if (data.success) { - this.streamControllers[streamId].cancelCall.resolve(); - } else { - this.streamControllers[streamId].cancelCall.reject(wrapReason(data.reason)); - } - - this._deleteStreamController(streamId); - - break; - - case StreamKind.CANCEL: - if (!this.streamSinks[streamId]) { - break; - } - - const { - onCancel - } = this.streamSinks[data.streamId]; - new Promise(function (resolve) { - resolve(onCancel && onCancel(wrapReason(data.reason))); - }).then(function () { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.CANCEL_COMPLETE, - streamId, - success: true - }); - }, function (reason) { - comObj.postMessage({ - sourceName, - targetName, - stream: StreamKind.CANCEL_COMPLETE, - streamId, - reason: wrapReason(reason) - }); - }); - this.streamSinks[streamId].sinkCapability.reject(wrapReason(data.reason)); - this.streamSinks[streamId].isCancelled = true; - delete this.streamSinks[streamId]; - break; - - default: - throw new Error("Unexpected stream case"); - } - } - - async _deleteStreamController(streamId) { - await Promise.allSettled([this.streamControllers[streamId].startCall, this.streamControllers[streamId].pullCall, this.streamControllers[streamId].cancelCall].map(function (capability) { - return capability && capability.promise; - })); - delete this.streamControllers[streamId]; - } - - _postMessage(message, transfers) { - if (transfers && this.postMessageTransfers) { - this.comObj.postMessage(message, transfers); - } else { - this.comObj.postMessage(message); - } - } - - destroy() { - this.comObj.removeEventListener("message", this._onComObjOnMessage); - } - -} - -exports.MessageHandler = MessageHandler; - -/***/ }), -/* 12 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.Metadata = void 0; - -var _util = __w_pdfjs_require__(1); - -var _xml_parser = __w_pdfjs_require__(13); - -class Metadata { - constructor(data) { - (0, _util.assert)(typeof data === "string", "Metadata: input is not a string"); - data = this._repair(data); - const parser = new _xml_parser.SimpleXMLParser(); - const xmlDocument = parser.parseFromString(data); - this._metadataMap = new Map(); - - if (xmlDocument) { - this._parse(xmlDocument); - } - } - - _repair(data) { - return data.replace(/^[^<]+/, "").replace(/>\\376\\377([^<]+)/g, function (all, codes) { - const bytes = codes.replace(/\\([0-3])([0-7])([0-7])/g, function (code, d1, d2, d3) { - return String.fromCharCode(d1 * 64 + d2 * 8 + d3 * 1); - }).replace(/&(amp|apos|gt|lt|quot);/g, function (str, name) { - switch (name) { - case "amp": - return "&"; - - case "apos": - return "'"; - - case "gt": - return ">"; - - case "lt": - return "<"; - - case "quot": - return '"'; - } - - throw new Error(`_repair: ${name} isn't defined.`); - }); - let chars = ""; - - for (let i = 0, ii = bytes.length; i < ii; i += 2) { - const code = bytes.charCodeAt(i) * 256 + bytes.charCodeAt(i + 1); - - if (code >= 32 && code < 127 && code !== 60 && code !== 62 && code !== 38) { - chars += String.fromCharCode(code); - } else { - chars += "&#x" + (0x10000 + code).toString(16).substring(1) + ";"; - } - } - - return ">" + chars; - }); - } - - _parse(xmlDocument) { - let rdf = xmlDocument.documentElement; - - if (rdf.nodeName.toLowerCase() !== "rdf:rdf") { - rdf = rdf.firstChild; - - while (rdf && rdf.nodeName.toLowerCase() !== "rdf:rdf") { - rdf = rdf.nextSibling; - } - } - - const nodeName = rdf ? rdf.nodeName.toLowerCase() : null; - - if (!rdf || nodeName !== "rdf:rdf" || !rdf.hasChildNodes()) { - return; - } - - const children = rdf.childNodes; - - for (let i = 0, ii = children.length; i < ii; i++) { - const desc = children[i]; - - if (desc.nodeName.toLowerCase() !== "rdf:description") { - continue; - } - - for (let j = 0, jj = desc.childNodes.length; j < jj; j++) { - if (desc.childNodes[j].nodeName.toLowerCase() !== "#text") { - const entry = desc.childNodes[j]; - const name = entry.nodeName.toLowerCase(); - - this._metadataMap.set(name, entry.textContent.trim()); - } - } - } - } - - get(name) { - return this._metadataMap.has(name) ? this._metadataMap.get(name) : null; - } - - getAll() { - const obj = Object.create(null); - - for (const [key, value] of this._metadataMap) { - obj[key] = value; - } - - return obj; - } - - has(name) { - return this._metadataMap.has(name); - } - -} - -exports.Metadata = Metadata; - -/***/ }), -/* 13 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.SimpleXMLParser = void 0; -const XMLParserErrorCode = { - NoError: 0, - EndOfDocument: -1, - UnterminatedCdat: -2, - UnterminatedXmlDeclaration: -3, - UnterminatedDoctypeDeclaration: -4, - UnterminatedComment: -5, - MalformedElement: -6, - OutOfMemory: -7, - UnterminatedAttributeValue: -8, - UnterminatedElement: -9, - ElementNeverBegun: -10 -}; - -function isWhitespace(s, index) { - const ch = s[index]; - return ch === " " || ch === "\n" || ch === "\r" || ch === "\t"; -} - -function isWhitespaceString(s) { - for (let i = 0, ii = s.length; i < ii; i++) { - if (!isWhitespace(s, i)) { - return false; - } - } - - return true; -} - -class XMLParserBase { - _resolveEntities(s) { - return s.replace(/&([^;]+);/g, (all, entity) => { - if (entity.substring(0, 2) === "#x") { - return String.fromCharCode(parseInt(entity.substring(2), 16)); - } else if (entity.substring(0, 1) === "#") { - return String.fromCharCode(parseInt(entity.substring(1), 10)); - } - - switch (entity) { - case "lt": - return "<"; - - case "gt": - return ">"; - - case "amp": - return "&"; - - case "quot": - return '"'; - } - - return this.onResolveEntity(entity); - }); - } - - _parseContent(s, start) { - const attributes = []; - let pos = start; - - function skipWs() { - while (pos < s.length && isWhitespace(s, pos)) { - ++pos; - } - } - - while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== ">" && s[pos] !== "/") { - ++pos; - } - - const name = s.substring(start, pos); - skipWs(); - - while (pos < s.length && s[pos] !== ">" && s[pos] !== "/" && s[pos] !== "?") { - skipWs(); - let attrName = "", - attrValue = ""; - - while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== "=") { - attrName += s[pos]; - ++pos; - } - - skipWs(); - - if (s[pos] !== "=") { - return null; - } - - ++pos; - skipWs(); - const attrEndChar = s[pos]; - - if (attrEndChar !== '"' && attrEndChar !== "'") { - return null; - } - - const attrEndIndex = s.indexOf(attrEndChar, ++pos); - - if (attrEndIndex < 0) { - return null; - } - - attrValue = s.substring(pos, attrEndIndex); - attributes.push({ - name: attrName, - value: this._resolveEntities(attrValue) - }); - pos = attrEndIndex + 1; - skipWs(); - } - - return { - name, - attributes, - parsed: pos - start - }; - } - - _parseProcessingInstruction(s, start) { - let pos = start; - - function skipWs() { - while (pos < s.length && isWhitespace(s, pos)) { - ++pos; - } - } - - while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== ">" && s[pos] !== "/") { - ++pos; - } - - const name = s.substring(start, pos); - skipWs(); - const attrStart = pos; - - while (pos < s.length && (s[pos] !== "?" || s[pos + 1] !== ">")) { - ++pos; - } - - const value = s.substring(attrStart, pos); - return { - name, - value, - parsed: pos - start - }; - } - - parseXml(s) { - let i = 0; - - while (i < s.length) { - const ch = s[i]; - let j = i; - - if (ch === "<") { - ++j; - const ch2 = s[j]; - let q; - - switch (ch2) { - case "/": - ++j; - q = s.indexOf(">", j); - - if (q < 0) { - this.onError(XMLParserErrorCode.UnterminatedElement); - return; - } - - this.onEndElement(s.substring(j, q)); - j = q + 1; - break; - - case "?": - ++j; - - const pi = this._parseProcessingInstruction(s, j); - - if (s.substring(j + pi.parsed, j + pi.parsed + 2) !== "?>") { - this.onError(XMLParserErrorCode.UnterminatedXmlDeclaration); - return; - } - - this.onPi(pi.name, pi.value); - j += pi.parsed + 2; - break; - - case "!": - if (s.substring(j + 1, j + 3) === "--") { - q = s.indexOf("-->", j + 3); - - if (q < 0) { - this.onError(XMLParserErrorCode.UnterminatedComment); - return; - } - - this.onComment(s.substring(j + 3, q)); - j = q + 3; - } else if (s.substring(j + 1, j + 8) === "[CDATA[") { - q = s.indexOf("]]>", j + 8); - - if (q < 0) { - this.onError(XMLParserErrorCode.UnterminatedCdat); - return; - } - - this.onCdata(s.substring(j + 8, q)); - j = q + 3; - } else if (s.substring(j + 1, j + 8) === "DOCTYPE") { - const q2 = s.indexOf("[", j + 8); - let complexDoctype = false; - q = s.indexOf(">", j + 8); - - if (q < 0) { - this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration); - return; - } - - if (q2 > 0 && q > q2) { - q = s.indexOf("]>", j + 8); - - if (q < 0) { - this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration); - return; - } - - complexDoctype = true; - } - - const doctypeContent = s.substring(j + 8, q + (complexDoctype ? 1 : 0)); - this.onDoctype(doctypeContent); - j = q + (complexDoctype ? 2 : 1); - } else { - this.onError(XMLParserErrorCode.MalformedElement); - return; - } - - break; - - default: - const content = this._parseContent(s, j); - - if (content === null) { - this.onError(XMLParserErrorCode.MalformedElement); - return; - } - - let isClosed = false; - - if (s.substring(j + content.parsed, j + content.parsed + 2) === "/>") { - isClosed = true; - } else if (s.substring(j + content.parsed, j + content.parsed + 1) !== ">") { - this.onError(XMLParserErrorCode.UnterminatedElement); - return; - } - - this.onBeginElement(content.name, content.attributes, isClosed); - j += content.parsed + (isClosed ? 2 : 1); - break; - } - } else { - while (j < s.length && s[j] !== "<") { - j++; - } - - const text = s.substring(i, j); - this.onText(this._resolveEntities(text)); - } - - i = j; - } - } - - onResolveEntity(name) { - return `&${name};`; - } - - onPi(name, value) {} - - onComment(text) {} - - onCdata(text) {} - - onDoctype(doctypeContent) {} - - onText(text) {} - - onBeginElement(name, attributes, isEmpty) {} - - onEndElement(name) {} - - onError(code) {} - -} - -class SimpleDOMNode { - constructor(nodeName, nodeValue) { - this.nodeName = nodeName; - this.nodeValue = nodeValue; - Object.defineProperty(this, "parentNode", { - value: null, - writable: true - }); - } - - get firstChild() { - return this.childNodes && this.childNodes[0]; - } - - get nextSibling() { - const childNodes = this.parentNode.childNodes; - - if (!childNodes) { - return undefined; - } - - const index = childNodes.indexOf(this); - - if (index === -1) { - return undefined; - } - - return childNodes[index + 1]; - } - - get textContent() { - if (!this.childNodes) { - return this.nodeValue || ""; - } - - return this.childNodes.map(function (child) { - return child.textContent; - }).join(""); - } - - hasChildNodes() { - return this.childNodes && this.childNodes.length > 0; - } - -} - -class SimpleXMLParser extends XMLParserBase { - constructor() { - super(); - this._currentFragment = null; - this._stack = null; - this._errorCode = XMLParserErrorCode.NoError; - } - - parseFromString(data) { - this._currentFragment = []; - this._stack = []; - this._errorCode = XMLParserErrorCode.NoError; - this.parseXml(data); - - if (this._errorCode !== XMLParserErrorCode.NoError) { - return undefined; - } - - const [documentElement] = this._currentFragment; - - if (!documentElement) { - return undefined; - } - - return { - documentElement - }; - } - - onResolveEntity(name) { - switch (name) { - case "apos": - return "'"; - } - - return super.onResolveEntity(name); - } - - onText(text) { - if (isWhitespaceString(text)) { - return; - } - - const node = new SimpleDOMNode("#text", text); - - this._currentFragment.push(node); - } - - onCdata(text) { - const node = new SimpleDOMNode("#text", text); - - this._currentFragment.push(node); - } - - onBeginElement(name, attributes, isEmpty) { - const node = new SimpleDOMNode(name); - node.childNodes = []; - - this._currentFragment.push(node); - - if (isEmpty) { - return; - } - - this._stack.push(this._currentFragment); - - this._currentFragment = node.childNodes; - } - - onEndElement(name) { - this._currentFragment = this._stack.pop() || []; - const lastElement = this._currentFragment[this._currentFragment.length - 1]; - - if (!lastElement) { - return; - } - - for (let i = 0, ii = lastElement.childNodes.length; i < ii; i++) { - lastElement.childNodes[i].parentNode = lastElement; - } - } - - onError(code) { - this._errorCode = code; - } - -} - -exports.SimpleXMLParser = SimpleXMLParser; - -/***/ }), -/* 14 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFDataTransportStream = void 0; - -var _util = __w_pdfjs_require__(1); - -class PDFDataTransportStream { - constructor(params, pdfDataRangeTransport) { - (0, _util.assert)(pdfDataRangeTransport); - this._queuedChunks = []; - this._progressiveDone = params.progressiveDone || false; - const initialData = params.initialData; - - if (initialData && initialData.length > 0) { - const buffer = new Uint8Array(initialData).buffer; - - this._queuedChunks.push(buffer); - } - - this._pdfDataRangeTransport = pdfDataRangeTransport; - this._isStreamingSupported = !params.disableStream; - this._isRangeSupported = !params.disableRange; - this._contentLength = params.length; - this._fullRequestReader = null; - this._rangeReaders = []; - - this._pdfDataRangeTransport.addRangeListener((begin, chunk) => { - this._onReceiveData({ - begin, - chunk - }); - }); - - this._pdfDataRangeTransport.addProgressListener((loaded, total) => { - this._onProgress({ - loaded, - total - }); - }); - - this._pdfDataRangeTransport.addProgressiveReadListener(chunk => { - this._onReceiveData({ - chunk - }); - }); - - this._pdfDataRangeTransport.addProgressiveDoneListener(() => { - this._onProgressiveDone(); - }); - - this._pdfDataRangeTransport.transportReady(); - } - - _onReceiveData(args) { - const buffer = new Uint8Array(args.chunk).buffer; - - if (args.begin === undefined) { - if (this._fullRequestReader) { - this._fullRequestReader._enqueue(buffer); - } else { - this._queuedChunks.push(buffer); - } - } else { - const found = this._rangeReaders.some(function (rangeReader) { - if (rangeReader._begin !== args.begin) { - return false; - } - - rangeReader._enqueue(buffer); - - return true; - }); - - (0, _util.assert)(found); - } - } - - get _progressiveDataLength() { - return this._fullRequestReader ? this._fullRequestReader._loaded : 0; - } - - _onProgress(evt) { - if (evt.total === undefined) { - const firstReader = this._rangeReaders[0]; - - if (firstReader && firstReader.onProgress) { - firstReader.onProgress({ - loaded: evt.loaded - }); - } - } else { - const fullReader = this._fullRequestReader; - - if (fullReader && fullReader.onProgress) { - fullReader.onProgress({ - loaded: evt.loaded, - total: evt.total - }); - } - } - } - - _onProgressiveDone() { - if (this._fullRequestReader) { - this._fullRequestReader.progressiveDone(); - } - - this._progressiveDone = true; - } - - _removeRangeReader(reader) { - const i = this._rangeReaders.indexOf(reader); - - if (i >= 0) { - this._rangeReaders.splice(i, 1); - } - } - - getFullReader() { - (0, _util.assert)(!this._fullRequestReader); - const queuedChunks = this._queuedChunks; - this._queuedChunks = null; - return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone); - } - - getRangeReader(begin, end) { - if (end <= this._progressiveDataLength) { - return null; - } - - const reader = new PDFDataTransportStreamRangeReader(this, begin, end); - - this._pdfDataRangeTransport.requestDataRange(begin, end); - - this._rangeReaders.push(reader); - - return reader; - } - - cancelAllRequests(reason) { - if (this._fullRequestReader) { - this._fullRequestReader.cancel(reason); - } - - const readers = this._rangeReaders.slice(0); - - readers.forEach(function (rangeReader) { - rangeReader.cancel(reason); - }); - - this._pdfDataRangeTransport.abort(); - } - -} - -exports.PDFDataTransportStream = PDFDataTransportStream; - -class PDFDataTransportStreamReader { - constructor(stream, queuedChunks, progressiveDone = false) { - this._stream = stream; - this._done = progressiveDone || false; - this._filename = null; - this._queuedChunks = queuedChunks || []; - this._loaded = 0; - - for (const chunk of this._queuedChunks) { - this._loaded += chunk.byteLength; - } - - this._requests = []; - this._headersReady = Promise.resolve(); - stream._fullRequestReader = this; - this.onProgress = null; - } - - _enqueue(chunk) { - if (this._done) { - return; - } - - if (this._requests.length > 0) { - const requestCapability = this._requests.shift(); - - requestCapability.resolve({ - value: chunk, - done: false - }); - } else { - this._queuedChunks.push(chunk); - } - - this._loaded += chunk.byteLength; - } - - get headersReady() { - return this._headersReady; - } - - get filename() { - return this._filename; - } - - get isRangeSupported() { - return this._stream._isRangeSupported; - } - - get isStreamingSupported() { - return this._stream._isStreamingSupported; - } - - get contentLength() { - return this._stream._contentLength; - } - - async read() { - if (this._queuedChunks.length > 0) { - const chunk = this._queuedChunks.shift(); - - return { - value: chunk, - done: false - }; - } - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - const requestCapability = (0, _util.createPromiseCapability)(); - - this._requests.push(requestCapability); - - return requestCapability.promise; - } - - cancel(reason) { - this._done = true; - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - } - - progressiveDone() { - if (this._done) { - return; - } - - this._done = true; - } - -} - -class PDFDataTransportStreamRangeReader { - constructor(stream, begin, end) { - this._stream = stream; - this._begin = begin; - this._end = end; - this._queuedChunk = null; - this._requests = []; - this._done = false; - this.onProgress = null; - } - - _enqueue(chunk) { - if (this._done) { - return; - } - - if (this._requests.length === 0) { - this._queuedChunk = chunk; - } else { - const requestsCapability = this._requests.shift(); - - requestsCapability.resolve({ - value: chunk, - done: false - }); - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - } - - this._done = true; - - this._stream._removeRangeReader(this); - } - - get isStreamingSupported() { - return false; - } - - async read() { - if (this._queuedChunk) { - const chunk = this._queuedChunk; - this._queuedChunk = null; - return { - value: chunk, - done: false - }; - } - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - const requestCapability = (0, _util.createPromiseCapability)(); - - this._requests.push(requestCapability); - - return requestCapability.promise; - } - - cancel(reason) { - this._done = true; - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - - this._stream._removeRangeReader(this); - } - -} - -/***/ }), -/* 15 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.WebGLContext = void 0; - -var _util = __w_pdfjs_require__(1); - -class WebGLContext { - constructor({ - enable = false - }) { - this._enabled = enable === true; - } - - get isEnabled() { - let enabled = this._enabled; - - if (enabled) { - enabled = WebGLUtils.tryInitGL(); - } - - return (0, _util.shadow)(this, "isEnabled", enabled); - } - - composeSMask({ - layer, - mask, - properties - }) { - return WebGLUtils.composeSMask(layer, mask, properties); - } - - drawFigures({ - width, - height, - backgroundColor, - figures, - context - }) { - return WebGLUtils.drawFigures(width, height, backgroundColor, figures, context); - } - - clear() { - WebGLUtils.cleanup(); - } - -} - -exports.WebGLContext = WebGLContext; - -var WebGLUtils = function WebGLUtilsClosure() { - function loadShader(gl, code, shaderType) { - var shader = gl.createShader(shaderType); - gl.shaderSource(shader, code); - gl.compileShader(shader); - var compiled = gl.getShaderParameter(shader, gl.COMPILE_STATUS); - - if (!compiled) { - var errorMsg = gl.getShaderInfoLog(shader); - throw new Error("Error during shader compilation: " + errorMsg); - } - - return shader; - } - - function createVertexShader(gl, code) { - return loadShader(gl, code, gl.VERTEX_SHADER); - } - - function createFragmentShader(gl, code) { - return loadShader(gl, code, gl.FRAGMENT_SHADER); - } - - function createProgram(gl, shaders) { - var program = gl.createProgram(); - - for (var i = 0, ii = shaders.length; i < ii; ++i) { - gl.attachShader(program, shaders[i]); - } - - gl.linkProgram(program); - var linked = gl.getProgramParameter(program, gl.LINK_STATUS); - - if (!linked) { - var errorMsg = gl.getProgramInfoLog(program); - throw new Error("Error during program linking: " + errorMsg); - } - - return program; - } - - function createTexture(gl, image, textureId) { - gl.activeTexture(textureId); - var texture = gl.createTexture(); - gl.bindTexture(gl.TEXTURE_2D, texture); - gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE); - gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE); - gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST); - gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST); - gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, image); - return texture; - } - - var currentGL, currentCanvas; - - function generateGL() { - if (currentGL) { - return; - } - - currentCanvas = document.createElement("canvas"); - currentGL = currentCanvas.getContext("webgl", { - premultipliedalpha: false - }); - } - - var smaskVertexShaderCode = "\ - attribute vec2 a_position; \ - attribute vec2 a_texCoord; \ - \ - uniform vec2 u_resolution; \ - \ - varying vec2 v_texCoord; \ - \ - void main() { \ - vec2 clipSpace = (a_position / u_resolution) * 2.0 - 1.0; \ - gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); \ - \ - v_texCoord = a_texCoord; \ - } "; - var smaskFragmentShaderCode = "\ - precision mediump float; \ - \ - uniform vec4 u_backdrop; \ - uniform int u_subtype; \ - uniform sampler2D u_image; \ - uniform sampler2D u_mask; \ - \ - varying vec2 v_texCoord; \ - \ - void main() { \ - vec4 imageColor = texture2D(u_image, v_texCoord); \ - vec4 maskColor = texture2D(u_mask, v_texCoord); \ - if (u_backdrop.a > 0.0) { \ - maskColor.rgb = maskColor.rgb * maskColor.a + \ - u_backdrop.rgb * (1.0 - maskColor.a); \ - } \ - float lum; \ - if (u_subtype == 0) { \ - lum = maskColor.a; \ - } else { \ - lum = maskColor.r * 0.3 + maskColor.g * 0.59 + \ - maskColor.b * 0.11; \ - } \ - imageColor.a *= lum; \ - imageColor.rgb *= imageColor.a; \ - gl_FragColor = imageColor; \ - } "; - var smaskCache = null; - - function initSmaskGL() { - var canvas, gl; - generateGL(); - canvas = currentCanvas; - currentCanvas = null; - gl = currentGL; - currentGL = null; - var vertexShader = createVertexShader(gl, smaskVertexShaderCode); - var fragmentShader = createFragmentShader(gl, smaskFragmentShaderCode); - var program = createProgram(gl, [vertexShader, fragmentShader]); - gl.useProgram(program); - var cache = {}; - cache.gl = gl; - cache.canvas = canvas; - cache.resolutionLocation = gl.getUniformLocation(program, "u_resolution"); - cache.positionLocation = gl.getAttribLocation(program, "a_position"); - cache.backdropLocation = gl.getUniformLocation(program, "u_backdrop"); - cache.subtypeLocation = gl.getUniformLocation(program, "u_subtype"); - var texCoordLocation = gl.getAttribLocation(program, "a_texCoord"); - var texLayerLocation = gl.getUniformLocation(program, "u_image"); - var texMaskLocation = gl.getUniformLocation(program, "u_mask"); - var texCoordBuffer = gl.createBuffer(); - gl.bindBuffer(gl.ARRAY_BUFFER, texCoordBuffer); - gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 1.0, 0.0, 1.0, 1.0]), gl.STATIC_DRAW); - gl.enableVertexAttribArray(texCoordLocation); - gl.vertexAttribPointer(texCoordLocation, 2, gl.FLOAT, false, 0, 0); - gl.uniform1i(texLayerLocation, 0); - gl.uniform1i(texMaskLocation, 1); - smaskCache = cache; - } - - function composeSMask(layer, mask, properties) { - var width = layer.width, - height = layer.height; - - if (!smaskCache) { - initSmaskGL(); - } - - var cache = smaskCache, - canvas = cache.canvas, - gl = cache.gl; - canvas.width = width; - canvas.height = height; - gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight); - gl.uniform2f(cache.resolutionLocation, width, height); - - if (properties.backdrop) { - gl.uniform4f(cache.resolutionLocation, properties.backdrop[0], properties.backdrop[1], properties.backdrop[2], 1); - } else { - gl.uniform4f(cache.resolutionLocation, 0, 0, 0, 0); - } - - gl.uniform1i(cache.subtypeLocation, properties.subtype === "Luminosity" ? 1 : 0); - var texture = createTexture(gl, layer, gl.TEXTURE0); - var maskTexture = createTexture(gl, mask, gl.TEXTURE1); - var buffer = gl.createBuffer(); - gl.bindBuffer(gl.ARRAY_BUFFER, buffer); - gl.bufferData(gl.ARRAY_BUFFER, new Float32Array([0, 0, width, 0, 0, height, 0, height, width, 0, width, height]), gl.STATIC_DRAW); - gl.enableVertexAttribArray(cache.positionLocation); - gl.vertexAttribPointer(cache.positionLocation, 2, gl.FLOAT, false, 0, 0); - gl.clearColor(0, 0, 0, 0); - gl.enable(gl.BLEND); - gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA); - gl.clear(gl.COLOR_BUFFER_BIT); - gl.drawArrays(gl.TRIANGLES, 0, 6); - gl.flush(); - gl.deleteTexture(texture); - gl.deleteTexture(maskTexture); - gl.deleteBuffer(buffer); - return canvas; - } - - var figuresVertexShaderCode = "\ - attribute vec2 a_position; \ - attribute vec3 a_color; \ - \ - uniform vec2 u_resolution; \ - uniform vec2 u_scale; \ - uniform vec2 u_offset; \ - \ - varying vec4 v_color; \ - \ - void main() { \ - vec2 position = (a_position + u_offset) * u_scale; \ - vec2 clipSpace = (position / u_resolution) * 2.0 - 1.0; \ - gl_Position = vec4(clipSpace * vec2(1, -1), 0, 1); \ - \ - v_color = vec4(a_color / 255.0, 1.0); \ - } "; - var figuresFragmentShaderCode = "\ - precision mediump float; \ - \ - varying vec4 v_color; \ - \ - void main() { \ - gl_FragColor = v_color; \ - } "; - var figuresCache = null; - - function initFiguresGL() { - var canvas, gl; - generateGL(); - canvas = currentCanvas; - currentCanvas = null; - gl = currentGL; - currentGL = null; - var vertexShader = createVertexShader(gl, figuresVertexShaderCode); - var fragmentShader = createFragmentShader(gl, figuresFragmentShaderCode); - var program = createProgram(gl, [vertexShader, fragmentShader]); - gl.useProgram(program); - var cache = {}; - cache.gl = gl; - cache.canvas = canvas; - cache.resolutionLocation = gl.getUniformLocation(program, "u_resolution"); - cache.scaleLocation = gl.getUniformLocation(program, "u_scale"); - cache.offsetLocation = gl.getUniformLocation(program, "u_offset"); - cache.positionLocation = gl.getAttribLocation(program, "a_position"); - cache.colorLocation = gl.getAttribLocation(program, "a_color"); - figuresCache = cache; - } - - function drawFigures(width, height, backgroundColor, figures, context) { - if (!figuresCache) { - initFiguresGL(); - } - - var cache = figuresCache, - canvas = cache.canvas, - gl = cache.gl; - canvas.width = width; - canvas.height = height; - gl.viewport(0, 0, gl.drawingBufferWidth, gl.drawingBufferHeight); - gl.uniform2f(cache.resolutionLocation, width, height); - var count = 0; - var i, ii, rows; - - for (i = 0, ii = figures.length; i < ii; i++) { - switch (figures[i].type) { - case "lattice": - rows = figures[i].coords.length / figures[i].verticesPerRow | 0; - count += (rows - 1) * (figures[i].verticesPerRow - 1) * 6; - break; - - case "triangles": - count += figures[i].coords.length; - break; - } - } - - var coords = new Float32Array(count * 2); - var colors = new Uint8Array(count * 3); - var coordsMap = context.coords, - colorsMap = context.colors; - var pIndex = 0, - cIndex = 0; - - for (i = 0, ii = figures.length; i < ii; i++) { - var figure = figures[i], - ps = figure.coords, - cs = figure.colors; - - switch (figure.type) { - case "lattice": - var cols = figure.verticesPerRow; - rows = ps.length / cols | 0; - - for (var row = 1; row < rows; row++) { - var offset = row * cols + 1; - - for (var col = 1; col < cols; col++, offset++) { - coords[pIndex] = coordsMap[ps[offset - cols - 1]]; - coords[pIndex + 1] = coordsMap[ps[offset - cols - 1] + 1]; - coords[pIndex + 2] = coordsMap[ps[offset - cols]]; - coords[pIndex + 3] = coordsMap[ps[offset - cols] + 1]; - coords[pIndex + 4] = coordsMap[ps[offset - 1]]; - coords[pIndex + 5] = coordsMap[ps[offset - 1] + 1]; - colors[cIndex] = colorsMap[cs[offset - cols - 1]]; - colors[cIndex + 1] = colorsMap[cs[offset - cols - 1] + 1]; - colors[cIndex + 2] = colorsMap[cs[offset - cols - 1] + 2]; - colors[cIndex + 3] = colorsMap[cs[offset - cols]]; - colors[cIndex + 4] = colorsMap[cs[offset - cols] + 1]; - colors[cIndex + 5] = colorsMap[cs[offset - cols] + 2]; - colors[cIndex + 6] = colorsMap[cs[offset - 1]]; - colors[cIndex + 7] = colorsMap[cs[offset - 1] + 1]; - colors[cIndex + 8] = colorsMap[cs[offset - 1] + 2]; - coords[pIndex + 6] = coords[pIndex + 2]; - coords[pIndex + 7] = coords[pIndex + 3]; - coords[pIndex + 8] = coords[pIndex + 4]; - coords[pIndex + 9] = coords[pIndex + 5]; - coords[pIndex + 10] = coordsMap[ps[offset]]; - coords[pIndex + 11] = coordsMap[ps[offset] + 1]; - colors[cIndex + 9] = colors[cIndex + 3]; - colors[cIndex + 10] = colors[cIndex + 4]; - colors[cIndex + 11] = colors[cIndex + 5]; - colors[cIndex + 12] = colors[cIndex + 6]; - colors[cIndex + 13] = colors[cIndex + 7]; - colors[cIndex + 14] = colors[cIndex + 8]; - colors[cIndex + 15] = colorsMap[cs[offset]]; - colors[cIndex + 16] = colorsMap[cs[offset] + 1]; - colors[cIndex + 17] = colorsMap[cs[offset] + 2]; - pIndex += 12; - cIndex += 18; - } - } - - break; - - case "triangles": - for (var j = 0, jj = ps.length; j < jj; j++) { - coords[pIndex] = coordsMap[ps[j]]; - coords[pIndex + 1] = coordsMap[ps[j] + 1]; - colors[cIndex] = colorsMap[cs[j]]; - colors[cIndex + 1] = colorsMap[cs[j] + 1]; - colors[cIndex + 2] = colorsMap[cs[j] + 2]; - pIndex += 2; - cIndex += 3; - } - - break; - } - } - - if (backgroundColor) { - gl.clearColor(backgroundColor[0] / 255, backgroundColor[1] / 255, backgroundColor[2] / 255, 1.0); - } else { - gl.clearColor(0, 0, 0, 0); - } - - gl.clear(gl.COLOR_BUFFER_BIT); - var coordsBuffer = gl.createBuffer(); - gl.bindBuffer(gl.ARRAY_BUFFER, coordsBuffer); - gl.bufferData(gl.ARRAY_BUFFER, coords, gl.STATIC_DRAW); - gl.enableVertexAttribArray(cache.positionLocation); - gl.vertexAttribPointer(cache.positionLocation, 2, gl.FLOAT, false, 0, 0); - var colorsBuffer = gl.createBuffer(); - gl.bindBuffer(gl.ARRAY_BUFFER, colorsBuffer); - gl.bufferData(gl.ARRAY_BUFFER, colors, gl.STATIC_DRAW); - gl.enableVertexAttribArray(cache.colorLocation); - gl.vertexAttribPointer(cache.colorLocation, 3, gl.UNSIGNED_BYTE, false, 0, 0); - gl.uniform2f(cache.scaleLocation, context.scaleX, context.scaleY); - gl.uniform2f(cache.offsetLocation, context.offsetX, context.offsetY); - gl.drawArrays(gl.TRIANGLES, 0, count); - gl.flush(); - gl.deleteBuffer(coordsBuffer); - gl.deleteBuffer(colorsBuffer); - return canvas; - } - - return { - tryInitGL() { - try { - generateGL(); - return !!currentGL; - } catch (ex) {} - - return false; - }, - - composeSMask, - drawFigures, - - cleanup() { - if (smaskCache && smaskCache.canvas) { - smaskCache.canvas.width = 0; - smaskCache.canvas.height = 0; - } - - if (figuresCache && figuresCache.canvas) { - figuresCache.canvas.width = 0; - figuresCache.canvas.height = 0; - } - - smaskCache = null; - figuresCache = null; - } - - }; -}(); - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.renderTextLayer = void 0; - -var _util = __w_pdfjs_require__(1); - -var renderTextLayer = function renderTextLayerClosure() { - var MAX_TEXT_DIVS_TO_RENDER = 100000; - var NonWhitespaceRegexp = /\S/; - - function isAllWhitespace(str) { - return !NonWhitespaceRegexp.test(str); - } - - function appendText(task, geom, styles) { - var textDiv = document.createElement("span"); - var textDivProperties = { - angle: 0, - canvasWidth: 0, - isWhitespace: false, - originalTransform: null, - paddingBottom: 0, - paddingLeft: 0, - paddingRight: 0, - paddingTop: 0, - scale: 1 - }; - - task._textDivs.push(textDiv); - - if (isAllWhitespace(geom.str)) { - textDivProperties.isWhitespace = true; - - task._textDivProperties.set(textDiv, textDivProperties); - - return; - } - - var tx = _util.Util.transform(task._viewport.transform, geom.transform); - - var angle = Math.atan2(tx[1], tx[0]); - var style = styles[geom.fontName]; - - if (style.vertical) { - angle += Math.PI / 2; - } - - var fontHeight = Math.sqrt(tx[2] * tx[2] + tx[3] * tx[3]); - var fontAscent = fontHeight; - - if (style.ascent) { - fontAscent = style.ascent * fontAscent; - } else if (style.descent) { - fontAscent = (1 + style.descent) * fontAscent; - } - - let left, top; - - if (angle === 0) { - left = tx[4]; - top = tx[5] - fontAscent; - } else { - left = tx[4] + fontAscent * Math.sin(angle); - top = tx[5] - fontAscent * Math.cos(angle); - } - - textDiv.style.left = `${left}px`; - textDiv.style.top = `${top}px`; - textDiv.style.fontSize = `${fontHeight}px`; - textDiv.style.fontFamily = style.fontFamily; - textDiv.textContent = geom.str; - - if (task._fontInspectorEnabled) { - textDiv.dataset.fontName = geom.fontName; - } - - if (angle !== 0) { - textDivProperties.angle = angle * (180 / Math.PI); - } - - if (geom.str.length > 1) { - if (style.vertical) { - textDivProperties.canvasWidth = geom.height * task._viewport.scale; - } else { - textDivProperties.canvasWidth = geom.width * task._viewport.scale; - } - } - - task._textDivProperties.set(textDiv, textDivProperties); - - if (task._textContentStream) { - task._layoutText(textDiv); - } - - if (task._enhanceTextSelection) { - var angleCos = 1, - angleSin = 0; - - if (angle !== 0) { - angleCos = Math.cos(angle); - angleSin = Math.sin(angle); - } - - var divWidth = (style.vertical ? geom.height : geom.width) * task._viewport.scale; - var divHeight = fontHeight; - var m, b; - - if (angle !== 0) { - m = [angleCos, angleSin, -angleSin, angleCos, left, top]; - b = _util.Util.getAxialAlignedBoundingBox([0, 0, divWidth, divHeight], m); - } else { - b = [left, top, left + divWidth, top + divHeight]; - } - - task._bounds.push({ - left: b[0], - top: b[1], - right: b[2], - bottom: b[3], - div: textDiv, - size: [divWidth, divHeight], - m - }); - } - } - - function render(task) { - if (task._canceled) { - return; - } - - var textDivs = task._textDivs; - var capability = task._capability; - var textDivsLength = textDivs.length; - - if (textDivsLength > MAX_TEXT_DIVS_TO_RENDER) { - task._renderingDone = true; - capability.resolve(); - return; - } - - if (!task._textContentStream) { - for (var i = 0; i < textDivsLength; i++) { - task._layoutText(textDivs[i]); - } - } - - task._renderingDone = true; - capability.resolve(); - } - - function expand(task) { - var bounds = task._bounds; - var viewport = task._viewport; - var expanded = expandBounds(viewport.width, viewport.height, bounds); - - for (var i = 0; i < expanded.length; i++) { - var div = bounds[i].div; - - var divProperties = task._textDivProperties.get(div); - - if (divProperties.angle === 0) { - divProperties.paddingLeft = bounds[i].left - expanded[i].left; - divProperties.paddingTop = bounds[i].top - expanded[i].top; - divProperties.paddingRight = expanded[i].right - bounds[i].right; - divProperties.paddingBottom = expanded[i].bottom - bounds[i].bottom; - - task._textDivProperties.set(div, divProperties); - - continue; - } - - var e = expanded[i], - b = bounds[i]; - var m = b.m, - c = m[0], - s = m[1]; - var points = [[0, 0], [0, b.size[1]], [b.size[0], 0], b.size]; - var ts = new Float64Array(64); - points.forEach(function (p, i) { - var t = _util.Util.applyTransform(p, m); - - ts[i + 0] = c && (e.left - t[0]) / c; - ts[i + 4] = s && (e.top - t[1]) / s; - ts[i + 8] = c && (e.right - t[0]) / c; - ts[i + 12] = s && (e.bottom - t[1]) / s; - ts[i + 16] = s && (e.left - t[0]) / -s; - ts[i + 20] = c && (e.top - t[1]) / c; - ts[i + 24] = s && (e.right - t[0]) / -s; - ts[i + 28] = c && (e.bottom - t[1]) / c; - ts[i + 32] = c && (e.left - t[0]) / -c; - ts[i + 36] = s && (e.top - t[1]) / -s; - ts[i + 40] = c && (e.right - t[0]) / -c; - ts[i + 44] = s && (e.bottom - t[1]) / -s; - ts[i + 48] = s && (e.left - t[0]) / s; - ts[i + 52] = c && (e.top - t[1]) / -c; - ts[i + 56] = s && (e.right - t[0]) / s; - ts[i + 60] = c && (e.bottom - t[1]) / -c; - }); - - var findPositiveMin = function (ts, offset, count) { - var result = 0; - - for (var i = 0; i < count; i++) { - var t = ts[offset++]; - - if (t > 0) { - result = result ? Math.min(t, result) : t; - } - } - - return result; - }; - - var boxScale = 1 + Math.min(Math.abs(c), Math.abs(s)); - divProperties.paddingLeft = findPositiveMin(ts, 32, 16) / boxScale; - divProperties.paddingTop = findPositiveMin(ts, 48, 16) / boxScale; - divProperties.paddingRight = findPositiveMin(ts, 0, 16) / boxScale; - divProperties.paddingBottom = findPositiveMin(ts, 16, 16) / boxScale; - - task._textDivProperties.set(div, divProperties); - } - } - - function expandBounds(width, height, boxes) { - var bounds = boxes.map(function (box, i) { - return { - x1: box.left, - y1: box.top, - x2: box.right, - y2: box.bottom, - index: i, - x1New: undefined, - x2New: undefined - }; - }); - expandBoundsLTR(width, bounds); - var expanded = new Array(boxes.length); - bounds.forEach(function (b) { - var i = b.index; - expanded[i] = { - left: b.x1New, - top: 0, - right: b.x2New, - bottom: 0 - }; - }); - boxes.map(function (box, i) { - var e = expanded[i], - b = bounds[i]; - b.x1 = box.top; - b.y1 = width - e.right; - b.x2 = box.bottom; - b.y2 = width - e.left; - b.index = i; - b.x1New = undefined; - b.x2New = undefined; - }); - expandBoundsLTR(height, bounds); - bounds.forEach(function (b) { - var i = b.index; - expanded[i].top = b.x1New; - expanded[i].bottom = b.x2New; - }); - return expanded; - } - - function expandBoundsLTR(width, bounds) { - bounds.sort(function (a, b) { - return a.x1 - b.x1 || a.index - b.index; - }); - var fakeBoundary = { - x1: -Infinity, - y1: -Infinity, - x2: 0, - y2: Infinity, - index: -1, - x1New: 0, - x2New: 0 - }; - var horizon = [{ - start: -Infinity, - end: Infinity, - boundary: fakeBoundary - }]; - bounds.forEach(function (boundary) { - var i = 0; - - while (i < horizon.length && horizon[i].end <= boundary.y1) { - i++; - } - - var j = horizon.length - 1; - - while (j >= 0 && horizon[j].start >= boundary.y2) { - j--; - } - - var horizonPart, affectedBoundary; - var q, - k, - maxXNew = -Infinity; - - for (q = i; q <= j; q++) { - horizonPart = horizon[q]; - affectedBoundary = horizonPart.boundary; - var xNew; - - if (affectedBoundary.x2 > boundary.x1) { - xNew = affectedBoundary.index > boundary.index ? affectedBoundary.x1New : boundary.x1; - } else if (affectedBoundary.x2New === undefined) { - xNew = (affectedBoundary.x2 + boundary.x1) / 2; - } else { - xNew = affectedBoundary.x2New; - } - - if (xNew > maxXNew) { - maxXNew = xNew; - } - } - - boundary.x1New = maxXNew; - - for (q = i; q <= j; q++) { - horizonPart = horizon[q]; - affectedBoundary = horizonPart.boundary; - - if (affectedBoundary.x2New === undefined) { - if (affectedBoundary.x2 > boundary.x1) { - if (affectedBoundary.index > boundary.index) { - affectedBoundary.x2New = affectedBoundary.x2; - } - } else { - affectedBoundary.x2New = maxXNew; - } - } else if (affectedBoundary.x2New > maxXNew) { - affectedBoundary.x2New = Math.max(maxXNew, affectedBoundary.x2); - } - } - - var changedHorizon = [], - lastBoundary = null; - - for (q = i; q <= j; q++) { - horizonPart = horizon[q]; - affectedBoundary = horizonPart.boundary; - var useBoundary = affectedBoundary.x2 > boundary.x2 ? affectedBoundary : boundary; - - if (lastBoundary === useBoundary) { - changedHorizon[changedHorizon.length - 1].end = horizonPart.end; - } else { - changedHorizon.push({ - start: horizonPart.start, - end: horizonPart.end, - boundary: useBoundary - }); - lastBoundary = useBoundary; - } - } - - if (horizon[i].start < boundary.y1) { - changedHorizon[0].start = boundary.y1; - changedHorizon.unshift({ - start: horizon[i].start, - end: boundary.y1, - boundary: horizon[i].boundary - }); - } - - if (boundary.y2 < horizon[j].end) { - changedHorizon[changedHorizon.length - 1].end = boundary.y2; - changedHorizon.push({ - start: boundary.y2, - end: horizon[j].end, - boundary: horizon[j].boundary - }); - } - - for (q = i; q <= j; q++) { - horizonPart = horizon[q]; - affectedBoundary = horizonPart.boundary; - - if (affectedBoundary.x2New !== undefined) { - continue; - } - - var used = false; - - for (k = i - 1; !used && k >= 0 && horizon[k].start >= affectedBoundary.y1; k--) { - used = horizon[k].boundary === affectedBoundary; - } - - for (k = j + 1; !used && k < horizon.length && horizon[k].end <= affectedBoundary.y2; k++) { - used = horizon[k].boundary === affectedBoundary; - } - - for (k = 0; !used && k < changedHorizon.length; k++) { - used = changedHorizon[k].boundary === affectedBoundary; - } - - if (!used) { - affectedBoundary.x2New = maxXNew; - } - } - - Array.prototype.splice.apply(horizon, [i, j - i + 1].concat(changedHorizon)); - }); - horizon.forEach(function (horizonPart) { - var affectedBoundary = horizonPart.boundary; - - if (affectedBoundary.x2New === undefined) { - affectedBoundary.x2New = Math.max(width, affectedBoundary.x2); - } - }); - } - - function TextLayerRenderTask({ - textContent, - textContentStream, - container, - viewport, - textDivs, - textContentItemsStr, - enhanceTextSelection - }) { - this._textContent = textContent; - this._textContentStream = textContentStream; - this._container = container; - this._viewport = viewport; - this._textDivs = textDivs || []; - this._textContentItemsStr = textContentItemsStr || []; - this._enhanceTextSelection = !!enhanceTextSelection; - this._fontInspectorEnabled = !!(globalThis.FontInspector && globalThis.FontInspector.enabled); - this._reader = null; - this._layoutTextLastFontSize = null; - this._layoutTextLastFontFamily = null; - this._layoutTextCtx = null; - this._textDivProperties = new WeakMap(); - this._renderingDone = false; - this._canceled = false; - this._capability = (0, _util.createPromiseCapability)(); - this._renderTimer = null; - this._bounds = []; - - this._capability.promise.finally(() => { - if (this._layoutTextCtx) { - this._layoutTextCtx.canvas.width = 0; - this._layoutTextCtx.canvas.height = 0; - this._layoutTextCtx = null; - } - }).catch(() => {}); - } - - TextLayerRenderTask.prototype = { - get promise() { - return this._capability.promise; - }, - - cancel: function TextLayer_cancel() { - this._canceled = true; - - if (this._reader) { - this._reader.cancel(new _util.AbortException("TextLayer task cancelled.")); - - this._reader = null; - } - - if (this._renderTimer !== null) { - clearTimeout(this._renderTimer); - this._renderTimer = null; - } - - this._capability.reject(new Error("TextLayer task cancelled.")); - }, - - _processItems(items, styleCache) { - for (let i = 0, len = items.length; i < len; i++) { - this._textContentItemsStr.push(items[i].str); - - appendText(this, items[i], styleCache); - } - }, - - _layoutText(textDiv) { - const textDivProperties = this._textDivProperties.get(textDiv); - - if (textDivProperties.isWhitespace) { - return; - } - - let transform = ""; - - if (textDivProperties.canvasWidth !== 0) { - const { - fontSize, - fontFamily - } = textDiv.style; - - if (fontSize !== this._layoutTextLastFontSize || fontFamily !== this._layoutTextLastFontFamily) { - this._layoutTextCtx.font = `${fontSize} ${fontFamily}`; - this._layoutTextLastFontSize = fontSize; - this._layoutTextLastFontFamily = fontFamily; - } - - const { - width - } = this._layoutTextCtx.measureText(textDiv.textContent); - - if (width > 0) { - textDivProperties.scale = textDivProperties.canvasWidth / width; - transform = `scaleX(${textDivProperties.scale})`; - } - } - - if (textDivProperties.angle !== 0) { - transform = `rotate(${textDivProperties.angle}deg) ${transform}`; - } - - if (transform.length > 0) { - if (this._enhanceTextSelection) { - textDivProperties.originalTransform = transform; - } - - textDiv.style.transform = transform; - } - - this._textDivProperties.set(textDiv, textDivProperties); - - this._container.appendChild(textDiv); - }, - - _render: function TextLayer_render(timeout) { - const capability = (0, _util.createPromiseCapability)(); - let styleCache = Object.create(null); - const canvas = document.createElement("canvas"); - canvas.mozOpaque = true; - this._layoutTextCtx = canvas.getContext("2d", { - alpha: false - }); - - if (this._textContent) { - const textItems = this._textContent.items; - const textStyles = this._textContent.styles; - - this._processItems(textItems, textStyles); - - capability.resolve(); - } else if (this._textContentStream) { - const pump = () => { - this._reader.read().then(({ - value, - done - }) => { - if (done) { - capability.resolve(); - return; - } - - Object.assign(styleCache, value.styles); - - this._processItems(value.items, styleCache); - - pump(); - }, capability.reject); - }; - - this._reader = this._textContentStream.getReader(); - pump(); - } else { - throw new Error('Neither "textContent" nor "textContentStream"' + " parameters specified."); - } - - capability.promise.then(() => { - styleCache = null; - - if (!timeout) { - render(this); - } else { - this._renderTimer = setTimeout(() => { - render(this); - this._renderTimer = null; - }, timeout); - } - }, this._capability.reject); - }, - expandTextDivs: function TextLayer_expandTextDivs(expandDivs) { - if (!this._enhanceTextSelection || !this._renderingDone) { - return; - } - - if (this._bounds !== null) { - expand(this); - this._bounds = null; - } - - const transformBuf = [], - paddingBuf = []; - - for (var i = 0, ii = this._textDivs.length; i < ii; i++) { - const div = this._textDivs[i]; - - const divProps = this._textDivProperties.get(div); - - if (divProps.isWhitespace) { - continue; - } - - if (expandDivs) { - transformBuf.length = 0; - paddingBuf.length = 0; - - if (divProps.originalTransform) { - transformBuf.push(divProps.originalTransform); - } - - if (divProps.paddingTop > 0) { - paddingBuf.push(`${divProps.paddingTop}px`); - transformBuf.push(`translateY(${-divProps.paddingTop}px)`); - } else { - paddingBuf.push(0); - } - - if (divProps.paddingRight > 0) { - paddingBuf.push(`${divProps.paddingRight / divProps.scale}px`); - } else { - paddingBuf.push(0); - } - - if (divProps.paddingBottom > 0) { - paddingBuf.push(`${divProps.paddingBottom}px`); - } else { - paddingBuf.push(0); - } - - if (divProps.paddingLeft > 0) { - paddingBuf.push(`${divProps.paddingLeft / divProps.scale}px`); - transformBuf.push(`translateX(${-divProps.paddingLeft / divProps.scale}px)`); - } else { - paddingBuf.push(0); - } - - div.style.padding = paddingBuf.join(" "); - - if (transformBuf.length) { - div.style.transform = transformBuf.join(" "); - } - } else { - div.style.padding = null; - div.style.transform = divProps.originalTransform; - } - } - } - }; - - function renderTextLayer(renderParameters) { - var task = new TextLayerRenderTask({ - textContent: renderParameters.textContent, - textContentStream: renderParameters.textContentStream, - container: renderParameters.container, - viewport: renderParameters.viewport, - textDivs: renderParameters.textDivs, - textContentItemsStr: renderParameters.textContentItemsStr, - enhanceTextSelection: renderParameters.enhanceTextSelection - }); - - task._render(renderParameters.timeout); - - return task; - } - - return renderTextLayer; -}(); - -exports.renderTextLayer = renderTextLayer; - -/***/ }), -/* 17 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.AnnotationLayer = void 0; - -var _display_utils = __w_pdfjs_require__(4); - -var _util = __w_pdfjs_require__(1); - -class AnnotationElementFactory { - static create(parameters) { - const subtype = parameters.data.annotationType; - - switch (subtype) { - case _util.AnnotationType.LINK: - return new LinkAnnotationElement(parameters); - - case _util.AnnotationType.TEXT: - return new TextAnnotationElement(parameters); - - case _util.AnnotationType.WIDGET: - const fieldType = parameters.data.fieldType; - - switch (fieldType) { - case "Tx": - return new TextWidgetAnnotationElement(parameters); - - case "Btn": - if (parameters.data.radioButton) { - return new RadioButtonWidgetAnnotationElement(parameters); - } else if (parameters.data.checkBox) { - return new CheckboxWidgetAnnotationElement(parameters); - } - - return new PushButtonWidgetAnnotationElement(parameters); - - case "Ch": - return new ChoiceWidgetAnnotationElement(parameters); - } - - return new WidgetAnnotationElement(parameters); - - case _util.AnnotationType.POPUP: - return new PopupAnnotationElement(parameters); - - case _util.AnnotationType.FREETEXT: - return new FreeTextAnnotationElement(parameters); - - case _util.AnnotationType.LINE: - return new LineAnnotationElement(parameters); - - case _util.AnnotationType.SQUARE: - return new SquareAnnotationElement(parameters); - - case _util.AnnotationType.CIRCLE: - return new CircleAnnotationElement(parameters); - - case _util.AnnotationType.POLYLINE: - return new PolylineAnnotationElement(parameters); - - case _util.AnnotationType.CARET: - return new CaretAnnotationElement(parameters); - - case _util.AnnotationType.INK: - return new InkAnnotationElement(parameters); - - case _util.AnnotationType.POLYGON: - return new PolygonAnnotationElement(parameters); - - case _util.AnnotationType.HIGHLIGHT: - return new HighlightAnnotationElement(parameters); - - case _util.AnnotationType.UNDERLINE: - return new UnderlineAnnotationElement(parameters); - - case _util.AnnotationType.SQUIGGLY: - return new SquigglyAnnotationElement(parameters); - - case _util.AnnotationType.STRIKEOUT: - return new StrikeOutAnnotationElement(parameters); - - case _util.AnnotationType.STAMP: - return new StampAnnotationElement(parameters); - - case _util.AnnotationType.FILEATTACHMENT: - return new FileAttachmentAnnotationElement(parameters); - - default: - return new AnnotationElement(parameters); - } - } - -} - -class AnnotationElement { - constructor(parameters, isRenderable = false, ignoreBorder = false) { - this.isRenderable = isRenderable; - this.data = parameters.data; - this.layer = parameters.layer; - this.page = parameters.page; - this.viewport = parameters.viewport; - this.linkService = parameters.linkService; - this.downloadManager = parameters.downloadManager; - this.imageResourcesPath = parameters.imageResourcesPath; - this.renderInteractiveForms = parameters.renderInteractiveForms; - this.svgFactory = parameters.svgFactory; - - if (isRenderable) { - this.container = this._createContainer(ignoreBorder); - } - } - - _createContainer(ignoreBorder = false) { - const data = this.data, - page = this.page, - viewport = this.viewport; - const container = document.createElement("section"); - let width = data.rect[2] - data.rect[0]; - let height = data.rect[3] - data.rect[1]; - container.setAttribute("data-annotation-id", data.id); - - const rect = _util.Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], data.rect[2], page.view[3] - data.rect[3] + page.view[1]]); - - container.style.transform = `matrix(${viewport.transform.join(",")})`; - container.style.transformOrigin = `-${rect[0]}px -${rect[1]}px`; - - if (!ignoreBorder && data.borderStyle.width > 0) { - container.style.borderWidth = `${data.borderStyle.width}px`; - - if (data.borderStyle.style !== _util.AnnotationBorderStyleType.UNDERLINE) { - width = width - 2 * data.borderStyle.width; - height = height - 2 * data.borderStyle.width; - } - - const horizontalRadius = data.borderStyle.horizontalCornerRadius; - const verticalRadius = data.borderStyle.verticalCornerRadius; - - if (horizontalRadius > 0 || verticalRadius > 0) { - const radius = `${horizontalRadius}px / ${verticalRadius}px`; - container.style.borderRadius = radius; - } - - switch (data.borderStyle.style) { - case _util.AnnotationBorderStyleType.SOLID: - container.style.borderStyle = "solid"; - break; - - case _util.AnnotationBorderStyleType.DASHED: - container.style.borderStyle = "dashed"; - break; - - case _util.AnnotationBorderStyleType.BEVELED: - (0, _util.warn)("Unimplemented border style: beveled"); - break; - - case _util.AnnotationBorderStyleType.INSET: - (0, _util.warn)("Unimplemented border style: inset"); - break; - - case _util.AnnotationBorderStyleType.UNDERLINE: - container.style.borderBottomStyle = "solid"; - break; - - default: - break; - } - - if (data.color) { - container.style.borderColor = _util.Util.makeCssRgb(data.color[0] | 0, data.color[1] | 0, data.color[2] | 0); - } else { - container.style.borderWidth = 0; - } - } - - container.style.left = `${rect[0]}px`; - container.style.top = `${rect[1]}px`; - container.style.width = `${width}px`; - container.style.height = `${height}px`; - return container; - } - - _createPopup(container, trigger, data) { - if (!trigger) { - trigger = document.createElement("div"); - trigger.style.height = container.style.height; - trigger.style.width = container.style.width; - container.appendChild(trigger); - } - - const popupElement = new PopupElement({ - container, - trigger, - color: data.color, - title: data.title, - modificationDate: data.modificationDate, - contents: data.contents, - hideWrapper: true - }); - const popup = popupElement.render(); - popup.style.left = container.style.width; - container.appendChild(popup); - } - - render() { - (0, _util.unreachable)("Abstract method `AnnotationElement.render` called"); - } - -} - -class LinkAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.url || parameters.data.dest || parameters.data.action); - super(parameters, isRenderable); - } - - render() { - this.container.className = "linkAnnotation"; - const { - data, - linkService - } = this; - const link = document.createElement("a"); - - if (data.url) { - (0, _display_utils.addLinkAttributes)(link, { - url: data.url, - target: data.newWindow ? _display_utils.LinkTarget.BLANK : linkService.externalLinkTarget, - rel: linkService.externalLinkRel, - enabled: linkService.externalLinkEnabled - }); - } else if (data.action) { - this._bindNamedAction(link, data.action); - } else { - this._bindLink(link, data.dest); - } - - this.container.appendChild(link); - return this.container; - } - - _bindLink(link, destination) { - link.href = this.linkService.getDestinationHash(destination); - - link.onclick = () => { - if (destination) { - this.linkService.navigateTo(destination); - } - - return false; - }; - - if (destination) { - link.className = "internalLink"; - } - } - - _bindNamedAction(link, action) { - link.href = this.linkService.getAnchorUrl(""); - - link.onclick = () => { - this.linkService.executeNamedAction(action); - return false; - }; - - link.className = "internalLink"; - } - -} - -class TextAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable); - } - - render() { - this.container.className = "textAnnotation"; - const image = document.createElement("img"); - image.style.height = this.container.style.height; - image.style.width = this.container.style.width; - image.src = this.imageResourcesPath + "annotation-" + this.data.name.toLowerCase() + ".svg"; - image.alt = "[{{type}} Annotation]"; - image.dataset.l10nId = "text_annotation_type"; - image.dataset.l10nArgs = JSON.stringify({ - type: this.data.name - }); - - if (!this.data.hasPopup) { - this._createPopup(this.container, image, this.data); - } - - this.container.appendChild(image); - return this.container; - } - -} - -class WidgetAnnotationElement extends AnnotationElement { - render() { - return this.container; - } - -} - -class TextWidgetAnnotationElement extends WidgetAnnotationElement { - constructor(parameters) { - const isRenderable = parameters.renderInteractiveForms || !parameters.data.hasAppearance && !!parameters.data.fieldValue; - super(parameters, isRenderable); - } - - render() { - const TEXT_ALIGNMENT = ["left", "center", "right"]; - this.container.className = "textWidgetAnnotation"; - let element = null; - - if (this.renderInteractiveForms) { - if (this.data.multiLine) { - element = document.createElement("textarea"); - element.textContent = this.data.fieldValue; - } else { - element = document.createElement("input"); - element.type = "text"; - element.setAttribute("value", this.data.fieldValue); - } - - element.disabled = this.data.readOnly; - - if (this.data.maxLen !== null) { - element.maxLength = this.data.maxLen; - } - - if (this.data.comb) { - const fieldWidth = this.data.rect[2] - this.data.rect[0]; - const combWidth = fieldWidth / this.data.maxLen; - element.classList.add("comb"); - element.style.letterSpacing = `calc(${combWidth}px - 1ch)`; - } - } else { - element = document.createElement("div"); - element.textContent = this.data.fieldValue; - element.style.verticalAlign = "middle"; - element.style.display = "table-cell"; - let font = null; - - if (this.data.fontRefName && this.page.commonObjs.has(this.data.fontRefName)) { - font = this.page.commonObjs.get(this.data.fontRefName); - } - - this._setTextStyle(element, font); - } - - if (this.data.textAlignment !== null) { - element.style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment]; - } - - this.container.appendChild(element); - return this.container; - } - - _setTextStyle(element, font) { - const style = element.style; - style.fontSize = `${this.data.fontSize}px`; - style.direction = this.data.fontDirection < 0 ? "rtl" : "ltr"; - - if (!font) { - return; - } - - let bold = "normal"; - - if (font.black) { - bold = "900"; - } else if (font.bold) { - bold = "bold"; - } - - style.fontWeight = bold; - style.fontStyle = font.italic ? "italic" : "normal"; - const fontFamily = font.loadedName ? `"${font.loadedName}", ` : ""; - const fallbackName = font.fallbackName || "Helvetica, sans-serif"; - style.fontFamily = fontFamily + fallbackName; - } - -} - -class CheckboxWidgetAnnotationElement extends WidgetAnnotationElement { - constructor(parameters) { - super(parameters, parameters.renderInteractiveForms); - } - - render() { - this.container.className = "buttonWidgetAnnotation checkBox"; - const element = document.createElement("input"); - element.disabled = this.data.readOnly; - element.type = "checkbox"; - - if (this.data.fieldValue && this.data.fieldValue !== "Off") { - element.setAttribute("checked", true); - } - - this.container.appendChild(element); - return this.container; - } - -} - -class RadioButtonWidgetAnnotationElement extends WidgetAnnotationElement { - constructor(parameters) { - super(parameters, parameters.renderInteractiveForms); - } - - render() { - this.container.className = "buttonWidgetAnnotation radioButton"; - const element = document.createElement("input"); - element.disabled = this.data.readOnly; - element.type = "radio"; - element.name = this.data.fieldName; - - if (this.data.fieldValue === this.data.buttonValue) { - element.setAttribute("checked", true); - } - - this.container.appendChild(element); - return this.container; - } - -} - -class PushButtonWidgetAnnotationElement extends LinkAnnotationElement { - render() { - const container = super.render(); - container.className = "buttonWidgetAnnotation pushButton"; - return container; - } - -} - -class ChoiceWidgetAnnotationElement extends WidgetAnnotationElement { - constructor(parameters) { - super(parameters, parameters.renderInteractiveForms); - } - - render() { - this.container.className = "choiceWidgetAnnotation"; - const selectElement = document.createElement("select"); - selectElement.disabled = this.data.readOnly; - - if (!this.data.combo) { - selectElement.size = this.data.options.length; - - if (this.data.multiSelect) { - selectElement.multiple = true; - } - } - - for (const option of this.data.options) { - const optionElement = document.createElement("option"); - optionElement.textContent = option.displayValue; - optionElement.value = option.exportValue; - - if (this.data.fieldValue.includes(option.displayValue)) { - optionElement.setAttribute("selected", true); - } - - selectElement.appendChild(optionElement); - } - - this.container.appendChild(selectElement); - return this.container; - } - -} - -class PopupAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.title || parameters.data.contents); - super(parameters, isRenderable); - } - - render() { - const IGNORE_TYPES = ["Line", "Square", "Circle", "PolyLine", "Polygon", "Ink"]; - this.container.className = "popupAnnotation"; - - if (IGNORE_TYPES.includes(this.data.parentType)) { - return this.container; - } - - const selector = `[data-annotation-id="${this.data.parentId}"]`; - const parentElement = this.layer.querySelector(selector); - - if (!parentElement) { - return this.container; - } - - const popup = new PopupElement({ - container: this.container, - trigger: parentElement, - color: this.data.color, - title: this.data.title, - modificationDate: this.data.modificationDate, - contents: this.data.contents - }); - const parentLeft = parseFloat(parentElement.style.left); - const parentWidth = parseFloat(parentElement.style.width); - this.container.style.transformOrigin = `-${parentLeft + parentWidth}px -${parentElement.style.top}`; - this.container.style.left = `${parentLeft + parentWidth}px`; - this.container.appendChild(popup.render()); - return this.container; - } - -} - -class PopupElement { - constructor(parameters) { - this.container = parameters.container; - this.trigger = parameters.trigger; - this.color = parameters.color; - this.title = parameters.title; - this.modificationDate = parameters.modificationDate; - this.contents = parameters.contents; - this.hideWrapper = parameters.hideWrapper || false; - this.pinned = false; - } - - render() { - const BACKGROUND_ENLIGHT = 0.7; - const wrapper = document.createElement("div"); - wrapper.className = "popupWrapper"; - this.hideElement = this.hideWrapper ? wrapper : this.container; - this.hideElement.setAttribute("hidden", true); - const popup = document.createElement("div"); - popup.className = "popup"; - const color = this.color; - - if (color) { - const r = BACKGROUND_ENLIGHT * (255 - color[0]) + color[0]; - const g = BACKGROUND_ENLIGHT * (255 - color[1]) + color[1]; - const b = BACKGROUND_ENLIGHT * (255 - color[2]) + color[2]; - popup.style.backgroundColor = _util.Util.makeCssRgb(r | 0, g | 0, b | 0); - } - - const title = document.createElement("h1"); - title.textContent = this.title; - popup.appendChild(title); - - const dateObject = _display_utils.PDFDateString.toDateObject(this.modificationDate); - - if (dateObject) { - const modificationDate = document.createElement("span"); - modificationDate.textContent = "{{date}}, {{time}}"; - modificationDate.dataset.l10nId = "annotation_date_string"; - modificationDate.dataset.l10nArgs = JSON.stringify({ - date: dateObject.toLocaleDateString(), - time: dateObject.toLocaleTimeString() - }); - popup.appendChild(modificationDate); - } - - const contents = this._formatContents(this.contents); - - popup.appendChild(contents); - this.trigger.addEventListener("click", this._toggle.bind(this)); - this.trigger.addEventListener("mouseover", this._show.bind(this, false)); - this.trigger.addEventListener("mouseout", this._hide.bind(this, false)); - popup.addEventListener("click", this._hide.bind(this, true)); - wrapper.appendChild(popup); - return wrapper; - } - - _formatContents(contents) { - const p = document.createElement("p"); - const lines = contents.split(/(?:\r\n?|\n)/); - - for (let i = 0, ii = lines.length; i < ii; ++i) { - const line = lines[i]; - p.appendChild(document.createTextNode(line)); - - if (i < ii - 1) { - p.appendChild(document.createElement("br")); - } - } - - return p; - } - - _toggle() { - if (this.pinned) { - this._hide(true); - } else { - this._show(true); - } - } - - _show(pin = false) { - if (pin) { - this.pinned = true; - } - - if (this.hideElement.hasAttribute("hidden")) { - this.hideElement.removeAttribute("hidden"); - this.container.style.zIndex += 1; - } - } - - _hide(unpin = true) { - if (unpin) { - this.pinned = false; - } - - if (!this.hideElement.hasAttribute("hidden") && !this.pinned) { - this.hideElement.setAttribute("hidden", true); - this.container.style.zIndex -= 1; - } - } - -} - -class FreeTextAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "freeTextAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class LineAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "lineAnnotation"; - const data = this.data; - const width = data.rect[2] - data.rect[0]; - const height = data.rect[3] - data.rect[1]; - const svg = this.svgFactory.create(width, height); - const line = this.svgFactory.createElement("svg:line"); - line.setAttribute("x1", data.rect[2] - data.lineCoordinates[0]); - line.setAttribute("y1", data.rect[3] - data.lineCoordinates[1]); - line.setAttribute("x2", data.rect[2] - data.lineCoordinates[2]); - line.setAttribute("y2", data.rect[3] - data.lineCoordinates[3]); - line.setAttribute("stroke-width", data.borderStyle.width || 1); - line.setAttribute("stroke", "transparent"); - svg.appendChild(line); - this.container.append(svg); - - this._createPopup(this.container, line, data); - - return this.container; - } - -} - -class SquareAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "squareAnnotation"; - const data = this.data; - const width = data.rect[2] - data.rect[0]; - const height = data.rect[3] - data.rect[1]; - const svg = this.svgFactory.create(width, height); - const borderWidth = data.borderStyle.width; - const square = this.svgFactory.createElement("svg:rect"); - square.setAttribute("x", borderWidth / 2); - square.setAttribute("y", borderWidth / 2); - square.setAttribute("width", width - borderWidth); - square.setAttribute("height", height - borderWidth); - square.setAttribute("stroke-width", borderWidth || 1); - square.setAttribute("stroke", "transparent"); - square.setAttribute("fill", "none"); - svg.appendChild(square); - this.container.append(svg); - - this._createPopup(this.container, square, data); - - return this.container; - } - -} - -class CircleAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "circleAnnotation"; - const data = this.data; - const width = data.rect[2] - data.rect[0]; - const height = data.rect[3] - data.rect[1]; - const svg = this.svgFactory.create(width, height); - const borderWidth = data.borderStyle.width; - const circle = this.svgFactory.createElement("svg:ellipse"); - circle.setAttribute("cx", width / 2); - circle.setAttribute("cy", height / 2); - circle.setAttribute("rx", width / 2 - borderWidth / 2); - circle.setAttribute("ry", height / 2 - borderWidth / 2); - circle.setAttribute("stroke-width", borderWidth || 1); - circle.setAttribute("stroke", "transparent"); - circle.setAttribute("fill", "none"); - svg.appendChild(circle); - this.container.append(svg); - - this._createPopup(this.container, circle, data); - - return this.container; - } - -} - -class PolylineAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - this.containerClassName = "polylineAnnotation"; - this.svgElementName = "svg:polyline"; - } - - render() { - this.container.className = this.containerClassName; - const data = this.data; - const width = data.rect[2] - data.rect[0]; - const height = data.rect[3] - data.rect[1]; - const svg = this.svgFactory.create(width, height); - let points = []; - - for (const coordinate of data.vertices) { - const x = coordinate.x - data.rect[0]; - const y = data.rect[3] - coordinate.y; - points.push(x + "," + y); - } - - points = points.join(" "); - const polyline = this.svgFactory.createElement(this.svgElementName); - polyline.setAttribute("points", points); - polyline.setAttribute("stroke-width", data.borderStyle.width || 1); - polyline.setAttribute("stroke", "transparent"); - polyline.setAttribute("fill", "none"); - svg.appendChild(polyline); - this.container.append(svg); - - this._createPopup(this.container, polyline, data); - - return this.container; - } - -} - -class PolygonAnnotationElement extends PolylineAnnotationElement { - constructor(parameters) { - super(parameters); - this.containerClassName = "polygonAnnotation"; - this.svgElementName = "svg:polygon"; - } - -} - -class CaretAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "caretAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class InkAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - this.containerClassName = "inkAnnotation"; - this.svgElementName = "svg:polyline"; - } - - render() { - this.container.className = this.containerClassName; - const data = this.data; - const width = data.rect[2] - data.rect[0]; - const height = data.rect[3] - data.rect[1]; - const svg = this.svgFactory.create(width, height); - - for (const inkList of data.inkLists) { - let points = []; - - for (const coordinate of inkList) { - const x = coordinate.x - data.rect[0]; - const y = data.rect[3] - coordinate.y; - points.push(`${x},${y}`); - } - - points = points.join(" "); - const polyline = this.svgFactory.createElement(this.svgElementName); - polyline.setAttribute("points", points); - polyline.setAttribute("stroke-width", data.borderStyle.width || 1); - polyline.setAttribute("stroke", "transparent"); - polyline.setAttribute("fill", "none"); - - this._createPopup(this.container, polyline, data); - - svg.appendChild(polyline); - } - - this.container.append(svg); - return this.container; - } - -} - -class HighlightAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "highlightAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class UnderlineAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "underlineAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class SquigglyAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "squigglyAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class StrikeOutAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "strikeoutAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class StampAnnotationElement extends AnnotationElement { - constructor(parameters) { - const isRenderable = !!(parameters.data.hasPopup || parameters.data.title || parameters.data.contents); - super(parameters, isRenderable, true); - } - - render() { - this.container.className = "stampAnnotation"; - - if (!this.data.hasPopup) { - this._createPopup(this.container, null, this.data); - } - - return this.container; - } - -} - -class FileAttachmentAnnotationElement extends AnnotationElement { - constructor(parameters) { - super(parameters, true); - const { - filename, - content - } = this.data.file; - this.filename = (0, _display_utils.getFilenameFromUrl)(filename); - this.content = content; - - if (this.linkService.eventBus) { - this.linkService.eventBus.dispatch("fileattachmentannotation", { - source: this, - id: (0, _util.stringToPDFString)(filename), - filename, - content - }); - } - } - - render() { - this.container.className = "fileAttachmentAnnotation"; - const trigger = document.createElement("div"); - trigger.style.height = this.container.style.height; - trigger.style.width = this.container.style.width; - trigger.addEventListener("dblclick", this._download.bind(this)); - - if (!this.data.hasPopup && (this.data.title || this.data.contents)) { - this._createPopup(this.container, trigger, this.data); - } - - this.container.appendChild(trigger); - return this.container; - } - - _download() { - if (!this.downloadManager) { - (0, _util.warn)("Download cannot be started due to unavailable download manager"); - return; - } - - this.downloadManager.downloadData(this.content, this.filename, ""); - } - -} - -class AnnotationLayer { - static render(parameters) { - const sortedAnnotations = [], - popupAnnotations = []; - - for (const data of parameters.annotations) { - if (!data) { - continue; - } - - if (data.annotationType === _util.AnnotationType.POPUP) { - popupAnnotations.push(data); - continue; - } - - sortedAnnotations.push(data); - } - - if (popupAnnotations.length) { - sortedAnnotations.push(...popupAnnotations); - } - - for (const data of sortedAnnotations) { - const element = AnnotationElementFactory.create({ - data, - layer: parameters.div, - page: parameters.page, - viewport: parameters.viewport, - linkService: parameters.linkService, - downloadManager: parameters.downloadManager, - imageResourcesPath: parameters.imageResourcesPath || "", - renderInteractiveForms: parameters.renderInteractiveForms || false, - svgFactory: new _display_utils.DOMSVGFactory() - }); - - if (element.isRenderable) { - parameters.div.appendChild(element.render()); - } - } - } - - static update(parameters) { - for (const data of parameters.annotations) { - const element = parameters.div.querySelector(`[data-annotation-id="${data.id}"]`); - - if (element) { - element.style.transform = `matrix(${parameters.viewport.transform.join(",")})`; - } - } - - parameters.div.removeAttribute("hidden"); - } - -} - -exports.AnnotationLayer = AnnotationLayer; - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.SVGGraphics = void 0; - -var _util = __w_pdfjs_require__(1); - -var _display_utils = __w_pdfjs_require__(4); - -var _is_node = __w_pdfjs_require__(7); - -let SVGGraphics = function () { - throw new Error("Not implemented: SVGGraphics"); -}; - -exports.SVGGraphics = SVGGraphics; -{ - const SVG_DEFAULTS = { - fontStyle: "normal", - fontWeight: "normal", - fillColor: "#000000" - }; - const XML_NS = "http://www.w3.org/XML/1998/namespace"; - const XLINK_NS = "http://www.w3.org/1999/xlink"; - const LINE_CAP_STYLES = ["butt", "round", "square"]; - const LINE_JOIN_STYLES = ["miter", "round", "bevel"]; - - const convertImgDataToPng = function () { - const PNG_HEADER = new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]); - const CHUNK_WRAPPER_SIZE = 12; - const crcTable = new Int32Array(256); - - for (let i = 0; i < 256; i++) { - let c = i; - - for (let h = 0; h < 8; h++) { - if (c & 1) { - c = 0xedb88320 ^ c >> 1 & 0x7fffffff; - } else { - c = c >> 1 & 0x7fffffff; - } - } - - crcTable[i] = c; - } - - function crc32(data, start, end) { - let crc = -1; - - for (let i = start; i < end; i++) { - const a = (crc ^ data[i]) & 0xff; - const b = crcTable[a]; - crc = crc >>> 8 ^ b; - } - - return crc ^ -1; - } - - function writePngChunk(type, body, data, offset) { - let p = offset; - const len = body.length; - data[p] = len >> 24 & 0xff; - data[p + 1] = len >> 16 & 0xff; - data[p + 2] = len >> 8 & 0xff; - data[p + 3] = len & 0xff; - p += 4; - data[p] = type.charCodeAt(0) & 0xff; - data[p + 1] = type.charCodeAt(1) & 0xff; - data[p + 2] = type.charCodeAt(2) & 0xff; - data[p + 3] = type.charCodeAt(3) & 0xff; - p += 4; - data.set(body, p); - p += body.length; - const crc = crc32(data, offset + 4, p); - data[p] = crc >> 24 & 0xff; - data[p + 1] = crc >> 16 & 0xff; - data[p + 2] = crc >> 8 & 0xff; - data[p + 3] = crc & 0xff; - } - - function adler32(data, start, end) { - let a = 1; - let b = 0; - - for (let i = start; i < end; ++i) { - a = (a + (data[i] & 0xff)) % 65521; - b = (b + a) % 65521; - } - - return b << 16 | a; - } - - function deflateSync(literals) { - if (!_is_node.isNodeJS) { - return deflateSyncUncompressed(literals); - } - - try { - let input; - - if (parseInt(process.versions.node) >= 8) { - input = literals; - } else { - input = Buffer.from(literals); - } - - const output = require("zlib").deflateSync(input, { - level: 9 - }); - - return output instanceof Uint8Array ? output : new Uint8Array(output); - } catch (e) { - (0, _util.warn)("Not compressing PNG because zlib.deflateSync is unavailable: " + e); - } - - return deflateSyncUncompressed(literals); - } - - function deflateSyncUncompressed(literals) { - let len = literals.length; - const maxBlockLength = 0xffff; - const deflateBlocks = Math.ceil(len / maxBlockLength); - const idat = new Uint8Array(2 + len + deflateBlocks * 5 + 4); - let pi = 0; - idat[pi++] = 0x78; - idat[pi++] = 0x9c; - let pos = 0; - - while (len > maxBlockLength) { - idat[pi++] = 0x00; - idat[pi++] = 0xff; - idat[pi++] = 0xff; - idat[pi++] = 0x00; - idat[pi++] = 0x00; - idat.set(literals.subarray(pos, pos + maxBlockLength), pi); - pi += maxBlockLength; - pos += maxBlockLength; - len -= maxBlockLength; - } - - idat[pi++] = 0x01; - idat[pi++] = len & 0xff; - idat[pi++] = len >> 8 & 0xff; - idat[pi++] = ~len & 0xffff & 0xff; - idat[pi++] = (~len & 0xffff) >> 8 & 0xff; - idat.set(literals.subarray(pos), pi); - pi += literals.length - pos; - const adler = adler32(literals, 0, literals.length); - idat[pi++] = adler >> 24 & 0xff; - idat[pi++] = adler >> 16 & 0xff; - idat[pi++] = adler >> 8 & 0xff; - idat[pi++] = adler & 0xff; - return idat; - } - - function encode(imgData, kind, forceDataSchema, isMask) { - const width = imgData.width; - const height = imgData.height; - let bitDepth, colorType, lineSize; - const bytes = imgData.data; - - switch (kind) { - case _util.ImageKind.GRAYSCALE_1BPP: - colorType = 0; - bitDepth = 1; - lineSize = width + 7 >> 3; - break; - - case _util.ImageKind.RGB_24BPP: - colorType = 2; - bitDepth = 8; - lineSize = width * 3; - break; - - case _util.ImageKind.RGBA_32BPP: - colorType = 6; - bitDepth = 8; - lineSize = width * 4; - break; - - default: - throw new Error("invalid format"); - } - - const literals = new Uint8Array((1 + lineSize) * height); - let offsetLiterals = 0, - offsetBytes = 0; - - for (let y = 0; y < height; ++y) { - literals[offsetLiterals++] = 0; - literals.set(bytes.subarray(offsetBytes, offsetBytes + lineSize), offsetLiterals); - offsetBytes += lineSize; - offsetLiterals += lineSize; - } - - if (kind === _util.ImageKind.GRAYSCALE_1BPP && isMask) { - offsetLiterals = 0; - - for (let y = 0; y < height; y++) { - offsetLiterals++; - - for (let i = 0; i < lineSize; i++) { - literals[offsetLiterals++] ^= 0xff; - } - } - } - - const ihdr = new Uint8Array([width >> 24 & 0xff, width >> 16 & 0xff, width >> 8 & 0xff, width & 0xff, height >> 24 & 0xff, height >> 16 & 0xff, height >> 8 & 0xff, height & 0xff, bitDepth, colorType, 0x00, 0x00, 0x00]); - const idat = deflateSync(literals); - const pngLength = PNG_HEADER.length + CHUNK_WRAPPER_SIZE * 3 + ihdr.length + idat.length; - const data = new Uint8Array(pngLength); - let offset = 0; - data.set(PNG_HEADER, offset); - offset += PNG_HEADER.length; - writePngChunk("IHDR", ihdr, data, offset); - offset += CHUNK_WRAPPER_SIZE + ihdr.length; - writePngChunk("IDATA", idat, data, offset); - offset += CHUNK_WRAPPER_SIZE + idat.length; - writePngChunk("IEND", new Uint8Array(0), data, offset); - return (0, _util.createObjectURL)(data, "image/png", forceDataSchema); - } - - return function convertImgDataToPng(imgData, forceDataSchema, isMask) { - const kind = imgData.kind === undefined ? _util.ImageKind.GRAYSCALE_1BPP : imgData.kind; - return encode(imgData, kind, forceDataSchema, isMask); - }; - }(); - - class SVGExtraState { - constructor() { - this.fontSizeScale = 1; - this.fontWeight = SVG_DEFAULTS.fontWeight; - this.fontSize = 0; - this.textMatrix = _util.IDENTITY_MATRIX; - this.fontMatrix = _util.FONT_IDENTITY_MATRIX; - this.leading = 0; - this.textRenderingMode = _util.TextRenderingMode.FILL; - this.textMatrixScale = 1; - this.x = 0; - this.y = 0; - this.lineX = 0; - this.lineY = 0; - this.charSpacing = 0; - this.wordSpacing = 0; - this.textHScale = 1; - this.textRise = 0; - this.fillColor = SVG_DEFAULTS.fillColor; - this.strokeColor = "#000000"; - this.fillAlpha = 1; - this.strokeAlpha = 1; - this.lineWidth = 1; - this.lineJoin = ""; - this.lineCap = ""; - this.miterLimit = 0; - this.dashArray = []; - this.dashPhase = 0; - this.dependencies = []; - this.activeClipUrl = null; - this.clipGroup = null; - this.maskId = ""; - } - - clone() { - return Object.create(this); - } - - setCurrentPoint(x, y) { - this.x = x; - this.y = y; - } - - } - - function opListToTree(opList) { - let opTree = []; - const tmp = []; - - for (const opListElement of opList) { - if (opListElement.fn === "save") { - opTree.push({ - fnId: 92, - fn: "group", - items: [] - }); - tmp.push(opTree); - opTree = opTree[opTree.length - 1].items; - continue; - } - - if (opListElement.fn === "restore") { - opTree = tmp.pop(); - } else { - opTree.push(opListElement); - } - } - - return opTree; - } - - function pf(value) { - if (Number.isInteger(value)) { - return value.toString(); - } - - const s = value.toFixed(10); - let i = s.length - 1; - - if (s[i] !== "0") { - return s; - } - - do { - i--; - } while (s[i] === "0"); - - return s.substring(0, s[i] === "." ? i : i + 1); - } - - function pm(m) { - if (m[4] === 0 && m[5] === 0) { - if (m[1] === 0 && m[2] === 0) { - if (m[0] === 1 && m[3] === 1) { - return ""; - } - - return `scale(${pf(m[0])} ${pf(m[3])})`; - } - - if (m[0] === m[3] && m[1] === -m[2]) { - const a = Math.acos(m[0]) * 180 / Math.PI; - return `rotate(${pf(a)})`; - } - } else { - if (m[0] === 1 && m[1] === 0 && m[2] === 0 && m[3] === 1) { - return `translate(${pf(m[4])} ${pf(m[5])})`; - } - } - - return `matrix(${pf(m[0])} ${pf(m[1])} ${pf(m[2])} ${pf(m[3])} ${pf(m[4])} ` + `${pf(m[5])})`; - } - - let clipCount = 0; - let maskCount = 0; - let shadingCount = 0; - exports.SVGGraphics = SVGGraphics = class SVGGraphics { - constructor(commonObjs, objs, forceDataSchema) { - this.svgFactory = new _display_utils.DOMSVGFactory(); - this.current = new SVGExtraState(); - this.transformMatrix = _util.IDENTITY_MATRIX; - this.transformStack = []; - this.extraStack = []; - this.commonObjs = commonObjs; - this.objs = objs; - this.pendingClip = null; - this.pendingEOFill = false; - this.embedFonts = false; - this.embeddedFonts = Object.create(null); - this.cssStyle = null; - this.forceDataSchema = !!forceDataSchema; - this._operatorIdMapping = []; - - for (const op in _util.OPS) { - this._operatorIdMapping[_util.OPS[op]] = op; - } - } - - save() { - this.transformStack.push(this.transformMatrix); - const old = this.current; - this.extraStack.push(old); - this.current = old.clone(); - } - - restore() { - this.transformMatrix = this.transformStack.pop(); - this.current = this.extraStack.pop(); - this.pendingClip = null; - this.tgrp = null; - } - - group(items) { - this.save(); - this.executeOpTree(items); - this.restore(); - } - - loadDependencies(operatorList) { - const fnArray = operatorList.fnArray; - const argsArray = operatorList.argsArray; - - for (let i = 0, ii = fnArray.length; i < ii; i++) { - if (fnArray[i] !== _util.OPS.dependency) { - continue; - } - - for (const obj of argsArray[i]) { - const objsPool = obj.startsWith("g_") ? this.commonObjs : this.objs; - const promise = new Promise(resolve => { - objsPool.get(obj, resolve); - }); - this.current.dependencies.push(promise); - } - } - - return Promise.all(this.current.dependencies); - } - - transform(a, b, c, d, e, f) { - const transformMatrix = [a, b, c, d, e, f]; - this.transformMatrix = _util.Util.transform(this.transformMatrix, transformMatrix); - this.tgrp = null; - } - - getSVG(operatorList, viewport) { - this.viewport = viewport; - - const svgElement = this._initialize(viewport); - - return this.loadDependencies(operatorList).then(() => { - this.transformMatrix = _util.IDENTITY_MATRIX; - this.executeOpTree(this.convertOpList(operatorList)); - return svgElement; - }); - } - - convertOpList(operatorList) { - const operatorIdMapping = this._operatorIdMapping; - const argsArray = operatorList.argsArray; - const fnArray = operatorList.fnArray; - const opList = []; - - for (let i = 0, ii = fnArray.length; i < ii; i++) { - const fnId = fnArray[i]; - opList.push({ - fnId, - fn: operatorIdMapping[fnId], - args: argsArray[i] - }); - } - - return opListToTree(opList); - } - - executeOpTree(opTree) { - for (const opTreeElement of opTree) { - const fn = opTreeElement.fn; - const fnId = opTreeElement.fnId; - const args = opTreeElement.args; - - switch (fnId | 0) { - case _util.OPS.beginText: - this.beginText(); - break; - - case _util.OPS.dependency: - break; - - case _util.OPS.setLeading: - this.setLeading(args); - break; - - case _util.OPS.setLeadingMoveText: - this.setLeadingMoveText(args[0], args[1]); - break; - - case _util.OPS.setFont: - this.setFont(args); - break; - - case _util.OPS.showText: - this.showText(args[0]); - break; - - case _util.OPS.showSpacedText: - this.showText(args[0]); - break; - - case _util.OPS.endText: - this.endText(); - break; - - case _util.OPS.moveText: - this.moveText(args[0], args[1]); - break; - - case _util.OPS.setCharSpacing: - this.setCharSpacing(args[0]); - break; - - case _util.OPS.setWordSpacing: - this.setWordSpacing(args[0]); - break; - - case _util.OPS.setHScale: - this.setHScale(args[0]); - break; - - case _util.OPS.setTextMatrix: - this.setTextMatrix(args[0], args[1], args[2], args[3], args[4], args[5]); - break; - - case _util.OPS.setTextRise: - this.setTextRise(args[0]); - break; - - case _util.OPS.setTextRenderingMode: - this.setTextRenderingMode(args[0]); - break; - - case _util.OPS.setLineWidth: - this.setLineWidth(args[0]); - break; - - case _util.OPS.setLineJoin: - this.setLineJoin(args[0]); - break; - - case _util.OPS.setLineCap: - this.setLineCap(args[0]); - break; - - case _util.OPS.setMiterLimit: - this.setMiterLimit(args[0]); - break; - - case _util.OPS.setFillRGBColor: - this.setFillRGBColor(args[0], args[1], args[2]); - break; - - case _util.OPS.setStrokeRGBColor: - this.setStrokeRGBColor(args[0], args[1], args[2]); - break; - - case _util.OPS.setStrokeColorN: - this.setStrokeColorN(args); - break; - - case _util.OPS.setFillColorN: - this.setFillColorN(args); - break; - - case _util.OPS.shadingFill: - this.shadingFill(args[0]); - break; - - case _util.OPS.setDash: - this.setDash(args[0], args[1]); - break; - - case _util.OPS.setRenderingIntent: - this.setRenderingIntent(args[0]); - break; - - case _util.OPS.setFlatness: - this.setFlatness(args[0]); - break; - - case _util.OPS.setGState: - this.setGState(args[0]); - break; - - case _util.OPS.fill: - this.fill(); - break; - - case _util.OPS.eoFill: - this.eoFill(); - break; - - case _util.OPS.stroke: - this.stroke(); - break; - - case _util.OPS.fillStroke: - this.fillStroke(); - break; - - case _util.OPS.eoFillStroke: - this.eoFillStroke(); - break; - - case _util.OPS.clip: - this.clip("nonzero"); - break; - - case _util.OPS.eoClip: - this.clip("evenodd"); - break; - - case _util.OPS.paintSolidColorImageMask: - this.paintSolidColorImageMask(); - break; - - case _util.OPS.paintJpegXObject: - this.paintJpegXObject(args[0], args[1], args[2]); - break; - - case _util.OPS.paintImageXObject: - this.paintImageXObject(args[0]); - break; - - case _util.OPS.paintInlineImageXObject: - this.paintInlineImageXObject(args[0]); - break; - - case _util.OPS.paintImageMaskXObject: - this.paintImageMaskXObject(args[0]); - break; - - case _util.OPS.paintFormXObjectBegin: - this.paintFormXObjectBegin(args[0], args[1]); - break; - - case _util.OPS.paintFormXObjectEnd: - this.paintFormXObjectEnd(); - break; - - case _util.OPS.closePath: - this.closePath(); - break; - - case _util.OPS.closeStroke: - this.closeStroke(); - break; - - case _util.OPS.closeFillStroke: - this.closeFillStroke(); - break; - - case _util.OPS.closeEOFillStroke: - this.closeEOFillStroke(); - break; - - case _util.OPS.nextLine: - this.nextLine(); - break; - - case _util.OPS.transform: - this.transform(args[0], args[1], args[2], args[3], args[4], args[5]); - break; - - case _util.OPS.constructPath: - this.constructPath(args[0], args[1]); - break; - - case _util.OPS.endPath: - this.endPath(); - break; - - case 92: - this.group(opTreeElement.items); - break; - - default: - (0, _util.warn)(`Unimplemented operator ${fn}`); - break; - } - } - } - - setWordSpacing(wordSpacing) { - this.current.wordSpacing = wordSpacing; - } - - setCharSpacing(charSpacing) { - this.current.charSpacing = charSpacing; - } - - nextLine() { - this.moveText(0, this.current.leading); - } - - setTextMatrix(a, b, c, d, e, f) { - const current = this.current; - current.textMatrix = current.lineMatrix = [a, b, c, d, e, f]; - current.textMatrixScale = Math.sqrt(a * a + b * b); - current.x = current.lineX = 0; - current.y = current.lineY = 0; - current.xcoords = []; - current.tspan = this.svgFactory.createElement("svg:tspan"); - current.tspan.setAttributeNS(null, "font-family", current.fontFamily); - current.tspan.setAttributeNS(null, "font-size", `${pf(current.fontSize)}px`); - current.tspan.setAttributeNS(null, "y", pf(-current.y)); - current.txtElement = this.svgFactory.createElement("svg:text"); - current.txtElement.appendChild(current.tspan); - } - - beginText() { - const current = this.current; - current.x = current.lineX = 0; - current.y = current.lineY = 0; - current.textMatrix = _util.IDENTITY_MATRIX; - current.lineMatrix = _util.IDENTITY_MATRIX; - current.textMatrixScale = 1; - current.tspan = this.svgFactory.createElement("svg:tspan"); - current.txtElement = this.svgFactory.createElement("svg:text"); - current.txtgrp = this.svgFactory.createElement("svg:g"); - current.xcoords = []; - } - - moveText(x, y) { - const current = this.current; - current.x = current.lineX += x; - current.y = current.lineY += y; - current.xcoords = []; - current.tspan = this.svgFactory.createElement("svg:tspan"); - current.tspan.setAttributeNS(null, "font-family", current.fontFamily); - current.tspan.setAttributeNS(null, "font-size", `${pf(current.fontSize)}px`); - current.tspan.setAttributeNS(null, "y", pf(-current.y)); - } - - showText(glyphs) { - const current = this.current; - const font = current.font; - const fontSize = current.fontSize; - - if (fontSize === 0) { - return; - } - - const charSpacing = current.charSpacing; - const wordSpacing = current.wordSpacing; - const fontDirection = current.fontDirection; - const textHScale = current.textHScale * fontDirection; - const vertical = font.vertical; - const widthAdvanceScale = fontSize * current.fontMatrix[0]; - let x = 0; - - for (const glyph of glyphs) { - if (glyph === null) { - x += fontDirection * wordSpacing; - continue; - } else if ((0, _util.isNum)(glyph)) { - x += -glyph * fontSize * 0.001; - continue; - } - - const width = glyph.width; - const character = glyph.fontChar; - const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing; - const charWidth = width * widthAdvanceScale + spacing * fontDirection; - - if (!glyph.isInFont && !font.missingFile) { - x += charWidth; - continue; - } - - current.xcoords.push(current.x + x); - current.tspan.textContent += character; - x += charWidth; - } - - if (vertical) { - current.y -= x * textHScale; - } else { - current.x += x * textHScale; - } - - current.tspan.setAttributeNS(null, "x", current.xcoords.map(pf).join(" ")); - current.tspan.setAttributeNS(null, "y", pf(-current.y)); - current.tspan.setAttributeNS(null, "font-family", current.fontFamily); - current.tspan.setAttributeNS(null, "font-size", `${pf(current.fontSize)}px`); - - if (current.fontStyle !== SVG_DEFAULTS.fontStyle) { - current.tspan.setAttributeNS(null, "font-style", current.fontStyle); - } - - if (current.fontWeight !== SVG_DEFAULTS.fontWeight) { - current.tspan.setAttributeNS(null, "font-weight", current.fontWeight); - } - - const fillStrokeMode = current.textRenderingMode & _util.TextRenderingMode.FILL_STROKE_MASK; - - if (fillStrokeMode === _util.TextRenderingMode.FILL || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - if (current.fillColor !== SVG_DEFAULTS.fillColor) { - current.tspan.setAttributeNS(null, "fill", current.fillColor); - } - - if (current.fillAlpha < 1) { - current.tspan.setAttributeNS(null, "fill-opacity", current.fillAlpha); - } - } else if (current.textRenderingMode === _util.TextRenderingMode.ADD_TO_PATH) { - current.tspan.setAttributeNS(null, "fill", "transparent"); - } else { - current.tspan.setAttributeNS(null, "fill", "none"); - } - - if (fillStrokeMode === _util.TextRenderingMode.STROKE || fillStrokeMode === _util.TextRenderingMode.FILL_STROKE) { - const lineWidthScale = 1 / (current.textMatrixScale || 1); - - this._setStrokeAttributes(current.tspan, lineWidthScale); - } - - let textMatrix = current.textMatrix; - - if (current.textRise !== 0) { - textMatrix = textMatrix.slice(); - textMatrix[5] += current.textRise; - } - - current.txtElement.setAttributeNS(null, "transform", `${pm(textMatrix)} scale(${pf(textHScale)}, -1)`); - current.txtElement.setAttributeNS(XML_NS, "xml:space", "preserve"); - current.txtElement.appendChild(current.tspan); - current.txtgrp.appendChild(current.txtElement); - - this._ensureTransformGroup().appendChild(current.txtElement); - } - - setLeadingMoveText(x, y) { - this.setLeading(-y); - this.moveText(x, y); - } - - addFontStyle(fontObj) { - if (!this.cssStyle) { - this.cssStyle = this.svgFactory.createElement("svg:style"); - this.cssStyle.setAttributeNS(null, "type", "text/css"); - this.defs.appendChild(this.cssStyle); - } - - const url = (0, _util.createObjectURL)(fontObj.data, fontObj.mimetype, this.forceDataSchema); - this.cssStyle.textContent += `@font-face { font-family: "${fontObj.loadedName}";` + ` src: url(${url}); }\n`; - } - - setFont(details) { - const current = this.current; - const fontObj = this.commonObjs.get(details[0]); - let size = details[1]; - current.font = fontObj; - - if (this.embedFonts && fontObj.data && !this.embeddedFonts[fontObj.loadedName]) { - this.addFontStyle(fontObj); - this.embeddedFonts[fontObj.loadedName] = fontObj; - } - - current.fontMatrix = fontObj.fontMatrix ? fontObj.fontMatrix : _util.FONT_IDENTITY_MATRIX; - let bold = "normal"; - - if (fontObj.black) { - bold = "900"; - } else if (fontObj.bold) { - bold = "bold"; - } - - const italic = fontObj.italic ? "italic" : "normal"; - - if (size < 0) { - size = -size; - current.fontDirection = -1; - } else { - current.fontDirection = 1; - } - - current.fontSize = size; - current.fontFamily = fontObj.loadedName; - current.fontWeight = bold; - current.fontStyle = italic; - current.tspan = this.svgFactory.createElement("svg:tspan"); - current.tspan.setAttributeNS(null, "y", pf(-current.y)); - current.xcoords = []; - } - - endText() { - const current = this.current; - - if (current.textRenderingMode & _util.TextRenderingMode.ADD_TO_PATH_FLAG && current.txtElement && current.txtElement.hasChildNodes()) { - current.element = current.txtElement; - this.clip("nonzero"); - this.endPath(); - } - } - - setLineWidth(width) { - if (width > 0) { - this.current.lineWidth = width; - } - } - - setLineCap(style) { - this.current.lineCap = LINE_CAP_STYLES[style]; - } - - setLineJoin(style) { - this.current.lineJoin = LINE_JOIN_STYLES[style]; - } - - setMiterLimit(limit) { - this.current.miterLimit = limit; - } - - setStrokeAlpha(strokeAlpha) { - this.current.strokeAlpha = strokeAlpha; - } - - setStrokeRGBColor(r, g, b) { - this.current.strokeColor = _util.Util.makeCssRgb(r, g, b); - } - - setFillAlpha(fillAlpha) { - this.current.fillAlpha = fillAlpha; - } - - setFillRGBColor(r, g, b) { - this.current.fillColor = _util.Util.makeCssRgb(r, g, b); - this.current.tspan = this.svgFactory.createElement("svg:tspan"); - this.current.xcoords = []; - } - - setStrokeColorN(args) { - this.current.strokeColor = this._makeColorN_Pattern(args); - } - - setFillColorN(args) { - this.current.fillColor = this._makeColorN_Pattern(args); - } - - shadingFill(args) { - const width = this.viewport.width; - const height = this.viewport.height; - - const inv = _util.Util.inverseTransform(this.transformMatrix); - - const bl = _util.Util.applyTransform([0, 0], inv); - - const br = _util.Util.applyTransform([0, height], inv); - - const ul = _util.Util.applyTransform([width, 0], inv); - - const ur = _util.Util.applyTransform([width, height], inv); - - const x0 = Math.min(bl[0], br[0], ul[0], ur[0]); - const y0 = Math.min(bl[1], br[1], ul[1], ur[1]); - const x1 = Math.max(bl[0], br[0], ul[0], ur[0]); - const y1 = Math.max(bl[1], br[1], ul[1], ur[1]); - const rect = this.svgFactory.createElement("svg:rect"); - rect.setAttributeNS(null, "x", x0); - rect.setAttributeNS(null, "y", y0); - rect.setAttributeNS(null, "width", x1 - x0); - rect.setAttributeNS(null, "height", y1 - y0); - rect.setAttributeNS(null, "fill", this._makeShadingPattern(args)); - - this._ensureTransformGroup().appendChild(rect); - } - - _makeColorN_Pattern(args) { - if (args[0] === "TilingPattern") { - return this._makeTilingPattern(args); - } - - return this._makeShadingPattern(args); - } - - _makeTilingPattern(args) { - const color = args[1]; - const operatorList = args[2]; - const matrix = args[3] || _util.IDENTITY_MATRIX; - const [x0, y0, x1, y1] = args[4]; - const xstep = args[5]; - const ystep = args[6]; - const paintType = args[7]; - const tilingId = `shading${shadingCount++}`; - - const [tx0, ty0] = _util.Util.applyTransform([x0, y0], matrix); - - const [tx1, ty1] = _util.Util.applyTransform([x1, y1], matrix); - - const [xscale, yscale] = _util.Util.singularValueDecompose2dScale(matrix); - - const txstep = xstep * xscale; - const tystep = ystep * yscale; - const tiling = this.svgFactory.createElement("svg:pattern"); - tiling.setAttributeNS(null, "id", tilingId); - tiling.setAttributeNS(null, "patternUnits", "userSpaceOnUse"); - tiling.setAttributeNS(null, "width", txstep); - tiling.setAttributeNS(null, "height", tystep); - tiling.setAttributeNS(null, "x", `${tx0}`); - tiling.setAttributeNS(null, "y", `${ty0}`); - const svg = this.svg; - const transformMatrix = this.transformMatrix; - const fillColor = this.current.fillColor; - const strokeColor = this.current.strokeColor; - const bbox = this.svgFactory.create(tx1 - tx0, ty1 - ty0); - this.svg = bbox; - this.transformMatrix = matrix; - - if (paintType === 2) { - const cssColor = _util.Util.makeCssRgb(...color); - - this.current.fillColor = cssColor; - this.current.strokeColor = cssColor; - } - - this.executeOpTree(this.convertOpList(operatorList)); - this.svg = svg; - this.transformMatrix = transformMatrix; - this.current.fillColor = fillColor; - this.current.strokeColor = strokeColor; - tiling.appendChild(bbox.childNodes[0]); - this.defs.appendChild(tiling); - return `url(#${tilingId})`; - } - - _makeShadingPattern(args) { - switch (args[0]) { - case "RadialAxial": - const shadingId = `shading${shadingCount++}`; - const colorStops = args[3]; - let gradient; - - switch (args[1]) { - case "axial": - const point0 = args[4]; - const point1 = args[5]; - gradient = this.svgFactory.createElement("svg:linearGradient"); - gradient.setAttributeNS(null, "id", shadingId); - gradient.setAttributeNS(null, "gradientUnits", "userSpaceOnUse"); - gradient.setAttributeNS(null, "x1", point0[0]); - gradient.setAttributeNS(null, "y1", point0[1]); - gradient.setAttributeNS(null, "x2", point1[0]); - gradient.setAttributeNS(null, "y2", point1[1]); - break; - - case "radial": - const focalPoint = args[4]; - const circlePoint = args[5]; - const focalRadius = args[6]; - const circleRadius = args[7]; - gradient = this.svgFactory.createElement("svg:radialGradient"); - gradient.setAttributeNS(null, "id", shadingId); - gradient.setAttributeNS(null, "gradientUnits", "userSpaceOnUse"); - gradient.setAttributeNS(null, "cx", circlePoint[0]); - gradient.setAttributeNS(null, "cy", circlePoint[1]); - gradient.setAttributeNS(null, "r", circleRadius); - gradient.setAttributeNS(null, "fx", focalPoint[0]); - gradient.setAttributeNS(null, "fy", focalPoint[1]); - gradient.setAttributeNS(null, "fr", focalRadius); - break; - - default: - throw new Error(`Unknown RadialAxial type: ${args[1]}`); - } - - for (const colorStop of colorStops) { - const stop = this.svgFactory.createElement("svg:stop"); - stop.setAttributeNS(null, "offset", colorStop[0]); - stop.setAttributeNS(null, "stop-color", colorStop[1]); - gradient.appendChild(stop); - } - - this.defs.appendChild(gradient); - return `url(#${shadingId})`; - - case "Mesh": - (0, _util.warn)("Unimplemented pattern Mesh"); - return null; - - case "Dummy": - return "hotpink"; - - default: - throw new Error(`Unknown IR type: ${args[0]}`); - } - } - - setDash(dashArray, dashPhase) { - this.current.dashArray = dashArray; - this.current.dashPhase = dashPhase; - } - - constructPath(ops, args) { - const current = this.current; - let x = current.x, - y = current.y; - let d = []; - let j = 0; - - for (const op of ops) { - switch (op | 0) { - case _util.OPS.rectangle: - x = args[j++]; - y = args[j++]; - const width = args[j++]; - const height = args[j++]; - const xw = x + width; - const yh = y + height; - d.push("M", pf(x), pf(y), "L", pf(xw), pf(y), "L", pf(xw), pf(yh), "L", pf(x), pf(yh), "Z"); - break; - - case _util.OPS.moveTo: - x = args[j++]; - y = args[j++]; - d.push("M", pf(x), pf(y)); - break; - - case _util.OPS.lineTo: - x = args[j++]; - y = args[j++]; - d.push("L", pf(x), pf(y)); - break; - - case _util.OPS.curveTo: - x = args[j + 4]; - y = args[j + 5]; - d.push("C", pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3]), pf(x), pf(y)); - j += 6; - break; - - case _util.OPS.curveTo2: - d.push("C", pf(x), pf(y), pf(args[j]), pf(args[j + 1]), pf(args[j + 2]), pf(args[j + 3])); - x = args[j + 2]; - y = args[j + 3]; - j += 4; - break; - - case _util.OPS.curveTo3: - x = args[j + 2]; - y = args[j + 3]; - d.push("C", pf(args[j]), pf(args[j + 1]), pf(x), pf(y), pf(x), pf(y)); - j += 4; - break; - - case _util.OPS.closePath: - d.push("Z"); - break; - } - } - - d = d.join(" "); - - if (current.path && ops.length > 0 && ops[0] !== _util.OPS.rectangle && ops[0] !== _util.OPS.moveTo) { - d = current.path.getAttributeNS(null, "d") + d; - } else { - current.path = this.svgFactory.createElement("svg:path"); - - this._ensureTransformGroup().appendChild(current.path); - } - - current.path.setAttributeNS(null, "d", d); - current.path.setAttributeNS(null, "fill", "none"); - current.element = current.path; - current.setCurrentPoint(x, y); - } - - endPath() { - const current = this.current; - current.path = null; - - if (!this.pendingClip) { - return; - } - - if (!current.element) { - this.pendingClip = null; - return; - } - - const clipId = `clippath${clipCount++}`; - const clipPath = this.svgFactory.createElement("svg:clipPath"); - clipPath.setAttributeNS(null, "id", clipId); - clipPath.setAttributeNS(null, "transform", pm(this.transformMatrix)); - const clipElement = current.element.cloneNode(true); - - if (this.pendingClip === "evenodd") { - clipElement.setAttributeNS(null, "clip-rule", "evenodd"); - } else { - clipElement.setAttributeNS(null, "clip-rule", "nonzero"); - } - - this.pendingClip = null; - clipPath.appendChild(clipElement); - this.defs.appendChild(clipPath); - - if (current.activeClipUrl) { - current.clipGroup = null; - this.extraStack.forEach(function (prev) { - prev.clipGroup = null; - }); - clipPath.setAttributeNS(null, "clip-path", current.activeClipUrl); - } - - current.activeClipUrl = `url(#${clipId})`; - this.tgrp = null; - } - - clip(type) { - this.pendingClip = type; - } - - closePath() { - const current = this.current; - - if (current.path) { - const d = `${current.path.getAttributeNS(null, "d")}Z`; - current.path.setAttributeNS(null, "d", d); - } - } - - setLeading(leading) { - this.current.leading = -leading; - } - - setTextRise(textRise) { - this.current.textRise = textRise; - } - - setTextRenderingMode(textRenderingMode) { - this.current.textRenderingMode = textRenderingMode; - } - - setHScale(scale) { - this.current.textHScale = scale / 100; - } - - setRenderingIntent(intent) {} - - setFlatness(flatness) {} - - setGState(states) { - for (const [key, value] of states) { - switch (key) { - case "LW": - this.setLineWidth(value); - break; - - case "LC": - this.setLineCap(value); - break; - - case "LJ": - this.setLineJoin(value); - break; - - case "ML": - this.setMiterLimit(value); - break; - - case "D": - this.setDash(value[0], value[1]); - break; - - case "RI": - this.setRenderingIntent(value); - break; - - case "FL": - this.setFlatness(value); - break; - - case "Font": - this.setFont(value); - break; - - case "CA": - this.setStrokeAlpha(value); - break; - - case "ca": - this.setFillAlpha(value); - break; - - default: - (0, _util.warn)(`Unimplemented graphic state operator ${key}`); - break; - } - } - } - - fill() { - const current = this.current; - - if (current.element) { - current.element.setAttributeNS(null, "fill", current.fillColor); - current.element.setAttributeNS(null, "fill-opacity", current.fillAlpha); - this.endPath(); - } - } - - stroke() { - const current = this.current; - - if (current.element) { - this._setStrokeAttributes(current.element); - - current.element.setAttributeNS(null, "fill", "none"); - this.endPath(); - } - } - - _setStrokeAttributes(element, lineWidthScale = 1) { - const current = this.current; - let dashArray = current.dashArray; - - if (lineWidthScale !== 1 && dashArray.length > 0) { - dashArray = dashArray.map(function (value) { - return lineWidthScale * value; - }); - } - - element.setAttributeNS(null, "stroke", current.strokeColor); - element.setAttributeNS(null, "stroke-opacity", current.strokeAlpha); - element.setAttributeNS(null, "stroke-miterlimit", pf(current.miterLimit)); - element.setAttributeNS(null, "stroke-linecap", current.lineCap); - element.setAttributeNS(null, "stroke-linejoin", current.lineJoin); - element.setAttributeNS(null, "stroke-width", pf(lineWidthScale * current.lineWidth) + "px"); - element.setAttributeNS(null, "stroke-dasharray", dashArray.map(pf).join(" ")); - element.setAttributeNS(null, "stroke-dashoffset", pf(lineWidthScale * current.dashPhase) + "px"); - } - - eoFill() { - if (this.current.element) { - this.current.element.setAttributeNS(null, "fill-rule", "evenodd"); - } - - this.fill(); - } - - fillStroke() { - this.stroke(); - this.fill(); - } - - eoFillStroke() { - if (this.current.element) { - this.current.element.setAttributeNS(null, "fill-rule", "evenodd"); - } - - this.fillStroke(); - } - - closeStroke() { - this.closePath(); - this.stroke(); - } - - closeFillStroke() { - this.closePath(); - this.fillStroke(); - } - - closeEOFillStroke() { - this.closePath(); - this.eoFillStroke(); - } - - paintSolidColorImageMask() { - const rect = this.svgFactory.createElement("svg:rect"); - rect.setAttributeNS(null, "x", "0"); - rect.setAttributeNS(null, "y", "0"); - rect.setAttributeNS(null, "width", "1px"); - rect.setAttributeNS(null, "height", "1px"); - rect.setAttributeNS(null, "fill", this.current.fillColor); - - this._ensureTransformGroup().appendChild(rect); - } - - paintJpegXObject(objId, w, h) { - const imgObj = this.objs.get(objId); - const imgEl = this.svgFactory.createElement("svg:image"); - imgEl.setAttributeNS(XLINK_NS, "xlink:href", imgObj.src); - imgEl.setAttributeNS(null, "width", pf(w)); - imgEl.setAttributeNS(null, "height", pf(h)); - imgEl.setAttributeNS(null, "x", "0"); - imgEl.setAttributeNS(null, "y", pf(-h)); - imgEl.setAttributeNS(null, "transform", `scale(${pf(1 / w)} ${pf(-1 / h)})`); - - this._ensureTransformGroup().appendChild(imgEl); - } - - paintImageXObject(objId) { - const imgData = this.objs.get(objId); - - if (!imgData) { - (0, _util.warn)(`Dependent image with object ID ${objId} is not ready yet`); - return; - } - - this.paintInlineImageXObject(imgData); - } - - paintInlineImageXObject(imgData, mask) { - const width = imgData.width; - const height = imgData.height; - const imgSrc = convertImgDataToPng(imgData, this.forceDataSchema, !!mask); - const cliprect = this.svgFactory.createElement("svg:rect"); - cliprect.setAttributeNS(null, "x", "0"); - cliprect.setAttributeNS(null, "y", "0"); - cliprect.setAttributeNS(null, "width", pf(width)); - cliprect.setAttributeNS(null, "height", pf(height)); - this.current.element = cliprect; - this.clip("nonzero"); - const imgEl = this.svgFactory.createElement("svg:image"); - imgEl.setAttributeNS(XLINK_NS, "xlink:href", imgSrc); - imgEl.setAttributeNS(null, "x", "0"); - imgEl.setAttributeNS(null, "y", pf(-height)); - imgEl.setAttributeNS(null, "width", pf(width) + "px"); - imgEl.setAttributeNS(null, "height", pf(height) + "px"); - imgEl.setAttributeNS(null, "transform", `scale(${pf(1 / width)} ${pf(-1 / height)})`); - - if (mask) { - mask.appendChild(imgEl); - } else { - this._ensureTransformGroup().appendChild(imgEl); - } - } - - paintImageMaskXObject(imgData) { - const current = this.current; - const width = imgData.width; - const height = imgData.height; - const fillColor = current.fillColor; - current.maskId = `mask${maskCount++}`; - const mask = this.svgFactory.createElement("svg:mask"); - mask.setAttributeNS(null, "id", current.maskId); - const rect = this.svgFactory.createElement("svg:rect"); - rect.setAttributeNS(null, "x", "0"); - rect.setAttributeNS(null, "y", "0"); - rect.setAttributeNS(null, "width", pf(width)); - rect.setAttributeNS(null, "height", pf(height)); - rect.setAttributeNS(null, "fill", fillColor); - rect.setAttributeNS(null, "mask", `url(#${current.maskId})`); - this.defs.appendChild(mask); - - this._ensureTransformGroup().appendChild(rect); - - this.paintInlineImageXObject(imgData, mask); - } - - paintFormXObjectBegin(matrix, bbox) { - if (Array.isArray(matrix) && matrix.length === 6) { - this.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]); - } - - if (bbox) { - const width = bbox[2] - bbox[0]; - const height = bbox[3] - bbox[1]; - const cliprect = this.svgFactory.createElement("svg:rect"); - cliprect.setAttributeNS(null, "x", bbox[0]); - cliprect.setAttributeNS(null, "y", bbox[1]); - cliprect.setAttributeNS(null, "width", pf(width)); - cliprect.setAttributeNS(null, "height", pf(height)); - this.current.element = cliprect; - this.clip("nonzero"); - this.endPath(); - } - } - - paintFormXObjectEnd() {} - - _initialize(viewport) { - const svg = this.svgFactory.create(viewport.width, viewport.height); - const definitions = this.svgFactory.createElement("svg:defs"); - svg.appendChild(definitions); - this.defs = definitions; - const rootGroup = this.svgFactory.createElement("svg:g"); - rootGroup.setAttributeNS(null, "transform", pm(viewport.transform)); - svg.appendChild(rootGroup); - this.svg = rootGroup; - return svg; - } - - _ensureClipGroup() { - if (!this.current.clipGroup) { - const clipGroup = this.svgFactory.createElement("svg:g"); - clipGroup.setAttributeNS(null, "clip-path", this.current.activeClipUrl); - this.svg.appendChild(clipGroup); - this.current.clipGroup = clipGroup; - } - - return this.current.clipGroup; - } - - _ensureTransformGroup() { - if (!this.tgrp) { - this.tgrp = this.svgFactory.createElement("svg:g"); - this.tgrp.setAttributeNS(null, "transform", pm(this.transformMatrix)); - - if (this.current.activeClipUrl) { - this._ensureClipGroup().appendChild(this.tgrp); - } else { - this.svg.appendChild(this.tgrp); - } - } - - return this.tgrp; - } - - }; -} - -/***/ }), -/* 19 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFNodeStream = void 0; - -var _util = __w_pdfjs_require__(1); - -var _network_utils = __w_pdfjs_require__(20); - -const fs = require("fs"); - -const http = require("http"); - -const https = require("https"); - -const url = require("url"); - -const fileUriRegex = /^file:\/\/\/[a-zA-Z]:\//; - -function parseUrl(sourceUrl) { - const parsedUrl = url.parse(sourceUrl); - - if (parsedUrl.protocol === "file:" || parsedUrl.host) { - return parsedUrl; - } - - if (/^[a-z]:[/\\]/i.test(sourceUrl)) { - return url.parse(`file:///${sourceUrl}`); - } - - if (!parsedUrl.host) { - parsedUrl.protocol = "file:"; - } - - return parsedUrl; -} - -class PDFNodeStream { - constructor(source) { - this.source = source; - this.url = parseUrl(source.url); - this.isHttp = this.url.protocol === "http:" || this.url.protocol === "https:"; - this.isFsUrl = this.url.protocol === "file:"; - this.httpHeaders = this.isHttp && source.httpHeaders || {}; - this._fullRequestReader = null; - this._rangeRequestReaders = []; - } - - get _progressiveDataLength() { - return this._fullRequestReader ? this._fullRequestReader._loaded : 0; - } - - getFullReader() { - (0, _util.assert)(!this._fullRequestReader); - this._fullRequestReader = this.isFsUrl ? new PDFNodeStreamFsFullReader(this) : new PDFNodeStreamFullReader(this); - return this._fullRequestReader; - } - - getRangeReader(start, end) { - if (end <= this._progressiveDataLength) { - return null; - } - - const rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end); - - this._rangeRequestReaders.push(rangeReader); - - return rangeReader; - } - - cancelAllRequests(reason) { - if (this._fullRequestReader) { - this._fullRequestReader.cancel(reason); - } - - const readers = this._rangeRequestReaders.slice(0); - - readers.forEach(function (reader) { - reader.cancel(reason); - }); - } - -} - -exports.PDFNodeStream = PDFNodeStream; - -class BaseFullReader { - constructor(stream) { - this._url = stream.url; - this._done = false; - this._storedError = null; - this.onProgress = null; - const source = stream.source; - this._contentLength = source.length; - this._loaded = 0; - this._filename = null; - this._disableRange = source.disableRange || false; - this._rangeChunkSize = source.rangeChunkSize; - - if (!this._rangeChunkSize && !this._disableRange) { - this._disableRange = true; - } - - this._isStreamingSupported = !source.disableStream; - this._isRangeSupported = !source.disableRange; - this._readableStream = null; - this._readCapability = (0, _util.createPromiseCapability)(); - this._headersCapability = (0, _util.createPromiseCapability)(); - } - - get headersReady() { - return this._headersCapability.promise; - } - - get filename() { - return this._filename; - } - - get contentLength() { - return this._contentLength; - } - - get isRangeSupported() { - return this._isRangeSupported; - } - - get isStreamingSupported() { - return this._isStreamingSupported; - } - - async read() { - await this._readCapability.promise; - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - if (this._storedError) { - throw this._storedError; - } - - const chunk = this._readableStream.read(); - - if (chunk === null) { - this._readCapability = (0, _util.createPromiseCapability)(); - return this.read(); - } - - this._loaded += chunk.length; - - if (this.onProgress) { - this.onProgress({ - loaded: this._loaded, - total: this._contentLength - }); - } - - const buffer = new Uint8Array(chunk).buffer; - return { - value: buffer, - done: false - }; - } - - cancel(reason) { - if (!this._readableStream) { - this._error(reason); - - return; - } - - this._readableStream.destroy(reason); - } - - _error(reason) { - this._storedError = reason; - - this._readCapability.resolve(); - } - - _setReadableStream(readableStream) { - this._readableStream = readableStream; - readableStream.on("readable", () => { - this._readCapability.resolve(); - }); - readableStream.on("end", () => { - readableStream.destroy(); - this._done = true; - - this._readCapability.resolve(); - }); - readableStream.on("error", reason => { - this._error(reason); - }); - - if (!this._isStreamingSupported && this._isRangeSupported) { - this._error(new _util.AbortException("streaming is disabled")); - } - - if (this._storedError) { - this._readableStream.destroy(this._storedError); - } - } - -} - -class BaseRangeReader { - constructor(stream) { - this._url = stream.url; - this._done = false; - this._storedError = null; - this.onProgress = null; - this._loaded = 0; - this._readableStream = null; - this._readCapability = (0, _util.createPromiseCapability)(); - const source = stream.source; - this._isStreamingSupported = !source.disableStream; - } - - get isStreamingSupported() { - return this._isStreamingSupported; - } - - async read() { - await this._readCapability.promise; - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - if (this._storedError) { - throw this._storedError; - } - - const chunk = this._readableStream.read(); - - if (chunk === null) { - this._readCapability = (0, _util.createPromiseCapability)(); - return this.read(); - } - - this._loaded += chunk.length; - - if (this.onProgress) { - this.onProgress({ - loaded: this._loaded - }); - } - - const buffer = new Uint8Array(chunk).buffer; - return { - value: buffer, - done: false - }; - } - - cancel(reason) { - if (!this._readableStream) { - this._error(reason); - - return; - } - - this._readableStream.destroy(reason); - } - - _error(reason) { - this._storedError = reason; - - this._readCapability.resolve(); - } - - _setReadableStream(readableStream) { - this._readableStream = readableStream; - readableStream.on("readable", () => { - this._readCapability.resolve(); - }); - readableStream.on("end", () => { - readableStream.destroy(); - this._done = true; - - this._readCapability.resolve(); - }); - readableStream.on("error", reason => { - this._error(reason); - }); - - if (this._storedError) { - this._readableStream.destroy(this._storedError); - } - } - -} - -function createRequestOptions(url, headers) { - return { - protocol: url.protocol, - auth: url.auth, - host: url.hostname, - port: url.port, - path: url.path, - method: "GET", - headers - }; -} - -class PDFNodeStreamFullReader extends BaseFullReader { - constructor(stream) { - super(stream); - - const handleResponse = response => { - if (response.statusCode === 404) { - const error = new _util.MissingPDFException(`Missing PDF "${this._url}".`); - this._storedError = error; - - this._headersCapability.reject(error); - - return; - } - - this._headersCapability.resolve(); - - this._setReadableStream(response); - - const getResponseHeader = name => { - return this._readableStream.headers[name.toLowerCase()]; - }; - - const { - allowRangeRequests, - suggestedLength - } = (0, _network_utils.validateRangeRequestCapabilities)({ - getResponseHeader, - isHttp: stream.isHttp, - rangeChunkSize: this._rangeChunkSize, - disableRange: this._disableRange - }); - this._isRangeSupported = allowRangeRequests; - this._contentLength = suggestedLength || this._contentLength; - this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader); - }; - - this._request = null; - - if (this._url.protocol === "http:") { - this._request = http.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse); - } else { - this._request = https.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse); - } - - this._request.on("error", reason => { - this._storedError = reason; - - this._headersCapability.reject(reason); - }); - - this._request.end(); - } - -} - -class PDFNodeStreamRangeReader extends BaseRangeReader { - constructor(stream, start, end) { - super(stream); - this._httpHeaders = {}; - - for (const property in stream.httpHeaders) { - const value = stream.httpHeaders[property]; - - if (typeof value === "undefined") { - continue; - } - - this._httpHeaders[property] = value; - } - - this._httpHeaders["Range"] = `bytes=${start}-${end - 1}`; - - const handleResponse = response => { - if (response.statusCode === 404) { - const error = new _util.MissingPDFException(`Missing PDF "${this._url}".`); - this._storedError = error; - return; - } - - this._setReadableStream(response); - }; - - this._request = null; - - if (this._url.protocol === "http:") { - this._request = http.request(createRequestOptions(this._url, this._httpHeaders), handleResponse); - } else { - this._request = https.request(createRequestOptions(this._url, this._httpHeaders), handleResponse); - } - - this._request.on("error", reason => { - this._storedError = reason; - }); - - this._request.end(); - } - -} - -class PDFNodeStreamFsFullReader extends BaseFullReader { - constructor(stream) { - super(stream); - let path = decodeURIComponent(this._url.path); - - if (fileUriRegex.test(this._url.href)) { - path = path.replace(/^\//, ""); - } - - fs.lstat(path, (error, stat) => { - if (error) { - if (error.code === "ENOENT") { - error = new _util.MissingPDFException(`Missing PDF "${path}".`); - } - - this._storedError = error; - - this._headersCapability.reject(error); - - return; - } - - this._contentLength = stat.size; - - this._setReadableStream(fs.createReadStream(path)); - - this._headersCapability.resolve(); - }); - } - -} - -class PDFNodeStreamFsRangeReader extends BaseRangeReader { - constructor(stream, start, end) { - super(stream); - let path = decodeURIComponent(this._url.path); - - if (fileUriRegex.test(this._url.href)) { - path = path.replace(/^\//, ""); - } - - this._setReadableStream(fs.createReadStream(path, { - start, - end: end - 1 - })); - } - -} - -/***/ }), -/* 20 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.createResponseStatusError = createResponseStatusError; -exports.extractFilenameFromHeader = extractFilenameFromHeader; -exports.validateRangeRequestCapabilities = validateRangeRequestCapabilities; -exports.validateResponseStatus = validateResponseStatus; - -var _util = __w_pdfjs_require__(1); - -var _content_disposition = __w_pdfjs_require__(21); - -function validateRangeRequestCapabilities({ - getResponseHeader, - isHttp, - rangeChunkSize, - disableRange -}) { - (0, _util.assert)(rangeChunkSize > 0, "Range chunk size must be larger than zero"); - const returnValues = { - allowRangeRequests: false, - suggestedLength: undefined - }; - const length = parseInt(getResponseHeader("Content-Length"), 10); - - if (!Number.isInteger(length)) { - return returnValues; - } - - returnValues.suggestedLength = length; - - if (length <= 2 * rangeChunkSize) { - return returnValues; - } - - if (disableRange || !isHttp) { - return returnValues; - } - - if (getResponseHeader("Accept-Ranges") !== "bytes") { - return returnValues; - } - - const contentEncoding = getResponseHeader("Content-Encoding") || "identity"; - - if (contentEncoding !== "identity") { - return returnValues; - } - - returnValues.allowRangeRequests = true; - return returnValues; -} - -function extractFilenameFromHeader(getResponseHeader) { - const contentDisposition = getResponseHeader("Content-Disposition"); - - if (contentDisposition) { - let filename = (0, _content_disposition.getFilenameFromContentDispositionHeader)(contentDisposition); - - if (filename.includes("%")) { - try { - filename = decodeURIComponent(filename); - } catch (ex) {} - } - - if (/\.pdf$/i.test(filename)) { - return filename; - } - } - - return null; -} - -function createResponseStatusError(status, url) { - if (status === 404 || status === 0 && url.startsWith("file:")) { - return new _util.MissingPDFException('Missing PDF "' + url + '".'); - } - - return new _util.UnexpectedResponseException("Unexpected server response (" + status + ') while retrieving PDF "' + url + '".', status); -} - -function validateResponseStatus(status) { - return status === 200 || status === 206; -} - -/***/ }), -/* 21 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getFilenameFromContentDispositionHeader = getFilenameFromContentDispositionHeader; - -function getFilenameFromContentDispositionHeader(contentDisposition) { - let needsEncodingFixup = true; - let tmp = toParamRegExp("filename\\*", "i").exec(contentDisposition); - - if (tmp) { - tmp = tmp[1]; - let filename = rfc2616unquote(tmp); - filename = unescape(filename); - filename = rfc5987decode(filename); - filename = rfc2047decode(filename); - return fixupEncoding(filename); - } - - tmp = rfc2231getparam(contentDisposition); - - if (tmp) { - const filename = rfc2047decode(tmp); - return fixupEncoding(filename); - } - - tmp = toParamRegExp("filename", "i").exec(contentDisposition); - - if (tmp) { - tmp = tmp[1]; - let filename = rfc2616unquote(tmp); - filename = rfc2047decode(filename); - return fixupEncoding(filename); - } - - function toParamRegExp(attributePattern, flags) { - return new RegExp("(?:^|;)\\s*" + attributePattern + "\\s*=\\s*" + "(" + '[^";\\s][^;\\s]*' + "|" + '"(?:[^"\\\\]|\\\\"?)+"?' + ")", flags); - } - - function textdecode(encoding, value) { - if (encoding) { - if (!/^[\x00-\xFF]+$/.test(value)) { - return value; - } - - try { - const decoder = new TextDecoder(encoding, { - fatal: true - }); - const bytes = Array.from(value, function (ch) { - return ch.charCodeAt(0) & 0xff; - }); - value = decoder.decode(new Uint8Array(bytes)); - needsEncodingFixup = false; - } catch (e) { - if (/^utf-?8$/i.test(encoding)) { - try { - value = decodeURIComponent(escape(value)); - needsEncodingFixup = false; - } catch (err) {} - } - } - } - - return value; - } - - function fixupEncoding(value) { - if (needsEncodingFixup && /[\x80-\xff]/.test(value)) { - value = textdecode("utf-8", value); - - if (needsEncodingFixup) { - value = textdecode("iso-8859-1", value); - } - } - - return value; - } - - function rfc2231getparam(contentDisposition) { - const matches = []; - let match; - const iter = toParamRegExp("filename\\*((?!0\\d)\\d+)(\\*?)", "ig"); - - while ((match = iter.exec(contentDisposition)) !== null) { - let [, n, quot, part] = match; - n = parseInt(n, 10); - - if (n in matches) { - if (n === 0) { - break; - } - - continue; - } - - matches[n] = [quot, part]; - } - - const parts = []; - - for (let n = 0; n < matches.length; ++n) { - if (!(n in matches)) { - break; - } - - let [quot, part] = matches[n]; - part = rfc2616unquote(part); - - if (quot) { - part = unescape(part); - - if (n === 0) { - part = rfc5987decode(part); - } - } - - parts.push(part); - } - - return parts.join(""); - } - - function rfc2616unquote(value) { - if (value.startsWith('"')) { - const parts = value.slice(1).split('\\"'); - - for (let i = 0; i < parts.length; ++i) { - const quotindex = parts[i].indexOf('"'); - - if (quotindex !== -1) { - parts[i] = parts[i].slice(0, quotindex); - parts.length = i + 1; - } - - parts[i] = parts[i].replace(/\\(.)/g, "$1"); - } - - value = parts.join('"'); - } - - return value; - } - - function rfc5987decode(extvalue) { - const encodingend = extvalue.indexOf("'"); - - if (encodingend === -1) { - return extvalue; - } - - const encoding = extvalue.slice(0, encodingend); - const langvalue = extvalue.slice(encodingend + 1); - const value = langvalue.replace(/^[^']*'/, ""); - return textdecode(encoding, value); - } - - function rfc2047decode(value) { - if (!value.startsWith("=?") || /[\x00-\x19\x80-\xff]/.test(value)) { - return value; - } - - return value.replace(/=\?([\w-]*)\?([QqBb])\?((?:[^?]|\?(?!=))*)\?=/g, function (_, charset, encoding, text) { - if (encoding === "q" || encoding === "Q") { - text = text.replace(/_/g, " "); - text = text.replace(/=([0-9a-fA-F]{2})/g, function (_, hex) { - return String.fromCharCode(parseInt(hex, 16)); - }); - return textdecode(charset, text); - } - - try { - text = atob(text); - } catch (e) {} - - return textdecode(charset, text); - }); - } - - return ""; -} - -/***/ }), -/* 22 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFNetworkStream = void 0; - -var _util = __w_pdfjs_require__(1); - -var _network_utils = __w_pdfjs_require__(20); - -; -const OK_RESPONSE = 200; -const PARTIAL_CONTENT_RESPONSE = 206; - -function getArrayBuffer(xhr) { - const data = xhr.response; - - if (typeof data !== "string") { - return data; - } - - const array = (0, _util.stringToBytes)(data); - return array.buffer; -} - -class NetworkManager { - constructor(url, args) { - this.url = url; - args = args || {}; - this.isHttp = /^https?:/i.test(url); - this.httpHeaders = this.isHttp && args.httpHeaders || {}; - this.withCredentials = args.withCredentials || false; - - this.getXhr = args.getXhr || function NetworkManager_getXhr() { - return new XMLHttpRequest(); - }; - - this.currXhrId = 0; - this.pendingRequests = Object.create(null); - } - - requestRange(begin, end, listeners) { - const args = { - begin, - end - }; - - for (const prop in listeners) { - args[prop] = listeners[prop]; - } - - return this.request(args); - } - - requestFull(listeners) { - return this.request(listeners); - } - - request(args) { - const xhr = this.getXhr(); - const xhrId = this.currXhrId++; - const pendingRequest = this.pendingRequests[xhrId] = { - xhr - }; - xhr.open("GET", this.url); - xhr.withCredentials = this.withCredentials; - - for (const property in this.httpHeaders) { - const value = this.httpHeaders[property]; - - if (typeof value === "undefined") { - continue; - } - - xhr.setRequestHeader(property, value); - } - - if (this.isHttp && "begin" in args && "end" in args) { - xhr.setRequestHeader("Range", `bytes=${args.begin}-${args.end - 1}`); - pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE; - } else { - pendingRequest.expectedStatus = OK_RESPONSE; - } - - xhr.responseType = "arraybuffer"; - - if (args.onError) { - xhr.onerror = function (evt) { - args.onError(xhr.status); - }; - } - - xhr.onreadystatechange = this.onStateChange.bind(this, xhrId); - xhr.onprogress = this.onProgress.bind(this, xhrId); - pendingRequest.onHeadersReceived = args.onHeadersReceived; - pendingRequest.onDone = args.onDone; - pendingRequest.onError = args.onError; - pendingRequest.onProgress = args.onProgress; - xhr.send(null); - return xhrId; - } - - onProgress(xhrId, evt) { - const pendingRequest = this.pendingRequests[xhrId]; - - if (!pendingRequest) { - return; - } - - if (pendingRequest.onProgress) { - pendingRequest.onProgress(evt); - } - } - - onStateChange(xhrId, evt) { - const pendingRequest = this.pendingRequests[xhrId]; - - if (!pendingRequest) { - return; - } - - const xhr = pendingRequest.xhr; - - if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) { - pendingRequest.onHeadersReceived(); - delete pendingRequest.onHeadersReceived; - } - - if (xhr.readyState !== 4) { - return; - } - - if (!(xhrId in this.pendingRequests)) { - return; - } - - delete this.pendingRequests[xhrId]; - - if (xhr.status === 0 && this.isHttp) { - if (pendingRequest.onError) { - pendingRequest.onError(xhr.status); - } - - return; - } - - const xhrStatus = xhr.status || OK_RESPONSE; - const ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE; - - if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) { - if (pendingRequest.onError) { - pendingRequest.onError(xhr.status); - } - - return; - } - - const chunk = getArrayBuffer(xhr); - - if (xhrStatus === PARTIAL_CONTENT_RESPONSE) { - const rangeHeader = xhr.getResponseHeader("Content-Range"); - const matches = /bytes (\d+)-(\d+)\/(\d+)/.exec(rangeHeader); - pendingRequest.onDone({ - begin: parseInt(matches[1], 10), - chunk - }); - } else if (chunk) { - pendingRequest.onDone({ - begin: 0, - chunk - }); - } else if (pendingRequest.onError) { - pendingRequest.onError(xhr.status); - } - } - - hasPendingRequests() { - for (const xhrId in this.pendingRequests) { - return true; - } - - return false; - } - - getRequestXhr(xhrId) { - return this.pendingRequests[xhrId].xhr; - } - - isPendingRequest(xhrId) { - return xhrId in this.pendingRequests; - } - - abortAllRequests() { - for (const xhrId in this.pendingRequests) { - this.abortRequest(xhrId | 0); - } - } - - abortRequest(xhrId) { - const xhr = this.pendingRequests[xhrId].xhr; - delete this.pendingRequests[xhrId]; - xhr.abort(); - } - -} - -class PDFNetworkStream { - constructor(source) { - this._source = source; - this._manager = new NetworkManager(source.url, { - httpHeaders: source.httpHeaders, - withCredentials: source.withCredentials - }); - this._rangeChunkSize = source.rangeChunkSize; - this._fullRequestReader = null; - this._rangeRequestReaders = []; - } - - _onRangeRequestReaderClosed(reader) { - const i = this._rangeRequestReaders.indexOf(reader); - - if (i >= 0) { - this._rangeRequestReaders.splice(i, 1); - } - } - - getFullReader() { - (0, _util.assert)(!this._fullRequestReader); - this._fullRequestReader = new PDFNetworkStreamFullRequestReader(this._manager, this._source); - return this._fullRequestReader; - } - - getRangeReader(begin, end) { - const reader = new PDFNetworkStreamRangeRequestReader(this._manager, begin, end); - reader.onClosed = this._onRangeRequestReaderClosed.bind(this); - - this._rangeRequestReaders.push(reader); - - return reader; - } - - cancelAllRequests(reason) { - if (this._fullRequestReader) { - this._fullRequestReader.cancel(reason); - } - - const readers = this._rangeRequestReaders.slice(0); - - readers.forEach(function (reader) { - reader.cancel(reason); - }); - } - -} - -exports.PDFNetworkStream = PDFNetworkStream; - -class PDFNetworkStreamFullRequestReader { - constructor(manager, source) { - this._manager = manager; - const args = { - onHeadersReceived: this._onHeadersReceived.bind(this), - onDone: this._onDone.bind(this), - onError: this._onError.bind(this), - onProgress: this._onProgress.bind(this) - }; - this._url = source.url; - this._fullRequestId = manager.requestFull(args); - this._headersReceivedCapability = (0, _util.createPromiseCapability)(); - this._disableRange = source.disableRange || false; - this._contentLength = source.length; - this._rangeChunkSize = source.rangeChunkSize; - - if (!this._rangeChunkSize && !this._disableRange) { - this._disableRange = true; - } - - this._isStreamingSupported = false; - this._isRangeSupported = false; - this._cachedChunks = []; - this._requests = []; - this._done = false; - this._storedError = undefined; - this._filename = null; - this.onProgress = null; - } - - _onHeadersReceived() { - const fullRequestXhrId = this._fullRequestId; - - const fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId); - - const getResponseHeader = name => { - return fullRequestXhr.getResponseHeader(name); - }; - - const { - allowRangeRequests, - suggestedLength - } = (0, _network_utils.validateRangeRequestCapabilities)({ - getResponseHeader, - isHttp: this._manager.isHttp, - rangeChunkSize: this._rangeChunkSize, - disableRange: this._disableRange - }); - - if (allowRangeRequests) { - this._isRangeSupported = true; - } - - this._contentLength = suggestedLength || this._contentLength; - this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader); - - if (this._isRangeSupported) { - this._manager.abortRequest(fullRequestXhrId); - } - - this._headersReceivedCapability.resolve(); - } - - _onDone(args) { - if (args) { - if (this._requests.length > 0) { - const requestCapability = this._requests.shift(); - - requestCapability.resolve({ - value: args.chunk, - done: false - }); - } else { - this._cachedChunks.push(args.chunk); - } - } - - this._done = true; - - if (this._cachedChunks.length > 0) { - return; - } - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - } - - _onError(status) { - const url = this._url; - const exception = (0, _network_utils.createResponseStatusError)(status, url); - this._storedError = exception; - - this._headersReceivedCapability.reject(exception); - - this._requests.forEach(function (requestCapability) { - requestCapability.reject(exception); - }); - - this._requests = []; - this._cachedChunks = []; - } - - _onProgress(data) { - if (this.onProgress) { - this.onProgress({ - loaded: data.loaded, - total: data.lengthComputable ? data.total : this._contentLength - }); - } - } - - get filename() { - return this._filename; - } - - get isRangeSupported() { - return this._isRangeSupported; - } - - get isStreamingSupported() { - return this._isStreamingSupported; - } - - get contentLength() { - return this._contentLength; - } - - get headersReady() { - return this._headersReceivedCapability.promise; - } - - async read() { - if (this._storedError) { - throw this._storedError; - } - - if (this._cachedChunks.length > 0) { - const chunk = this._cachedChunks.shift(); - - return { - value: chunk, - done: false - }; - } - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - const requestCapability = (0, _util.createPromiseCapability)(); - - this._requests.push(requestCapability); - - return requestCapability.promise; - } - - cancel(reason) { - this._done = true; - - this._headersReceivedCapability.reject(reason); - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - - if (this._manager.isPendingRequest(this._fullRequestId)) { - this._manager.abortRequest(this._fullRequestId); - } - - this._fullRequestReader = null; - } - -} - -class PDFNetworkStreamRangeRequestReader { - constructor(manager, begin, end) { - this._manager = manager; - const args = { - onDone: this._onDone.bind(this), - onProgress: this._onProgress.bind(this) - }; - this._requestId = manager.requestRange(begin, end, args); - this._requests = []; - this._queuedChunk = null; - this._done = false; - this.onProgress = null; - this.onClosed = null; - } - - _close() { - if (this.onClosed) { - this.onClosed(this); - } - } - - _onDone(data) { - const chunk = data.chunk; - - if (this._requests.length > 0) { - const requestCapability = this._requests.shift(); - - requestCapability.resolve({ - value: chunk, - done: false - }); - } else { - this._queuedChunk = chunk; - } - - this._done = true; - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - - this._close(); - } - - _onProgress(evt) { - if (!this.isStreamingSupported && this.onProgress) { - this.onProgress({ - loaded: evt.loaded - }); - } - } - - get isStreamingSupported() { - return false; - } - - async read() { - if (this._queuedChunk !== null) { - const chunk = this._queuedChunk; - this._queuedChunk = null; - return { - value: chunk, - done: false - }; - } - - if (this._done) { - return { - value: undefined, - done: true - }; - } - - const requestCapability = (0, _util.createPromiseCapability)(); - - this._requests.push(requestCapability); - - return requestCapability.promise; - } - - cancel(reason) { - this._done = true; - - this._requests.forEach(function (requestCapability) { - requestCapability.resolve({ - value: undefined, - done: true - }); - }); - - this._requests = []; - - if (this._manager.isPendingRequest(this._requestId)) { - this._manager.abortRequest(this._requestId); - } - - this._close(); - } - -} - -/***/ }), -/* 23 */ -/***/ (function(module, exports, __w_pdfjs_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFFetchStream = void 0; - -var _util = __w_pdfjs_require__(1); - -var _network_utils = __w_pdfjs_require__(20); - -function createFetchOptions(headers, withCredentials, abortController) { - return { - method: "GET", - headers, - signal: abortController && abortController.signal, - mode: "cors", - credentials: withCredentials ? "include" : "same-origin", - redirect: "follow" - }; -} - -function createHeaders(httpHeaders) { - const headers = new Headers(); - - for (const property in httpHeaders) { - const value = httpHeaders[property]; - - if (typeof value === "undefined") { - continue; - } - - headers.append(property, value); - } - - return headers; -} - -class PDFFetchStream { - constructor(source) { - this.source = source; - this.isHttp = /^https?:/i.test(source.url); - this.httpHeaders = this.isHttp && source.httpHeaders || {}; - this._fullRequestReader = null; - this._rangeRequestReaders = []; - } - - get _progressiveDataLength() { - return this._fullRequestReader ? this._fullRequestReader._loaded : 0; - } - - getFullReader() { - (0, _util.assert)(!this._fullRequestReader); - this._fullRequestReader = new PDFFetchStreamReader(this); - return this._fullRequestReader; - } - - getRangeReader(begin, end) { - if (end <= this._progressiveDataLength) { - return null; - } - - const reader = new PDFFetchStreamRangeReader(this, begin, end); - - this._rangeRequestReaders.push(reader); - - return reader; - } - - cancelAllRequests(reason) { - if (this._fullRequestReader) { - this._fullRequestReader.cancel(reason); - } - - const readers = this._rangeRequestReaders.slice(0); - - readers.forEach(function (reader) { - reader.cancel(reason); - }); - } - -} - -exports.PDFFetchStream = PDFFetchStream; - -class PDFFetchStreamReader { - constructor(stream) { - this._stream = stream; - this._reader = null; - this._loaded = 0; - this._filename = null; - const source = stream.source; - this._withCredentials = source.withCredentials || false; - this._contentLength = source.length; - this._headersCapability = (0, _util.createPromiseCapability)(); - this._disableRange = source.disableRange || false; - this._rangeChunkSize = source.rangeChunkSize; - - if (!this._rangeChunkSize && !this._disableRange) { - this._disableRange = true; - } - - if (typeof AbortController !== "undefined") { - this._abortController = new AbortController(); - } - - this._isStreamingSupported = !source.disableStream; - this._isRangeSupported = !source.disableRange; - this._headers = createHeaders(this._stream.httpHeaders); - const url = source.url; - fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => { - if (!(0, _network_utils.validateResponseStatus)(response.status)) { - throw (0, _network_utils.createResponseStatusError)(response.status, url); - } - - this._reader = response.body.getReader(); - - this._headersCapability.resolve(); - - const getResponseHeader = name => { - return response.headers.get(name); - }; - - const { - allowRangeRequests, - suggestedLength - } = (0, _network_utils.validateRangeRequestCapabilities)({ - getResponseHeader, - isHttp: this._stream.isHttp, - rangeChunkSize: this._rangeChunkSize, - disableRange: this._disableRange - }); - this._isRangeSupported = allowRangeRequests; - this._contentLength = suggestedLength || this._contentLength; - this._filename = (0, _network_utils.extractFilenameFromHeader)(getResponseHeader); - - if (!this._isStreamingSupported && this._isRangeSupported) { - this.cancel(new _util.AbortException("Streaming is disabled.")); - } - }).catch(this._headersCapability.reject); - this.onProgress = null; - } - - get headersReady() { - return this._headersCapability.promise; - } - - get filename() { - return this._filename; - } - - get contentLength() { - return this._contentLength; - } - - get isRangeSupported() { - return this._isRangeSupported; - } - - get isStreamingSupported() { - return this._isStreamingSupported; - } - - async read() { - await this._headersCapability.promise; - const { - value, - done - } = await this._reader.read(); - - if (done) { - return { - value, - done - }; - } - - this._loaded += value.byteLength; - - if (this.onProgress) { - this.onProgress({ - loaded: this._loaded, - total: this._contentLength - }); - } - - const buffer = new Uint8Array(value).buffer; - return { - value: buffer, - done: false - }; - } - - cancel(reason) { - if (this._reader) { - this._reader.cancel(reason); - } - - if (this._abortController) { - this._abortController.abort(); - } - } - -} - -class PDFFetchStreamRangeReader { - constructor(stream, begin, end) { - this._stream = stream; - this._reader = null; - this._loaded = 0; - const source = stream.source; - this._withCredentials = source.withCredentials || false; - this._readCapability = (0, _util.createPromiseCapability)(); - this._isStreamingSupported = !source.disableStream; - - if (typeof AbortController !== "undefined") { - this._abortController = new AbortController(); - } - - this._headers = createHeaders(this._stream.httpHeaders); - - this._headers.append("Range", `bytes=${begin}-${end - 1}`); - - const url = source.url; - fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => { - if (!(0, _network_utils.validateResponseStatus)(response.status)) { - throw (0, _network_utils.createResponseStatusError)(response.status, url); - } - - this._readCapability.resolve(); - - this._reader = response.body.getReader(); - }); - this.onProgress = null; - } - - get isStreamingSupported() { - return this._isStreamingSupported; - } - - async read() { - await this._readCapability.promise; - const { - value, - done - } = await this._reader.read(); - - if (done) { - return { - value, - done - }; - } - - this._loaded += value.byteLength; - - if (this.onProgress) { - this.onProgress({ - loaded: this._loaded - }); - } - - const buffer = new Uint8Array(value).buffer; - return { - value: buffer, - done: false - }; - } - - cancel(reason) { - if (this._reader) { - this._reader.cancel(reason); - } - - if (this._abortController) { - this._abortController.abort(); - } - } - -} - -/***/ }) -/******/ ]); -}); -//# sourceMappingURL=pdf.js.map \ No newline at end of file diff --git a/cookbook/static/pdfjs/pdf.js.map b/cookbook/static/pdfjs/pdf.js.map deleted file mode 100644 index 3f4880362..000000000 --- a/cookbook/static/pdfjs/pdf.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/webpack/bootstrap","webpack://pdfjs-dist/build/pdf/src/pdf.js","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/shared/compatibility.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/display_utils.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.js","webpack://pdfjs-dist/build/pdf/src/display/api_compatibility.js","webpack://pdfjs-dist/build/pdf/src/shared/is_node.js","webpack://pdfjs-dist/build/pdf/src/display/canvas.js","webpack://pdfjs-dist/build/pdf/src/display/pattern_helper.js","webpack://pdfjs-dist/build/pdf/src/display/worker_options.js","webpack://pdfjs-dist/build/pdf/src/shared/message_handler.js","webpack://pdfjs-dist/build/pdf/src/display/metadata.js","webpack://pdfjs-dist/build/pdf/src/display/xml_parser.js","webpack://pdfjs-dist/build/pdf/src/display/transport_stream.js","webpack://pdfjs-dist/build/pdf/src/display/webgl.js","webpack://pdfjs-dist/build/pdf/src/display/text_layer.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_layer.js","webpack://pdfjs-dist/build/pdf/src/display/svg.js","webpack://pdfjs-dist/build/pdf/src/display/node_stream.js","webpack://pdfjs-dist/build/pdf/src/display/network_utils.js","webpack://pdfjs-dist/build/pdf/src/display/content_disposition.js","webpack://pdfjs-dist/build/pdf/src/display/network.js","webpack://pdfjs-dist/build/pdf/src/display/fetch_stream.js"],"names":["pdfjsVersion","pdfjsBuild","pdfjsSharedUtil","require","pdfjsDisplayAPI","pdfjsDisplayTextLayer","pdfjsDisplayAnnotationLayer","pdfjsDisplayDisplayUtils","pdfjsDisplaySVG","pdfjsDisplayWorkerOptions","pdfjsDisplayAPICompatibility","PDFNodeStream","params","PDFNetworkStream","PDFFetchStream","exports","IDENTITY_MATRIX","FONT_IDENTITY_MATRIX","NativeImageDecoding","NONE","DECODE","DISPLAY","PermissionFlag","PRINT","MODIFY_CONTENTS","COPY","MODIFY_ANNOTATIONS","FILL_INTERACTIVE_FORMS","COPY_FOR_ACCESSIBILITY","ASSEMBLE","PRINT_HIGH_QUALITY","TextRenderingMode","FILL","STROKE","FILL_STROKE","INVISIBLE","FILL_ADD_TO_PATH","STROKE_ADD_TO_PATH","FILL_STROKE_ADD_TO_PATH","ADD_TO_PATH","FILL_STROKE_MASK","ADD_TO_PATH_FLAG","ImageKind","GRAYSCALE_1BPP","RGB_24BPP","RGBA_32BPP","AnnotationType","TEXT","LINK","FREETEXT","LINE","SQUARE","CIRCLE","POLYGON","POLYLINE","HIGHLIGHT","UNDERLINE","SQUIGGLY","STRIKEOUT","STAMP","CARET","INK","POPUP","FILEATTACHMENT","SOUND","MOVIE","WIDGET","SCREEN","PRINTERMARK","TRAPNET","WATERMARK","THREED","REDACT","AnnotationStateModelType","MARKED","REVIEW","AnnotationMarkedState","UNMARKED","AnnotationReviewState","ACCEPTED","REJECTED","CANCELLED","COMPLETED","AnnotationReplyType","GROUP","REPLY","AnnotationFlag","HIDDEN","NOZOOM","NOROTATE","NOVIEW","READONLY","LOCKED","TOGGLENOVIEW","LOCKEDCONTENTS","AnnotationFieldFlag","REQUIRED","NOEXPORT","MULTILINE","PASSWORD","NOTOGGLETOOFF","RADIO","PUSHBUTTON","COMBO","EDIT","SORT","FILESELECT","MULTISELECT","DONOTSPELLCHECK","DONOTSCROLL","COMB","RICHTEXT","RADIOSINUNISON","COMMITONSELCHANGE","AnnotationBorderStyleType","SOLID","DASHED","BEVELED","INSET","StreamType","UNKNOWN","FLATE","LZW","DCT","JPX","JBIG","A85","AHX","CCF","RLX","FontType","TYPE1","TYPE1C","CIDFONTTYPE0","CIDFONTTYPE0C","TRUETYPE","CIDFONTTYPE2","TYPE3","OPENTYPE","TYPE0","MMTYPE1","VerbosityLevel","ERRORS","WARNINGS","INFOS","CMapCompressionType","BINARY","STREAM","OPS","dependency","setLineWidth","setLineCap","setLineJoin","setMiterLimit","setDash","setRenderingIntent","setFlatness","setGState","save","restore","transform","moveTo","lineTo","curveTo","curveTo2","curveTo3","closePath","rectangle","stroke","closeStroke","fill","eoFill","fillStroke","eoFillStroke","closeFillStroke","closeEOFillStroke","endPath","clip","eoClip","beginText","endText","setCharSpacing","setWordSpacing","setHScale","setLeading","setFont","setTextRenderingMode","setTextRise","moveText","setLeadingMoveText","setTextMatrix","nextLine","showText","showSpacedText","nextLineShowText","nextLineSetSpacingShowText","setCharWidth","setCharWidthAndBounds","setStrokeColorSpace","setFillColorSpace","setStrokeColor","setStrokeColorN","setFillColor","setFillColorN","setStrokeGray","setFillGray","setStrokeRGBColor","setFillRGBColor","setStrokeCMYKColor","setFillCMYKColor","shadingFill","beginInlineImage","beginImageData","endInlineImage","paintXObject","markPoint","markPointProps","beginMarkedContent","beginMarkedContentProps","endMarkedContent","beginCompat","endCompat","paintFormXObjectBegin","paintFormXObjectEnd","beginGroup","endGroup","beginAnnotations","endAnnotations","beginAnnotation","endAnnotation","paintJpegXObject","paintImageMaskXObject","paintImageMaskXObjectGroup","paintImageXObject","paintInlineImageXObject","paintInlineImageXObjectGroup","paintImageXObjectRepeat","paintImageMaskXObjectRepeat","paintSolidColorImageMask","constructPath","UNSUPPORTED_FEATURES","unknown","forms","javaScript","smask","shadingPattern","font","PasswordResponses","NEED_PASSWORD","INCORRECT_PASSWORD","verbosity","Number","console","unreachable","base","other","url","absoluteUrl","baseUrl","_isValidProtocol","Object","enumerable","configurable","writable","BaseException","constructor","NullCharactersRegExp","warn","str","assert","bytes","length","MAX_ARGUMENT_COUNT","String","strBuf","i","chunkEnd","Math","chunk","arr","resultLength","arrayByteLength","pos","data","item","stringToBytes","itemLength","value","buffer8","view32","IsLittleEndianCached","shadow","isLittleEndian","IsEvalSupportedCached","isEvalSupported","rgbBuf","m1","m2","xt","p","m","yt","d","p1","Util","p2","r","p3","p4","v","transpose","a","b","c","first","second","sx","sy","rect","orderedX","rect1","rect2","orderedY","result","PDFStringTranslateTable","code","decodeURIComponent","escape","unescape","encodeURIComponent","arr1","arr2","element","capability","isSettled","get","resolve","reject","createObjectURL","digits","forceDataSchema","URL","blob","type","buffer","ii","b1","b2","b3","d1","d2","d3","d4","DEFAULT_RANGE_CHUNK_SIZE","RENDERING_CANCELLED_TIMEOUT","createPDFNetworkStream","task","source","isArrayBuffer","src","range","rangeTransport","worker","key","window","pdfBytes","isNaN","NativeImageDecoderValues","apiCompatibilityParams","setVerbosityLevel","workerParams","port","GlobalWorkerOptions","PDFWorker","docId","networkStream","initialData","progressiveDone","disableRange","disableStream","httpHeaders","withCredentials","rangeChunkSize","messageHandler","transport","Promise","pdfDataRangeTransport","apiVersion","password","disableAutoFetch","maxImageSize","disableFontFace","disableCreateObjectURL","postMessageTransfers","docBaseUrl","nativeImageDecoderSupport","ignoreErrors","PDFDocumentLoadingTask","nextDocumentId","destroy","transportDestroyed","then","addRangeListener","addProgressListener","addProgressiveReadListener","addProgressiveDoneListener","onDataRange","listener","onDataProgress","onDataProgressiveRead","onDataProgressiveDone","transportReady","requestDataRange","abort","getPage","getPageIndex","getDestinations","getDestination","getPageLabels","getPageLayout","getPageMode","getViewerPreferences","getOpenAction","getOpenActionDestination","deprecated","openAction","getAttachments","getJavaScript","getOutline","getPermissions","getMetadata","getData","getDownloadInfo","getStats","cleanup","pdfBug","getViewport","rotation","offsetX","offsetY","dontFlip","arguments","viewBox","getAnnotations","intent","render","enableWebGL","renderInteractiveForms","imageLayer","canvasFactory","background","renderingIntent","intentState","clearTimeout","canvasFactoryInstance","webGLContext","enable","fnArray","argsArray","lastChunk","pageIndex","complete","error","internalRenderTask","reason","callback","objs","commonObjs","operatorList","useRequestAnimationFrame","renderTask","transparency","getOperatorList","opListTask","streamTextContent","normalizeWhitespace","disableCombineTextItems","TEXT_CONTENT_CHUNK_SIZE","combineTextItems","highWaterMark","size","textContent","getTextContent","readableStream","reader","pump","items","styles","_destroy","waitOn","force","renderCompleted","resetStats","_tryCleanup","_startRenderPage","_renderPageChunk","operatorListChunk","_pumpOperatorList","args","_abortOperatorList","defer","postMessage","cloned","transferable","transfers","Array","desc","cloneValue","e","addEventListener","removeEventListener","terminate","pdfWorkerPorts","isWorkerDisabled","nextFakeWorkerId","isNodeJS","fallbackWorkerSrc","pdfjsFilePath","document","mainWorkerMessageHandler","globalThis","fakeWorkerCapability","loader","getMainThreadWorkerMessageHandler","eval","getWorkerSrc","loadScript","wrapper","name","_initializeFromPort","_initialize","workerSrc","isSameOrigin","createCDNWrapper","terminateEarly","onWorkerError","sendTest","testObj","info","_setupFakeWorker","setupFakeWorkerGlobal","WorkerMessageHandler","id","workerHandler","loadingTask","onUnsupportedFeature","isCompressed","page","terminated","setupMessageHandler","evt","loaded","total","sink","headersCapability","fullReader","isStreamingSupported","isRangeSupported","contentLength","rangeReader","pdfInfo","ex","exception","updatePassword","exportedError","exportedData","fontRegistry","registerFont","pageProxy","img","releaseImageResources","MAX_IMAGE_SIZE_TO_STORE","imageData","components","width","rgbaLength","buf","tmpCanvas","tmpCtx","j","fetched","builtInCMap","_onUnsupportedFeature","pageNumber","promise","pageInfo","results","metadata","contentDispositionFilename","startCleanup","cleanupSuccessful","_ensureObj","resolved","obj","has","clear","cancel","InternalRenderTask","canvasInRendering","initializeGraphics","operatorListChanged","_continue","_scheduleNext","version","build","DEFAULT_LINK_REL","SVG_NS","create","height","canvas","context","reset","canvasAndContext","compressionType","isFetchSupported","isValidFetchUrl","response","cMapData","request","XMLHttpRequest","svg","createElement","centerX","centerY","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","offsetCanvasY","clone","scale","convertToViewportPoint","convertToViewportRectangle","topLeft","bottomRight","convertToPdfPoint","LinkTarget","SELF","BLANK","PARENT","TOP","enabled","urlNullRemoved","removeNullCharacters","link","targetStr","anchor","query","end","time","Date","timeEnd","start","toString","outBuf","longest","duration","Response","protocol","script","isString","pdfDateStringRegex","matches","year","parseInt","month","day","hour","minute","universalTimeRelation","offsetHour","offsetMinute","addNativeFontFace","insertRule","styleElement","styleSheet","nativeFontFace","featureId","rule","_queueLoadingCallback","supported","_prepareFontLoadEvent","FontLoader","requests","nextRequestId","navigator","otherRequest","setTimeout","done","getLoadTestFont","atob","offset","chunk1","s","chunk2","ctx","called","isFontReady","loadTestFontId","COMMENT_OFFSET","spliceString","CFF_CHECKSUM_OFFSET","XXXX_VALUE","checksum","int32","string32","btoa","names","fonts","div","span","translatedData","createNativeFontFace","createFontFaceRule","bytesToString","getPathGenerator","cmds","js","current","compatibilityParams","userAgent","isIE","isIOSChrome","process","MIN_FONT_SIZE","MAX_FONT_SIZE","MAX_GROUP_SIZE","MIN_WIDTH_FACTOR","COMPILE_TYPE3_GLYPHS","MAX_SIZE_TO_COMPILE","FULL_CHUNK_HEIGHT","f","ad_bc","bc_ad","old","prev","cosValue","sinValue","CachedCanvases","getCanvas","canvasEntry","addContextCurrentTransform","POINT_TO_PROCESS_LIMIT","imgData","width1","points","POINT_TYPES","lineSize","data0","mask","elem","count","j0","sum","steps","outlines","coords","p0","step","pp","drawOutline","o","jj","CanvasExtraState","setCurrentPoint","CanvasGraphics","EXECUTION_TIME","EXECUTION_STEPS","partialChunkHeight","fullChunks","totalChunks","chunkImgData","srcPos","dest","srcLength","dest32","dest32DataLength","fullSrcDiff","white","black","thisChunkHeight","destPos","srcDiff","k","kEnd","kEndUnrolled","srcByte","elemsInThisChunk","properties","property","sourceCtx","destCtx","alpha","alpha_","r0","g0","b0","maskData","transferMap","layerData","y","hasBackdrop","backdrop","subtype","composeFn","PIXELS_TO_PROCESS","chunkSize","row","chunkHeight","maskCtx","layerCtx","composeSMaskBackdrop","composed","layer","genericComposeSMask","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","beginDrawing","transparentCanvas","resetCtxToDefault","viewport","executeOperatorList","executionStartIdx","argsArrayLen","chunkOperations","endTime","stepper","fnId","objsPool","depObjId","continueCallback","endDrawing","states","state","beginSMaskGroup","activeSMask","drawnWidth","drawnHeight","cacheId","scratchCanvas","currentCtx","currentTransform","groupCtx","copyCtxState","suspendSMaskGroup","composeSMask","deltaTransform","resumeSMaskGroup","endSMaskGroup","x","ops","xw","yh","consumePath","strokeColor","fillColor","isPatternFill","needRestore","paths","path","fontObj","bold","italic","typeface","browserFontSize","paintChar","textRenderingMode","fontSize","fillStrokeMode","isAddToPathSet","patternFill","addToPath","fontSizeScale","charSpacing","wordSpacing","fontDirection","textHScale","glyphsLength","glyphs","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","pattern","patternTransform","lineWidth","glyph","isNum","restoreNeeded","spacing","character","accent","vmetric","vx","vy","scaledX","scaledY","measuredWidth","characterScaleX","scaledAccentX","scaledAccentY","charWidth","showType3Text","fontMatrix","isTextInvisible","spacingLength","transformed","urx","ury","getColorN_Pattern","IR","color","baseTransform","canvasGraphicsFactory","createCanvasGraphics","getShadingPatternFromIR","inv","bl","br","ul","ur","x0","y0","x1","y1","matrix","bbox","group","bounds","canvasBounds","scaleX","scaleY","startTransformInverse","domImage","position","left","top","w","h","maskCanvas","putBinaryImageMask","positions","images","image","map","widthScale","heightScale","imgToPaint","putBinaryImageData","paintWidth","paintHeight","tmpCanvasId","newWidth","newHeight","entry","getSinglePixelWidth","inverse","getCanvasPosition","ShadingIRs","region","fromIR","raw","colorStops","r1","getPattern","applyBoundingBox","grad","createMeshCanvas","colors","rowSize","tmp","c1","c2","c3","x2","y2","x3","y3","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","xa","car","cag","cab","xb","cbr","cbg","cbb","x1_","x2_","ps","figure","cs","verticesPerRow","rows","cols","q","drawTriangle","EXPECTED_SCALE","MAX_PATTERN_SIZE","BORDER_SIZE","boundsWidth","boundsHeight","combinesScale","paddedWidth","paddedHeight","cachedCanvases","backgroundColor","figures","drawFigure","owner","matrixScale","temporaryPatternCanvas","shadingIR","TilingPattern","PaintType","COLORED","UNCOLORED","createPatternCanvas","xstep","ystep","paintType","tilingType","curMatrixScale","combinedScale","dimx","dimy","graphics","getSizeAndScale","maxSize","clipBbox","bboxWidth","bboxHeight","setFillAndStrokeStyleToContext","cssColor","CallbackKind","DATA","ERROR","StreamKind","CANCEL","CANCEL_COMPLETE","CLOSE","ENQUEUE","PULL","PULL_COMPLETE","START_COMPLETE","event","callbackId","wrapReason","action","sourceName","targetName","comObj","on","ah","send","sendWithPromise","sendWithStream","streamId","controller","startCapability","startCall","pullCall","cancelCall","isClosed","desiredSize","pull","pullCapability","stream","cancelCapability","_createStreamSink","self","streamSink","enqueue","lastDesiredSize","close","sinkCapability","onPull","onCancel","isCancelled","ready","success","_processStreamMessage","_postMessage","parser","xmlDocument","_repair","chars","_parse","rdf","nodeName","children","getAll","XMLParserErrorCode","NoError","EndOfDocument","UnterminatedCdat","UnterminatedXmlDeclaration","UnterminatedDoctypeDeclaration","UnterminatedComment","MalformedElement","OutOfMemory","UnterminatedAttributeValue","UnterminatedElement","ElementNeverBegun","ch","isWhitespace","_resolveEntities","entity","_parseContent","attributes","skipWs","attrName","attrValue","attrEndChar","attrEndIndex","parsed","_parseProcessingInstruction","attrStart","parseXml","ch2","pi","q2","complexDoctype","doctypeContent","content","text","onResolveEntity","onPi","onComment","onCdata","onDoctype","onText","onBeginElement","onEndElement","onError","childNodes","index","child","hasChildNodes","parseFromString","isWhitespaceString","node","lastElement","_onReceiveData","found","_onProgress","firstReader","_onProgressiveDone","_removeRangeReader","getFullReader","queuedChunks","getRangeReader","cancelAllRequests","readers","_enqueue","requestCapability","requestsCapability","WebGLUtils","drawFigures","shader","gl","compiled","errorMsg","loadShader","program","shaders","linked","texture","currentCanvas","currentGL","premultipliedalpha","smaskVertexShaderCode","smaskFragmentShaderCode","smaskCache","generateGL","vertexShader","createVertexShader","fragmentShader","createFragmentShader","cache","texCoordLocation","texLayerLocation","texMaskLocation","texCoordBuffer","initSmaskGL","createTexture","maskTexture","figuresVertexShaderCode","figuresFragmentShaderCode","figuresCache","initFiguresGL","coordsMap","colorsMap","pIndex","cIndex","col","coordsBuffer","colorsBuffer","tryInitGL","renderTextLayer","MAX_TEXT_DIVS_TO_RENDER","NonWhitespaceRegexp","textDiv","textDivProperties","angle","canvasWidth","originalTransform","paddingBottom","paddingLeft","paddingRight","paddingTop","isAllWhitespace","geom","tx","style","fontHeight","fontAscent","angleCos","angleSin","divWidth","divHeight","right","bottom","textDivs","textDivsLength","expanded","expandBounds","divProperties","ts","t","findPositiveMin","boxScale","box","x1New","x2New","expandBoundsLTR","boxes","fakeBoundary","horizon","boundary","maxXNew","horizonPart","affectedBoundary","xNew","changedHorizon","lastBoundary","useBoundary","used","textContentItemsStr","TextLayerRenderTask","_processItems","len","appendText","_layoutText","fontFamily","_render","styleCache","textItems","textStyles","expandTextDivs","expand","transformBuf","paddingBuf","divProps","renderParameters","textContentStream","container","enhanceTextSelection","parameters","fieldType","isRenderable","ignoreBorder","_createContainer","horizontalRadius","verticalRadius","radius","_createPopup","trigger","popupElement","title","modificationDate","contents","hideWrapper","popup","addLinkAttributes","target","linkService","rel","_bindLink","_bindNamedAction","JSON","TEXT_ALIGNMENT","fieldWidth","combWidth","_setTextStyle","fallbackName","selectElement","optionElement","option","IGNORE_TYPES","selector","parentElement","parentLeft","parseFloat","parentWidth","BACKGROUND_ENLIGHT","g","dateObject","PDFDateString","date","_formatContents","lines","line","_toggle","_show","pin","_hide","unpin","borderWidth","square","circle","coordinate","polyline","getFilenameFromUrl","stringToPDFString","_download","sortedAnnotations","popupAnnotations","downloadManager","imageResourcesPath","svgFactory","SVGGraphics","SVG_DEFAULTS","fontStyle","fontWeight","XML_NS","XLINK_NS","convertImgDataToPng","PNG_HEADER","CHUNK_WRAPPER_SIZE","crcTable","crc","body","crc32","deflateSyncUncompressed","input","Buffer","output","__non_webpack_require__","level","literals","maxBlockLength","deflateBlocks","idat","adler","adler32","colorType","bitDepth","offsetLiterals","offsetBytes","kind","ihdr","deflateSync","pngLength","writePngChunk","encode","opTree","opListElement","fn","pf","clipCount","maskCount","shadingCount","loadDependencies","transformMatrix","getSVG","svgElement","convertOpList","operatorIdMapping","opList","opListToTree","executeOpTree","opTreeElement","lineWidthScale","textMatrix","pm","addFontStyle","details","setStrokeAlpha","setFillAlpha","_makeColorN_Pattern","_makeTilingPattern","tilingId","txstep","tystep","tiling","tx1","ty1","_makeShadingPattern","shadingId","point0","point1","gradient","focalPoint","circlePoint","focalRadius","circleRadius","stop","colorStop","op","clipId","clipPath","clipElement","_setStrokeAttributes","dashArray","imgObj","imgEl","imgSrc","cliprect","definitions","rootGroup","_ensureClipGroup","clipGroup","_ensureTransformGroup","fs","http","https","fileUriRegex","parsedUrl","parseUrl","_error","_setReadableStream","auth","host","method","handleResponse","getResponseHeader","isHttp","suggestedLength","extractFilenameFromHeader","createRequestOptions","stat","returnValues","allowRangeRequests","contentEncoding","contentDisposition","filename","getFilenameFromContentDispositionHeader","status","needsEncodingFixup","toParamRegExp","rfc2616unquote","rfc5987decode","rfc2047decode","fixupEncoding","rfc2231getparam","decoder","fatal","textdecode","iter","n","parts","part","quotindex","encodingend","extvalue","encoding","langvalue","OK_RESPONSE","PARTIAL_CONTENT_RESPONSE","xhr","array","requestRange","listeners","requestFull","xhrId","pendingRequest","onProgress","onStateChange","xhrStatus","ok_response_on_range_request","getArrayBuffer","rangeHeader","begin","hasPendingRequests","getRequestXhr","isPendingRequest","abortAllRequests","abortRequest","_onRangeRequestReaderClosed","onHeadersReceived","onDone","manager","_onHeadersReceived","fullRequestXhrId","fullRequestXhr","_onDone","_onError","createResponseStatusError","_close","signal","abortController","mode","credentials","redirect","headers","createHeaders","fetch","createFetchOptions","validateResponseStatus"],"mappings":"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","file":"pdf.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = factory();\n})(this, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __w_pdfjs_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __w_pdfjs_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__w_pdfjs_require__.m = modules;\n\n \t// expose the module cache\n \t__w_pdfjs_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__w_pdfjs_require__.d = function(exports, name, getter) {\n \t\tif(!__w_pdfjs_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__w_pdfjs_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__w_pdfjs_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __w_pdfjs_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__w_pdfjs_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __w_pdfjs_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__w_pdfjs_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__w_pdfjs_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__w_pdfjs_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__w_pdfjs_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __w_pdfjs_require__(__w_pdfjs_require__.s = 0);\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* eslint-disable no-unused-vars */\n\n\"use strict\";\n\nvar pdfjsVersion =\n typeof PDFJSDev !== \"undefined\" ? PDFJSDev.eval(\"BUNDLE_VERSION\") : void 0;\nvar pdfjsBuild =\n typeof PDFJSDev !== \"undefined\" ? PDFJSDev.eval(\"BUNDLE_BUILD\") : void 0;\n\nvar pdfjsSharedUtil = require(\"./shared/util.js\");\nvar pdfjsDisplayAPI = require(\"./display/api.js\");\nvar pdfjsDisplayTextLayer = require(\"./display/text_layer.js\");\nvar pdfjsDisplayAnnotationLayer = require(\"./display/annotation_layer.js\");\nvar pdfjsDisplayDisplayUtils = require(\"./display/display_utils.js\");\nvar pdfjsDisplaySVG = require(\"./display/svg.js\");\nconst pdfjsDisplayWorkerOptions = require(\"./display/worker_options.js\");\nconst pdfjsDisplayAPICompatibility = require(\"./display/api_compatibility.js\");\n\nif (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) {\n const { isNodeJS } = require(\"./shared/is_node.js\");\n if (isNodeJS) {\n const PDFNodeStream = require(\"./display/node_stream.js\").PDFNodeStream;\n pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {\n return new PDFNodeStream(params);\n });\n } else {\n const PDFNetworkStream = require(\"./display/network.js\").PDFNetworkStream;\n let PDFFetchStream;\n if (pdfjsDisplayDisplayUtils.isFetchSupported()) {\n PDFFetchStream = require(\"./display/fetch_stream.js\").PDFFetchStream;\n }\n pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {\n if (\n PDFFetchStream &&\n pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)\n ) {\n return new PDFFetchStream(params);\n }\n return new PDFNetworkStream(params);\n });\n }\n} else if (PDFJSDev.test(\"CHROME\")) {\n const PDFNetworkStream = require(\"./display/network.js\").PDFNetworkStream;\n let PDFFetchStream;\n const isChromeWithFetchCredentials = function() {\n // fetch does not include credentials until Chrome 61.0.3138.0 and later.\n // https://chromium.googlesource.com/chromium/src/+/2e231cf052ca5e68e22baf0008ac9e5e29121707\n try {\n // Indexed properties on window are read-only in Chrome 61.0.3151.0+\n // https://chromium.googlesource.com/chromium/src.git/+/58ab4a971b06dec13e4edf9de8382ca6847f6190\n window[999] = 123; // should throw. Note: JS strict mode MUST be enabled.\n delete window[999];\n return false;\n } catch (e) {\n return true;\n }\n };\n if (\n pdfjsDisplayDisplayUtils.isFetchSupported() &&\n isChromeWithFetchCredentials()\n ) {\n PDFFetchStream = require(\"./display/fetch_stream.js\").PDFFetchStream;\n }\n pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {\n if (\n PDFFetchStream &&\n pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)\n ) {\n return new PDFFetchStream(params);\n }\n return new PDFNetworkStream(params);\n });\n}\n\nexports.build = pdfjsDisplayAPI.build;\nexports.version = pdfjsDisplayAPI.version;\nexports.getDocument = pdfjsDisplayAPI.getDocument;\nexports.LoopbackPort = pdfjsDisplayAPI.LoopbackPort;\nexports.PDFDataRangeTransport = pdfjsDisplayAPI.PDFDataRangeTransport;\nexports.PDFWorker = pdfjsDisplayAPI.PDFWorker;\nexports.renderTextLayer = pdfjsDisplayTextLayer.renderTextLayer;\nexports.AnnotationLayer = pdfjsDisplayAnnotationLayer.AnnotationLayer;\nexports.createPromiseCapability = pdfjsSharedUtil.createPromiseCapability;\nexports.PasswordResponses = pdfjsSharedUtil.PasswordResponses;\nexports.InvalidPDFException = pdfjsSharedUtil.InvalidPDFException;\nexports.MissingPDFException = pdfjsSharedUtil.MissingPDFException;\nexports.SVGGraphics = pdfjsDisplaySVG.SVGGraphics;\nexports.NativeImageDecoding = pdfjsSharedUtil.NativeImageDecoding;\nexports.CMapCompressionType = pdfjsSharedUtil.CMapCompressionType;\nexports.PermissionFlag = pdfjsSharedUtil.PermissionFlag;\nexports.UnexpectedResponseException =\n pdfjsSharedUtil.UnexpectedResponseException;\nexports.OPS = pdfjsSharedUtil.OPS;\nexports.VerbosityLevel = pdfjsSharedUtil.VerbosityLevel;\nexports.UNSUPPORTED_FEATURES = pdfjsSharedUtil.UNSUPPORTED_FEATURES;\nexports.createValidAbsoluteUrl = pdfjsSharedUtil.createValidAbsoluteUrl;\nexports.createObjectURL = pdfjsSharedUtil.createObjectURL;\nexports.removeNullCharacters = pdfjsSharedUtil.removeNullCharacters;\nexports.shadow = pdfjsSharedUtil.shadow;\nexports.Util = pdfjsSharedUtil.Util;\nexports.RenderingCancelledException =\n pdfjsDisplayDisplayUtils.RenderingCancelledException;\nexports.getFilenameFromUrl = pdfjsDisplayDisplayUtils.getFilenameFromUrl;\nexports.LinkTarget = pdfjsDisplayDisplayUtils.LinkTarget;\nexports.addLinkAttributes = pdfjsDisplayDisplayUtils.addLinkAttributes;\nexports.loadScript = pdfjsDisplayDisplayUtils.loadScript;\nexports.PDFDateString = pdfjsDisplayDisplayUtils.PDFDateString;\nexports.GlobalWorkerOptions = pdfjsDisplayWorkerOptions.GlobalWorkerOptions;\nexports.apiCompatibilityParams =\n pdfjsDisplayAPICompatibility.apiCompatibilityParams;\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* eslint no-var: error */\n\nimport \"./compatibility.js\";\n\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\nconst NativeImageDecoding = {\n NONE: \"none\",\n DECODE: \"decode\",\n DISPLAY: \"display\",\n};\n\n// Permission flags from Table 22, Section 7.6.3.2 of the PDF specification.\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800,\n};\n\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4,\n};\n\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3,\n};\n\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26,\n};\n\nconst AnnotationStateModelType = {\n MARKED: \"Marked\",\n REVIEW: \"Review\",\n};\n\nconst AnnotationMarkedState = {\n MARKED: \"Marked\",\n UNMARKED: \"Unmarked\",\n};\n\nconst AnnotationReviewState = {\n ACCEPTED: \"Accepted\",\n REJECTED: \"Rejected\",\n CANCELLED: \"Cancelled\",\n COMPLETED: \"Completed\",\n NONE: \"None\",\n};\n\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\",\n};\n\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200,\n};\n\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000,\n};\n\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5,\n};\n\nconst StreamType = {\n UNKNOWN: \"UNKNOWN\",\n FLATE: \"FLATE\",\n LZW: \"LZW\",\n DCT: \"DCT\",\n JPX: \"JPX\",\n JBIG: \"JBIG\",\n A85: \"A85\",\n AHX: \"AHX\",\n CCF: \"CCF\",\n RLX: \"RLX\", // PDF short name is 'RL', but telemetry requires three chars.\n};\n\nconst FontType = {\n UNKNOWN: \"UNKNOWN\",\n TYPE1: \"TYPE1\",\n TYPE1C: \"TYPE1C\",\n CIDFONTTYPE0: \"CIDFONTTYPE0\",\n CIDFONTTYPE0C: \"CIDFONTTYPE0C\",\n TRUETYPE: \"TRUETYPE\",\n CIDFONTTYPE2: \"CIDFONTTYPE2\",\n TYPE3: \"TYPE3\",\n OPENTYPE: \"OPENTYPE\",\n TYPE0: \"TYPE0\",\n MMTYPE1: \"MMTYPE1\",\n};\n\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5,\n};\n\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2,\n};\n\n// All the possible operations for an operator list.\nconst OPS = {\n // Intentionally start from 1 so it is easy to spot bad operators that will be\n // 0's.\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotations: 78,\n endAnnotations: 79,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintJpegXObject: 82,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91,\n};\n\nconst UNSUPPORTED_FEATURES = {\n unknown: \"unknown\",\n forms: \"forms\",\n javaScript: \"javaScript\",\n smask: \"smask\",\n shadingPattern: \"shadingPattern\",\n font: \"font\",\n};\n\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\n\nlet verbosity = VerbosityLevel.WARNINGS;\n\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\n\nfunction getVerbosityLevel() {\n return verbosity;\n}\n\n// A notice for devs. These are good for things that are helpful to devs, such\n// as warning that Workers were disabled, which is important to devs but not\n// end users.\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\n\n// Non-fatal warnings.\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\n\nfunction unreachable(msg) {\n throw new Error(msg);\n}\n\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\n\n// Checks if URLs have the same origin. For non-HTTP based URLs, returns false.\nfunction isSameOrigin(baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false; // non-HTTP url\n }\n } catch (e) {\n return false;\n }\n\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n}\n\n// Checks if URLs use one of the whitelisted protocols, e.g. to avoid XSS.\nfunction _isValidProtocol(url) {\n if (!url) {\n return false;\n }\n switch (url.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\n\n/**\n * Attempts to create a valid absolute URL.\n *\n * @param {URL|string} url - An absolute, or relative, URL.\n * @param {URL|string} baseUrl - An absolute URL.\n * @returns Either a valid {URL}, or `null` otherwise.\n */\nfunction createValidAbsoluteUrl(url, baseUrl) {\n if (!url) {\n return null;\n }\n try {\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) {\n /* `new URL()` will throw on incorrect data. */\n }\n return null;\n}\n\nfunction shadow(obj, prop, value) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: true,\n configurable: true,\n writable: false,\n });\n return value;\n}\n\nconst BaseException = (function BaseExceptionClosure() {\n function BaseException(message) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = this.constructor.name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n\n return BaseException;\n})();\n\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg);\n this.code = code;\n }\n}\n\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg);\n this.details = details;\n }\n}\n\nclass InvalidPDFException extends BaseException {}\n\nclass MissingPDFException extends BaseException {}\n\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg);\n this.status = status;\n }\n}\n\n/**\n * Error caused during parsing PDF data.\n */\nclass FormatError extends BaseException {}\n\n/**\n * Error used to indicate task cancellation.\n */\nclass AbortException extends BaseException {}\n\nconst NullCharactersRegExp = /\\x00/g;\n\nfunction removeNullCharacters(str) {\n if (typeof str !== \"string\") {\n warn(\"The argument for removeNullCharacters must be a string.\");\n return str;\n }\n return str.replace(NullCharactersRegExp, \"\");\n}\n\nfunction bytesToString(bytes) {\n assert(\n bytes !== null && typeof bytes === \"object\" && bytes.length !== undefined,\n \"Invalid argument for bytesToString\"\n );\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\n\nfunction stringToBytes(str) {\n assert(typeof str === \"string\", \"Invalid argument for stringToBytes\");\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\n\n/**\n * Gets length of the array (Array, Uint8Array, or string) in bytes.\n * @param {Array|Uint8Array|string} arr\n * @returns {number}\n */\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n assert(arr.byteLength !== undefined);\n return arr.byteLength;\n}\n\n/**\n * Combines array items (arrays) into single Uint8Array object.\n * @param {Array} arr - the array of the arrays (Array, Uint8Array, or string).\n * @returns {Uint8Array}\n */\nfunction arraysToBytes(arr) {\n const length = arr.length;\n // Shortcut: if first and only item is Uint8Array, return it.\n if (length === 1 && arr[0] instanceof Uint8Array) {\n return arr[0];\n }\n let resultLength = 0;\n for (let i = 0; i < length; i++) {\n resultLength += arrayByteLength(arr[i]);\n }\n let pos = 0;\n const data = new Uint8Array(resultLength);\n for (let i = 0; i < length; i++) {\n let item = arr[i];\n if (!(item instanceof Uint8Array)) {\n if (typeof item === \"string\") {\n item = stringToBytes(item);\n } else {\n item = new Uint8Array(item);\n }\n }\n const itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n return data;\n}\n\nfunction string32(value) {\n return String.fromCharCode(\n (value >> 24) & 0xff,\n (value >> 16) & 0xff,\n (value >> 8) & 0xff,\n value & 0xff\n );\n}\n\n// Checks the endianness of the platform.\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nconst IsLittleEndianCached = {\n get value() {\n return shadow(this, \"value\", isLittleEndian());\n },\n};\n\n// Checks if it's possible to eval JS expressions.\nfunction isEvalSupported() {\n try {\n new Function(\"\"); // eslint-disable-line no-new, no-new-func\n return true;\n } catch (e) {\n return false;\n }\n}\nconst IsEvalSupportedCached = {\n get value() {\n return shadow(this, \"value\", isEvalSupported());\n },\n};\n\nconst rgbBuf = [\"rgb(\", 0, \",\", 0, \",\", 0, \")\"];\n\nclass Util {\n // makeCssRgb() can be called thousands of times. Using ´rgbBuf` avoids\n // creating many intermediate strings.\n static makeCssRgb(r, g, b) {\n rgbBuf[1] = r;\n rgbBuf[3] = g;\n rgbBuf[5] = b;\n return rgbBuf.join(\"\");\n }\n\n // Concatenates two transformation matrices together and returns the result.\n static transform(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5],\n ];\n }\n\n // For 2d affine transforms\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n\n // Applies the transform to the rectangle and finds the minimum axially\n // aligned bounding box.\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = Util.applyTransform(r, m);\n const p2 = Util.applyTransform(r.slice(2, 4), m);\n const p3 = Util.applyTransform([r[0], r[3]], m);\n const p4 = Util.applyTransform([r[2], r[1]], m);\n return [\n Math.min(p1[0], p2[0], p3[0], p4[0]),\n Math.min(p1[1], p2[1], p3[1], p4[1]),\n Math.max(p1[0], p2[0], p3[0], p4[0]),\n Math.max(p1[1], p2[1], p3[1], p4[1]),\n ];\n }\n\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [\n m[3] / d,\n -m[1] / d,\n -m[2] / d,\n m[0] / d,\n (m[2] * m[5] - m[4] * m[3]) / d,\n (m[4] * m[1] - m[5] * m[0]) / d,\n ];\n }\n\n // Apply a generic 3d matrix M on a 3-vector v:\n // | a b c | | X |\n // | d e f | x | Y |\n // | g h i | | Z |\n // M is assumed to be serialized as [a,b,c,d,e,f,g,h,i],\n // with v as [X,Y,Z]\n static apply3dTransform(m, v) {\n return [\n m[0] * v[0] + m[1] * v[1] + m[2] * v[2],\n m[3] * v[0] + m[4] * v[1] + m[5] * v[2],\n m[6] * v[0] + m[7] * v[1] + m[8] * v[2],\n ];\n }\n\n // This calculation uses Singular Value Decomposition.\n // The SVD can be represented with formula A = USV. We are interested in the\n // matrix S here because it represents the scale values.\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n\n // Multiply matrix m with its transpose.\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n\n // Solve the second degree polynomial to get roots.\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) * (a + d) - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n\n // Scale values are the square roots of the eigenvalues.\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n\n // Normalize rectangle rect=[x1, y1, x2, y2] so that (x1,y1) < (x2,y2)\n // For coordinate systems whose origin lies in the bottom-left, this\n // means normalization to (BL,TR) ordering. For systems with origin in the\n // top-left, this means (TL,BR) ordering.\n static normalizeRect(rect) {\n const r = rect.slice(0); // clone rect\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n\n // Returns a rectangle [x1, y1, x2, y2] corresponding to the\n // intersection of rect1 and rect2. If no intersection, returns 'false'\n // The rectangle coordinates of rect1, rect2 should be [x1, y1, x2, y2]\n static intersect(rect1, rect2) {\n function compare(a, b) {\n return a - b;\n }\n\n // Order points along the axes\n const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);\n const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);\n const result = [];\n\n rect1 = Util.normalizeRect(rect1);\n rect2 = Util.normalizeRect(rect2);\n\n // X: first and second points belong to different rectangles?\n if (\n (orderedX[0] === rect1[0] && orderedX[1] === rect2[0]) ||\n (orderedX[0] === rect2[0] && orderedX[1] === rect1[0])\n ) {\n // Intersection must be between second and third points\n result[0] = orderedX[1];\n result[2] = orderedX[2];\n } else {\n return null;\n }\n\n // Y: first and second points belong to different rectangles?\n if (\n (orderedY[0] === rect1[1] && orderedY[1] === rect2[1]) ||\n (orderedY[0] === rect2[1] && orderedY[1] === rect1[1])\n ) {\n // Intersection must be between second and third points\n result[1] = orderedY[1];\n result[3] = orderedY[2];\n } else {\n return null;\n }\n\n return result;\n }\n}\n\n// prettier-ignore\nconst PDFStringTranslateTable = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0x2D8, 0x2C7, 0x2C6, 0x2D9, 0x2DD, 0x2DB, 0x2DA, 0x2DC, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014,\n 0x2013, 0x192, 0x2044, 0x2039, 0x203A, 0x2212, 0x2030, 0x201E, 0x201C,\n 0x201D, 0x2018, 0x2019, 0x201A, 0x2122, 0xFB01, 0xFB02, 0x141, 0x152, 0x160,\n 0x178, 0x17D, 0x131, 0x142, 0x153, 0x161, 0x17E, 0, 0x20AC\n];\n\nfunction stringToPDFString(str) {\n const length = str.length,\n strBuf = [];\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n // UTF16BE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i) << 8) | str.charCodeAt(i + 1))\n );\n }\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n // UTF16LE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i + 1) << 8) | str.charCodeAt(i))\n );\n }\n } else {\n for (let i = 0; i < length; ++i) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n }\n return strBuf.join(\"\");\n}\n\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\n\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\n\nfunction isEmptyObj(obj) {\n for (const key in obj) {\n return false;\n }\n return true;\n}\n\nfunction isBool(v) {\n return typeof v === \"boolean\";\n}\n\nfunction isNum(v) {\n return typeof v === \"number\";\n}\n\nfunction isString(v) {\n return typeof v === \"string\";\n}\n\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v !== null && v.byteLength !== undefined;\n}\n\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n return arr1.every(function(element, index) {\n return element === arr2[index];\n });\n}\n\n/**\n * Promise Capability object.\n *\n * @typedef {Object} PromiseCapability\n * @property {Promise} promise - A Promise object.\n * @property {boolean} settled - If the Promise has been fulfilled/rejected.\n * @property {function} resolve - Fulfills the Promise.\n * @property {function} reject - Rejects the Promise.\n */\n\n/**\n * Creates a promise capability object.\n * @alias createPromiseCapability\n *\n * @returns {PromiseCapability}\n */\nfunction createPromiseCapability() {\n const capability = Object.create(null);\n let isSettled = false;\n\n Object.defineProperty(capability, \"settled\", {\n get() {\n return isSettled;\n },\n });\n capability.promise = new Promise(function(resolve, reject) {\n capability.resolve = function(data) {\n isSettled = true;\n resolve(data);\n };\n capability.reject = function(reason) {\n isSettled = true;\n reject(reason);\n };\n });\n return capability;\n}\n\nconst createObjectURL = (function createObjectURLClosure() {\n // Blob/createObjectURL is not available, falling back to data schema.\n const digits =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n return function createObjectURL(data, contentType, forceDataSchema = false) {\n if (!forceDataSchema && URL.createObjectURL) {\n const blob = new Blob([data], { type: contentType });\n return URL.createObjectURL(blob);\n }\n\n let buffer = `data:${contentType};base64,`;\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const b1 = data[i] & 0xff;\n const b2 = data[i + 1] & 0xff;\n const b3 = data[i + 2] & 0xff;\n const d1 = b1 >> 2,\n d2 = ((b1 & 3) << 4) | (b2 >> 4);\n const d3 = i + 1 < ii ? ((b2 & 0xf) << 2) | (b3 >> 6) : 64;\n const d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n return buffer;\n };\n})();\n\nexport {\n BaseException,\n FONT_IDENTITY_MATRIX,\n IDENTITY_MATRIX,\n OPS,\n VerbosityLevel,\n UNSUPPORTED_FEATURES,\n AnnotationBorderStyleType,\n AnnotationFieldFlag,\n AnnotationFlag,\n AnnotationMarkedState,\n AnnotationReplyType,\n AnnotationReviewState,\n AnnotationStateModelType,\n AnnotationType,\n FontType,\n ImageKind,\n CMapCompressionType,\n AbortException,\n InvalidPDFException,\n MissingPDFException,\n NativeImageDecoding,\n PasswordException,\n PasswordResponses,\n PermissionFlag,\n StreamType,\n TextRenderingMode,\n UnexpectedResponseException,\n UnknownErrorException,\n Util,\n FormatError,\n arrayByteLength,\n arraysToBytes,\n assert,\n bytesToString,\n createPromiseCapability,\n createObjectURL,\n getVerbosityLevel,\n info,\n isArrayBuffer,\n isArrayEqual,\n isBool,\n isEmptyObj,\n isNum,\n isString,\n isSameOrigin,\n createValidAbsoluteUrl,\n IsLittleEndianCached,\n IsEvalSupportedCached,\n removeNullCharacters,\n setVerbosityLevel,\n shadow,\n string32,\n stringToBytes,\n stringToPDFString,\n stringToUTF8String,\n utf8StringToString,\n warn,\n unreachable,\n};\n","/* Copyright 2017 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* eslint no-var: error */\n\n// Skip compatibility checks for modern builds (unless we're running the\n// unit-tests in Node.js/Travis) and if we already ran the module.\nif (\n (typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!SKIP_BABEL || (LIB && TESTING)\")) &&\n (typeof globalThis === \"undefined\" || !globalThis._pdfjsCompatibilityChecked)\n) {\n // Provides support for globalThis in legacy browsers.\n // Support: IE11/Edge, Opera\n if (typeof globalThis === \"undefined\" || globalThis.Math !== Math) {\n // eslint-disable-next-line no-global-assign\n globalThis = require(\"core-js/es/global-this\");\n }\n globalThis._pdfjsCompatibilityChecked = true;\n\n const { isNodeJS } = require(\"./is_node.js\");\n\n const hasDOM = typeof window === \"object\" && typeof document === \"object\";\n const userAgent =\n (typeof navigator !== \"undefined\" && navigator.userAgent) || \"\";\n const isIE = /Trident/.test(userAgent);\n\n // Support: Node.js\n (function checkNodeBtoa() {\n if (globalThis.btoa || !isNodeJS) {\n return;\n }\n globalThis.btoa = function(chars) {\n // eslint-disable-next-line no-undef\n return Buffer.from(chars, \"binary\").toString(\"base64\");\n };\n })();\n\n // Support: Node.js\n (function checkNodeAtob() {\n if (globalThis.atob || !isNodeJS) {\n return;\n }\n globalThis.atob = function(input) {\n // eslint-disable-next-line no-undef\n return Buffer.from(input, \"base64\").toString(\"binary\");\n };\n })();\n\n // Provides support for ChildNode.remove in legacy browsers.\n // Support: IE.\n (function checkChildNodeRemove() {\n if (!hasDOM) {\n return;\n }\n if (typeof Element.prototype.remove !== \"undefined\") {\n return;\n }\n Element.prototype.remove = function() {\n if (this.parentNode) {\n // eslint-disable-next-line mozilla/avoid-removeChild\n this.parentNode.removeChild(this);\n }\n };\n })();\n\n // Provides support for DOMTokenList.prototype.{add, remove}, with more than\n // one parameter, in legacy browsers.\n // Support: IE\n (function checkDOMTokenListAddRemove() {\n if (!hasDOM || isNodeJS) {\n return;\n }\n const div = document.createElement(\"div\");\n div.classList.add(\"testOne\", \"testTwo\");\n\n if (\n div.classList.contains(\"testOne\") === true &&\n div.classList.contains(\"testTwo\") === true\n ) {\n return;\n }\n const OriginalDOMTokenListAdd = DOMTokenList.prototype.add;\n const OriginalDOMTokenListRemove = DOMTokenList.prototype.remove;\n\n DOMTokenList.prototype.add = function(...tokens) {\n for (const token of tokens) {\n OriginalDOMTokenListAdd.call(this, token);\n }\n };\n DOMTokenList.prototype.remove = function(...tokens) {\n for (const token of tokens) {\n OriginalDOMTokenListRemove.call(this, token);\n }\n };\n })();\n\n // Provides support for DOMTokenList.prototype.toggle, with the optional\n // \"force\" parameter, in legacy browsers.\n // Support: IE\n (function checkDOMTokenListToggle() {\n if (!hasDOM || isNodeJS) {\n return;\n }\n const div = document.createElement(\"div\");\n if (div.classList.toggle(\"test\", 0) === false) {\n return;\n }\n\n DOMTokenList.prototype.toggle = function(token) {\n const force =\n arguments.length > 1 ? !!arguments[1] : !this.contains(token);\n return this[force ? \"add\" : \"remove\"](token), force;\n };\n })();\n\n // Provides support for window.history.{pushState, replaceState}, with the\n // `url` parameter set to `undefined`, without breaking the document URL.\n // Support: IE\n (function checkWindowHistoryPushStateReplaceState() {\n if (!hasDOM || !isIE) {\n return;\n }\n const OriginalPushState = window.history.pushState;\n const OriginalReplaceState = window.history.replaceState;\n\n window.history.pushState = function(state, title, url) {\n const args = url === undefined ? [state, title] : [state, title, url];\n OriginalPushState.apply(this, args);\n };\n window.history.replaceState = function(state, title, url) {\n const args = url === undefined ? [state, title] : [state, title, url];\n OriginalReplaceState.apply(this, args);\n };\n })();\n\n // Provides support for String.prototype.startsWith in legacy browsers.\n // Support: IE, Chrome<41\n (function checkStringStartsWith() {\n if (String.prototype.startsWith) {\n return;\n }\n require(\"core-js/es/string/starts-with.js\");\n })();\n\n // Provides support for String.prototype.endsWith in legacy browsers.\n // Support: IE, Chrome<41\n (function checkStringEndsWith() {\n if (String.prototype.endsWith) {\n return;\n }\n require(\"core-js/es/string/ends-with.js\");\n })();\n\n // Provides support for String.prototype.includes in legacy browsers.\n // Support: IE, Chrome<41\n (function checkStringIncludes() {\n if (String.prototype.includes) {\n return;\n }\n require(\"core-js/es/string/includes.js\");\n })();\n\n // Provides support for Array.prototype.includes in legacy browsers.\n // Support: IE, Chrome<47\n (function checkArrayIncludes() {\n if (Array.prototype.includes) {\n return;\n }\n require(\"core-js/es/array/includes.js\");\n })();\n\n // Provides support for Array.from in legacy browsers.\n // Support: IE\n (function checkArrayFrom() {\n if (Array.from) {\n return;\n }\n require(\"core-js/es/array/from.js\");\n })();\n\n // Provides support for Object.assign in legacy browsers.\n // Support: IE\n (function checkObjectAssign() {\n if (Object.assign) {\n return;\n }\n require(\"core-js/es/object/assign.js\");\n })();\n\n // Provides support for Math.log2 in legacy browsers.\n // Support: IE, Chrome<38\n (function checkMathLog2() {\n if (Math.log2) {\n return;\n }\n Math.log2 = require(\"core-js/es/math/log2.js\");\n })();\n\n // Provides support for Number.isNaN in legacy browsers.\n // Support: IE.\n (function checkNumberIsNaN() {\n if (Number.isNaN) {\n return;\n }\n Number.isNaN = require(\"core-js/es/number/is-nan.js\");\n })();\n\n // Provides support for Number.isInteger in legacy browsers.\n // Support: IE, Chrome<34\n (function checkNumberIsInteger() {\n if (Number.isInteger) {\n return;\n }\n Number.isInteger = require(\"core-js/es/number/is-integer.js\");\n })();\n\n // Support: IE, Safari<11, Chrome<63\n (function checkPromise() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `Promise` shouldn't\n // need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n if (globalThis.Promise && globalThis.Promise.allSettled) {\n return;\n }\n globalThis.Promise = require(\"core-js/es/promise/index.js\");\n })();\n\n // Support: IE\n (function checkURL() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders don't use the `URL` constructor, so it\n // doesn't need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n if (typeof PDFJSDev !== \"undefined\" && !PDFJSDev.test(\"GENERIC\")) {\n // The `URL` constructor is assumed to be available in the extension\n // builds.\n return;\n }\n globalThis.URL = require(\"core-js/web/url.js\");\n })();\n\n // Support: IE, Node.js\n (function checkReadableStream() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `ReadableStream`\n // shouldn't need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n let isReadableStreamSupported = false;\n\n if (typeof ReadableStream !== \"undefined\") {\n // MS Edge may say it has ReadableStream but they are not up to spec yet.\n try {\n // eslint-disable-next-line no-new\n new ReadableStream({\n start(controller) {\n controller.close();\n },\n });\n isReadableStreamSupported = true;\n } catch (e) {\n // The ReadableStream constructor cannot be used.\n }\n }\n if (isReadableStreamSupported) {\n return;\n }\n globalThis.ReadableStream = require(\"web-streams-polyfill/dist/ponyfill.js\").ReadableStream;\n })();\n\n // We want to support Map iteration, but it doesn't seem possible to easily\n // test for that specifically; hence using a similarly unsupported property.\n // Support: IE11\n (function checkMapEntries() {\n if (globalThis.Map && globalThis.Map.prototype.entries) {\n return;\n }\n globalThis.Map = require(\"core-js/es/map/index.js\");\n })();\n\n // We want to support Set iteration, but it doesn't seem possible to easily\n // test for that specifically; hence using a similarly unsupported property.\n // Support: IE11\n (function checkSetEntries() {\n if (globalThis.Set && globalThis.Set.prototype.entries) {\n return;\n }\n globalThis.Set = require(\"core-js/es/set/index.js\");\n })();\n\n // Support: IE<11, Safari<8, Chrome<36\n (function checkWeakMap() {\n if (globalThis.WeakMap) {\n return;\n }\n globalThis.WeakMap = require(\"core-js/es/weak-map/index.js\");\n })();\n\n // Support: IE11\n (function checkWeakSet() {\n if (globalThis.WeakSet) {\n return;\n }\n globalThis.WeakSet = require(\"core-js/es/weak-set/index.js\");\n })();\n\n // Provides support for String.codePointAt in legacy browsers.\n // Support: IE11.\n (function checkStringCodePointAt() {\n if (String.prototype.codePointAt) {\n return;\n }\n require(\"core-js/es/string/code-point-at.js\");\n })();\n\n // Provides support for String.fromCodePoint in legacy browsers.\n // Support: IE11.\n (function checkStringFromCodePoint() {\n if (String.fromCodePoint) {\n return;\n }\n String.fromCodePoint = require(\"core-js/es/string/from-code-point.js\");\n })();\n\n // Support: IE\n (function checkSymbol() {\n if (globalThis.Symbol) {\n return;\n }\n require(\"core-js/es/symbol/index.js\");\n })();\n\n // Provides support for String.prototype.padStart in legacy browsers.\n // Support: IE, Chrome<57\n (function checkStringPadStart() {\n if (String.prototype.padStart) {\n return;\n }\n require(\"core-js/es/string/pad-start.js\");\n })();\n\n // Provides support for String.prototype.padEnd in legacy browsers.\n // Support: IE, Chrome<57\n (function checkStringPadEnd() {\n if (String.prototype.padEnd) {\n return;\n }\n require(\"core-js/es/string/pad-end.js\");\n })();\n\n // Provides support for Object.values in legacy browsers.\n // Support: IE, Chrome<54\n (function checkObjectValues() {\n if (Object.values) {\n return;\n }\n Object.values = require(\"core-js/es/object/values.js\");\n })();\n}\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* eslint no-var: error */\n\n/**\n * @module pdfjsLib\n */\n\nimport {\n AbortException,\n assert,\n createPromiseCapability,\n getVerbosityLevel,\n info,\n InvalidPDFException,\n isArrayBuffer,\n isSameOrigin,\n MissingPDFException,\n NativeImageDecoding,\n PasswordException,\n setVerbosityLevel,\n shadow,\n stringToBytes,\n UnexpectedResponseException,\n UnknownErrorException,\n unreachable,\n warn,\n} from \"../shared/util.js\";\nimport {\n deprecated,\n DOMCanvasFactory,\n DOMCMapReaderFactory,\n loadScript,\n PageViewport,\n releaseImageResources,\n RenderingCancelledException,\n StatTimer,\n} from \"./display_utils.js\";\nimport { FontFaceObject, FontLoader } from \"./font_loader.js\";\nimport { apiCompatibilityParams } from \"./api_compatibility.js\";\nimport { CanvasGraphics } from \"./canvas.js\";\nimport { GlobalWorkerOptions } from \"./worker_options.js\";\nimport { isNodeJS } from \"../shared/is_node.js\";\nimport { MessageHandler } from \"../shared/message_handler.js\";\nimport { Metadata } from \"./metadata.js\";\nimport { PDFDataTransportStream } from \"./transport_stream.js\";\nimport { WebGLContext } from \"./webgl.js\";\n\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536; // 2^16 = 65536\nconst RENDERING_CANCELLED_TIMEOUT = 100; // ms\n\n/**\n * @typedef {function} IPDFStreamFactory\n * @param {DocumentInitParameters} params The document initialization\n * parameters. The \"url\" key is always present.\n * @returns {IPDFStream}\n */\n\n/** @type IPDFStreamFactory */\nlet createPDFNetworkStream;\n\n/**\n * Sets the function that instantiates a IPDFStream as an alternative PDF data\n * transport.\n * @param {IPDFStreamFactory} pdfNetworkStreamFactory - the factory function\n * that takes document initialization parameters (including a \"url\") and returns\n * an instance of IPDFStream.\n */\nfunction setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n}\n\n/**\n * Document initialization / loading parameters object.\n *\n * @typedef {Object} DocumentInitParameters\n * @property {string} [url] - The URL of the PDF.\n * @property {TypedArray|Array|string} [data] - Binary PDF data. Use typed\n * arrays (Uint8Array) to improve the memory usage. If PDF data is\n * BASE64-encoded, use atob() to convert it to a binary string first.\n * @property {Object} [httpHeaders] - Basic authentication headers.\n * @property {boolean} [withCredentials] - Indicates whether or not\n * cross-site Access-Control requests should be made using credentials such\n * as cookies or authorization headers. The default is false.\n * @property {string} [password] - For decrypting password-protected PDFs.\n * @property {TypedArray} [initialData] - A typed array with the first portion\n * or all of the pdf data. Used by the extension since some data is already\n * loaded before the switch to range requests.\n * @property {number} [length] - The PDF file length. It's used for\n * progress reports and range requests operations.\n * @property {PDFDataRangeTransport} [range]\n * @property {number} [rangeChunkSize] - Specify maximum number of bytes\n * fetched per range request. The default value is 2^16 = 65536.\n * @property {PDFWorker} [worker] - The worker that will be used for\n * the loading and parsing of the PDF data.\n * @property {number} [verbosity] - Controls the logging level; the\n * constants from {VerbosityLevel} should be used.\n * @property {string} [docBaseUrl] - The base URL of the document,\n * used when attempting to recover valid absolute URLs for annotations, and\n * outline items, that (incorrectly) only specify relative URLs.\n * @property {string} [nativeImageDecoderSupport] - Strategy for\n * decoding certain (simple) JPEG images in the browser. This is useful for\n * environments without DOM image and canvas support, such as e.g. Node.js.\n * Valid values are 'decode', 'display' or 'none'; where 'decode' is intended\n * for browsers with full image/canvas support, 'display' for environments\n * with limited image support through stubs (useful for SVG conversion),\n * and 'none' where JPEG images will be decoded entirely by PDF.js.\n * The default value is 'decode'.\n * @property {string} [cMapUrl] - The URL where the predefined\n * Adobe CMaps are located. Include trailing slash.\n * @property {boolean} [cMapPacked] - Specifies if the Adobe CMaps are\n * binary packed.\n * @property {Object} [CMapReaderFactory] - The factory that will be\n * used when reading built-in CMap files. Providing a custom factory is useful\n * for environments without `XMLHttpRequest` support, such as e.g. Node.js.\n * The default value is {DOMCMapReaderFactory}.\n * @property {boolean} [stopAtErrors] - Reject certain promises, e.g.\n * `getOperatorList`, `getTextContent`, and `RenderTask`, when the associated\n * PDF data cannot be successfully parsed, instead of attempting to recover\n * whatever possible of the data. The default value is `false`.\n * @property {number} [maxImageSize] - The maximum allowed image size\n * in total pixels, i.e. width * height. Images above this value will not be\n * rendered. Use -1 for no limit, which is also the default value.\n * @property {boolean} [isEvalSupported] - Determines if we can eval\n * strings as JS. Primarily used to improve performance of font rendering,\n * and when parsing PDF functions. The default value is `true`.\n * @property {boolean} [disableFontFace] - By default fonts are\n * converted to OpenType fonts and loaded via font face rules. If disabled,\n * fonts will be rendered using a built-in font renderer that constructs the\n * glyphs with primitive path commands. The default value is `false`.\n * @property {boolean} [disableRange] - Disable range request loading\n * of PDF files. When enabled, and if the server supports partial content\n * requests, then the PDF will be fetched in chunks.\n * The default value is `false`.\n * @property {boolean} [disableStream] - Disable streaming of PDF file\n * data. By default PDF.js attempts to load PDFs in chunks.\n * The default value is `false`.\n * @property {boolean} [disableAutoFetch] - Disable pre-fetching of PDF\n * file data. When range requests are enabled PDF.js will automatically keep\n * fetching more data even if it isn't needed to display the current page.\n * The default value is `false`.\n * NOTE: It is also necessary to disable streaming, see above,\n * in order for disabling of pre-fetching to work correctly.\n * @property {boolean} [disableCreateObjectURL] - Disable the use of\n * `URL.createObjectURL`, for compatibility with older browsers.\n * The default value is `false`.\n * @property {boolean} [pdfBug] - Enables special hooks for debugging\n * PDF.js (see `web/debugger.js`). The default value is `false`.\n */\n\n/**\n * @typedef {Object} PDFDocumentStats\n * @property {Object} streamTypes - Used stream types in the document (an item\n * is set to true if specific stream ID was used in the document).\n * @property {Object} fontTypes - Used font types in the document (an item\n * is set to true if specific font ID was used in the document).\n */\n\n/**\n * This is the main entry point for loading a PDF and interacting with it.\n * NOTE: If a URL is used to fetch the PDF data a standard XMLHttpRequest(XHR)\n * is used, which means it must follow the same origin rules that any XHR does\n * e.g. No cross domain requests without CORS.\n *\n * @param {string|TypedArray|DocumentInitParameters|PDFDataRangeTransport} src\n * Can be a url to where a PDF is located, a typed array (Uint8Array)\n * already populated with data or parameter object.\n * @returns {PDFDocumentLoadingTask}\n */\nfunction getDocument(src) {\n const task = new PDFDocumentLoadingTask();\n\n let source;\n if (typeof src === \"string\") {\n source = { url: src };\n } else if (isArrayBuffer(src)) {\n source = { data: src };\n } else if (src instanceof PDFDataRangeTransport) {\n source = { range: src };\n } else {\n if (typeof src !== \"object\") {\n throw new Error(\n \"Invalid parameter in getDocument, \" +\n \"need either Uint8Array, string or a parameter object\"\n );\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\n \"Invalid parameter object: need either .data, .range or .url\"\n );\n }\n source = src;\n }\n const params = Object.create(null);\n let rangeTransport = null,\n worker = null;\n\n for (const key in source) {\n if (key === \"url\" && typeof window !== \"undefined\") {\n // The full path is required in the 'url' field.\n params[key] = new URL(source[key], window.location).href;\n continue;\n } else if (key === \"range\") {\n rangeTransport = source[key];\n continue;\n } else if (key === \"worker\") {\n worker = source[key];\n continue;\n } else if (key === \"data\" && !(source[key] instanceof Uint8Array)) {\n // Converting string or array-like data to Uint8Array.\n const pdfBytes = source[key];\n if (typeof pdfBytes === \"string\") {\n params[key] = stringToBytes(pdfBytes);\n } else if (\n typeof pdfBytes === \"object\" &&\n pdfBytes !== null &&\n !isNaN(pdfBytes.length)\n ) {\n params[key] = new Uint8Array(pdfBytes);\n } else if (isArrayBuffer(pdfBytes)) {\n params[key] = new Uint8Array(pdfBytes);\n } else {\n throw new Error(\n \"Invalid PDF binary data: either typed array, \" +\n \"string or array-like object is expected in the \" +\n \"data property.\"\n );\n }\n continue;\n }\n params[key] = source[key];\n }\n\n params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;\n params.CMapReaderFactory = params.CMapReaderFactory || DOMCMapReaderFactory;\n params.ignoreErrors = params.stopAtErrors !== true;\n params.pdfBug = params.pdfBug === true;\n\n const NativeImageDecoderValues = Object.values(NativeImageDecoding);\n if (\n params.nativeImageDecoderSupport === undefined ||\n !NativeImageDecoderValues.includes(params.nativeImageDecoderSupport)\n ) {\n params.nativeImageDecoderSupport =\n apiCompatibilityParams.nativeImageDecoderSupport ||\n NativeImageDecoding.DECODE;\n }\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n if (typeof params.isEvalSupported !== \"boolean\") {\n params.isEvalSupported = true;\n }\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace = apiCompatibilityParams.disableFontFace || false;\n }\n\n if (typeof params.disableRange !== \"boolean\") {\n params.disableRange = false;\n }\n if (typeof params.disableStream !== \"boolean\") {\n params.disableStream = false;\n }\n if (typeof params.disableAutoFetch !== \"boolean\") {\n params.disableAutoFetch = false;\n }\n if (typeof params.disableCreateObjectURL !== \"boolean\") {\n params.disableCreateObjectURL =\n apiCompatibilityParams.disableCreateObjectURL || false;\n }\n\n // Set the main-thread verbosity level.\n setVerbosityLevel(params.verbosity);\n\n if (!worker) {\n const workerParams = {\n verbosity: params.verbosity,\n port: GlobalWorkerOptions.workerPort,\n };\n // Worker was not provided -- creating and owning our own. If message port\n // is specified in global worker options, using it.\n worker = workerParams.port\n ? PDFWorker.fromPort(workerParams)\n : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const docId = task.docId;\n worker.promise\n .then(function() {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n return _fetchDocument(worker, params, rangeTransport, docId).then(\n function(workerId) {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n let networkStream;\n if (rangeTransport) {\n networkStream = new PDFDataTransportStream(\n {\n length: params.length,\n initialData: params.initialData,\n progressiveDone: params.progressiveDone,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n },\n rangeTransport\n );\n } else if (!params.data) {\n networkStream = createPDFNetworkStream({\n url: params.url,\n length: params.length,\n httpHeaders: params.httpHeaders,\n withCredentials: params.withCredentials,\n rangeChunkSize: params.rangeChunkSize,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n });\n }\n\n const messageHandler = new MessageHandler(\n docId,\n workerId,\n worker.port\n );\n messageHandler.postMessageTransfers = worker.postMessageTransfers;\n const transport = new WorkerTransport(\n messageHandler,\n task,\n networkStream,\n params\n );\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n }\n );\n })\n .catch(task._capability.reject);\n\n return task;\n}\n\n/**\n * Starts fetching of specified PDF document/data.\n * @param {PDFWorker} worker\n * @param {Object} source\n * @param {PDFDataRangeTransport} pdfDataRangeTransport\n * @param {string} docId Unique document id, used as MessageHandler id.\n * @returns {Promise} The promise, which is resolved when worker id of\n * MessageHandler is known.\n * @private\n */\nfunction _fetchDocument(worker, source, pdfDataRangeTransport, docId) {\n if (worker.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed\"));\n }\n\n if (pdfDataRangeTransport) {\n source.length = pdfDataRangeTransport.length;\n source.initialData = pdfDataRangeTransport.initialData;\n source.progressiveDone = pdfDataRangeTransport.progressiveDone;\n }\n return worker.messageHandler\n .sendWithPromise(\"GetDocRequest\", {\n docId,\n apiVersion:\n typeof PDFJSDev !== \"undefined\" && !PDFJSDev.test(\"TESTING\")\n ? PDFJSDev.eval(\"BUNDLE_VERSION\")\n : null,\n // Only send the required properties, and *not* the entire object.\n source: {\n data: source.data,\n url: source.url,\n password: source.password,\n disableAutoFetch: source.disableAutoFetch,\n rangeChunkSize: source.rangeChunkSize,\n length: source.length,\n },\n maxImageSize: source.maxImageSize,\n disableFontFace: source.disableFontFace,\n disableCreateObjectURL: source.disableCreateObjectURL,\n postMessageTransfers: worker.postMessageTransfers,\n docBaseUrl: source.docBaseUrl,\n nativeImageDecoderSupport: source.nativeImageDecoderSupport,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n })\n .then(function(workerId) {\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n return workerId;\n });\n}\n\nconst PDFDocumentLoadingTask = (function PDFDocumentLoadingTaskClosure() {\n let nextDocumentId = 0;\n\n /**\n * The loading task controls the operations required to load a PDF document\n * (such as network requests) and provides a way to listen for completion,\n * after which individual pages can be rendered.\n */\n class PDFDocumentLoadingTask {\n constructor() {\n this._capability = createPromiseCapability();\n this._transport = null;\n this._worker = null;\n\n /**\n * Unique document loading task id -- used in MessageHandlers.\n * @type {string}\n */\n this.docId = \"d\" + nextDocumentId++;\n\n /**\n * Shows if loading task is destroyed.\n * @type {boolean}\n */\n this.destroyed = false;\n\n /**\n * Callback to request a password if wrong or no password was provided.\n * The callback receives two parameters: function that needs to be called\n * with new password and reason (see {PasswordResponses}).\n */\n this.onPassword = null;\n\n /**\n * Callback to be able to monitor the loading progress of the PDF file\n * (necessary to implement e.g. a loading bar). The callback receives\n * an {Object} with the properties: {number} loaded and {number} total.\n */\n this.onProgress = null;\n\n /**\n * Callback to when unsupported feature is used. The callback receives\n * an {UNSUPPORTED_FEATURES} argument.\n */\n this.onUnsupportedFeature = null;\n }\n\n /**\n * Promise for document loading task completion.\n * @type {Promise}\n */\n get promise() {\n return this._capability.promise;\n }\n\n /**\n * Aborts all network requests and destroys worker.\n * @returns {Promise} A promise that is resolved after destruction activity\n * is completed.\n */\n destroy() {\n this.destroyed = true;\n\n const transportDestroyed = !this._transport\n ? Promise.resolve()\n : this._transport.destroy();\n return transportDestroyed.then(() => {\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n });\n }\n\n /**\n * Registers callbacks to indicate the document loading completion.\n * @ignore\n */\n then(onFulfilled, onRejected) {\n throw new Error(\n \"Removed API method: \" +\n \"PDFDocumentLoadingTask.then, use the `promise` getter instead.\"\n );\n }\n }\n return PDFDocumentLoadingTask;\n})();\n\n/**\n * Abstract class to support range requests file loading.\n * @param {number} length\n * @param {Uint8Array} initialData\n * @param {boolean} progressiveDone\n */\nclass PDFDataRangeTransport {\n constructor(length, initialData, progressiveDone = false) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = createPromiseCapability();\n }\n\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n\n transportReady() {\n this._readyCapability.resolve();\n }\n\n requestDataRange(begin, end) {\n unreachable(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n\n abort() {}\n}\n\n/**\n * Proxy to a PDFDocument in the worker thread. Also, contains commonly used\n * properties that can be read synchronously.\n */\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n }\n\n /**\n * @type {number} Total number of pages the PDF contains.\n */\n get numPages() {\n return this._pdfInfo.numPages;\n }\n\n /**\n * @type {string} A (not guaranteed to be) unique ID to identify a PDF.\n */\n get fingerprint() {\n return this._pdfInfo.fingerprint;\n }\n\n /**\n * @param {number} pageNumber - The page number to get. The first page is 1.\n * @returns {Promise} A promise that is resolved with a {@link PDFPageProxy}\n * object.\n */\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n\n /**\n * @param {{num: number, gen: number}} ref - The page reference. Must have\n * the `num` and `gen` properties.\n * @returns {Promise} A promise that is resolved with the page index (starting\n * from zero) that is associated with the reference.\n */\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a lookup table for\n * mapping named destinations to reference numbers.\n *\n * This can be slow for large documents. Use `getDestination` instead.\n */\n getDestinations() {\n return this._transport.getDestinations();\n }\n\n /**\n * @param {string} id - The named destination to get.\n * @returns {Promise} A promise that is resolved with all information\n * of the given named destination.\n */\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array} containing\n * the page labels that correspond to the page indexes, or `null` when\n * no page labels are present in the PDF file.\n */\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string} containing\n * the page layout name.\n */\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string} containing\n * the page mode name.\n */\n getPageMode() {\n return this._transport.getPageMode();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Object} containing\n * the viewer preferences.\n */\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Object} containing\n * the currently supported actions, or `null` when no OpenAction exists.\n */\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n\n getOpenActionDestination() {\n deprecated(\"getOpenActionDestination, use getOpenAction instead.\");\n return this.getOpenAction().then(function(openAction) {\n return openAction && openAction.dest ? openAction.dest : null;\n });\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a lookup table for\n * mapping named attachments to their content.\n */\n getAttachments() {\n return this._transport.getAttachments();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array} of all the\n * JavaScript strings in the name tree, or `null` if no JavaScript exists.\n */\n getJavaScript() {\n return this._transport.getJavaScript();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array} that is a\n * tree outline (if it has one) of the PDF. The tree is in the format of:\n * [\n * {\n * title: string,\n * bold: boolean,\n * italic: boolean,\n * color: rgb Uint8ClampedArray,\n * count: integer or undefined,\n * dest: dest obj,\n * url: string,\n * items: array of more items like this\n * },\n * ...\n * ]\n */\n getOutline() {\n return this._transport.getOutline();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array} that contains\n * the permission flags for the PDF document, or `null` when\n * no permissions are present in the PDF file.\n */\n getPermissions() {\n return this._transport.getPermissions();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Object} that has\n * `info` and `metadata` properties. `info` is an {Object} filled with\n * anything available in the information dictionary and similarly\n * `metadata` is a {Metadata} object with information from the metadata\n * section of the PDF.\n */\n getMetadata() {\n return this._transport.getMetadata();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {TypedArray} that has\n * the raw data from the PDF.\n */\n getData() {\n return this._transport.getData();\n }\n\n /**\n * @returns {Promise} A promise that is resolved when the document's data\n * is loaded. It is resolved with an {Object} that contains the `length`\n * property that indicates size of the PDF data in bytes.\n */\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n\n /**\n * @returns {Promise} A promise this is resolved with current statistics about\n * document structures (see {@link PDFDocumentStats}).\n */\n getStats() {\n return this._transport.getStats();\n }\n\n /**\n * Cleans up resources allocated by the document, on both the main- and\n * worker-threads.\n *\n * NOTE: Do not, under any circumstances, call this method when rendering is\n * currently ongoing since that may lead to rendering errors.\n *\n * @returns {Promise} A promise that is resolved when clean-up has finished.\n */\n cleanup() {\n return this._transport.startCleanup();\n }\n\n /**\n * Destroys the current document instance and terminates the worker.\n */\n destroy() {\n return this.loadingTask.destroy();\n }\n\n /**\n * @type {Object} A subset of the current {DocumentInitParameters}, which are\n * either needed in the viewer and/or whose default values may be affected\n * by the `apiCompatibilityParams`.\n */\n get loadingParams() {\n return this._transport.loadingParams;\n }\n\n /**\n * @type {PDFDocumentLoadingTask} The loadingTask for the current document.\n */\n get loadingTask() {\n return this._transport.loadingTask;\n }\n}\n\n/**\n * Page getViewport parameters.\n *\n * @typedef {Object} GetViewportParameters\n * @property {number} scale - The desired scale of the viewport.\n * @property {number} [rotation] - The desired rotation, in degrees, of\n * the viewport. If omitted it defaults to the page rotation.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be\n * flipped. The default value is `false`.\n */\n\n/**\n * Page getTextContent parameters.\n *\n * @typedef {Object} getTextContentParameters\n * @property {boolean} normalizeWhitespace - replaces all occurrences of\n * whitespace with standard spaces (0x20). The default value is `false`.\n * @property {boolean} disableCombineTextItems - do not attempt to combine\n * same line {@link TextItem}'s. The default value is `false`.\n */\n\n/**\n * Page text content.\n *\n * @typedef {Object} TextContent\n * @property {array} items - array of {@link TextItem}\n * @property {Object} styles - {@link TextStyle} objects, indexed by font name.\n */\n\n/**\n * Page text content part.\n *\n * @typedef {Object} TextItem\n * @property {string} str - text content.\n * @property {string} dir - text direction: 'ttb', 'ltr' or 'rtl'.\n * @property {array} transform - transformation matrix.\n * @property {number} width - width in device space.\n * @property {number} height - height in device space.\n * @property {string} fontName - font name used by pdf.js for converted font.\n */\n\n/**\n * Text style.\n *\n * @typedef {Object} TextStyle\n * @property {number} ascent - font ascent.\n * @property {number} descent - font descent.\n * @property {boolean} vertical - text is in vertical mode.\n * @property {string} fontFamily - possible font family\n */\n\n/**\n * Page annotation parameters.\n *\n * @typedef {Object} GetAnnotationsParameters\n * @property {string} intent - Determines the annotations that will be fetched,\n * can be either 'display' (viewable annotations) or 'print'\n * (printable annotations).\n * If the parameter is omitted, all annotations are fetched.\n */\n\n/**\n * Page render parameters.\n *\n * @typedef {Object} RenderParameters\n * @property {Object} canvasContext - A 2D context of a DOM Canvas object.\n * @property {PageViewport} viewport - Rendering viewport obtained by\n * calling the `PDFPageProxy.getViewport` method.\n * @property {string} [intent] - Rendering intent, can be 'display' or 'print'\n * (default value is 'display').\n * @property {boolean} [enableWebGL] - Enables WebGL accelerated rendering\n * for some operations. The default value is `false`.\n * @property {boolean} [renderInteractiveForms] - Whether or not\n * interactive form elements are rendered in the display\n * layer. If so, we do not render them on canvas as well.\n * @property {Array} [transform] - Additional transform, applied\n * just before viewport transform.\n * @property {Object} [imageLayer] - An object that has beginLayout,\n * endLayout and appendImage functions.\n * @property {Object} [canvasFactory] - The factory that will be used\n * when creating canvases. The default value is\n * {DOMCanvasFactory}.\n * @property {Object} [background] - Background to use for the canvas.\n * Can use any valid canvas.fillStyle: A DOMString parsed as\n * CSS value, a CanvasGradient object (a linear or\n * radial gradient) or a CanvasPattern object (a repetitive\n * image). The default value is 'rgb(255,255,255)'.\n */\n\n/**\n * PDF page operator list.\n *\n * @typedef {Object} PDFOperatorList\n * @property {Array} fnArray - Array containing the operator functions.\n * @property {Array} argsArray - Array containing the arguments of the\n * functions.\n */\n\n/**\n * Proxy to a PDFPage in the worker thread.\n * @alias PDFPageProxy\n */\nclass PDFPageProxy {\n constructor(pageIndex, pageInfo, transport, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._transport = transport;\n this._stats = pdfBug ? new StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n\n this.cleanupAfterRender = false;\n this.pendingCleanup = false;\n this.intentStates = Object.create(null);\n this.destroyed = false;\n }\n\n /**\n * @type {number} Page number of the page. First page is 1.\n */\n get pageNumber() {\n return this._pageIndex + 1;\n }\n\n /**\n * @type {number} The number of degrees the page is rotated clockwise.\n */\n get rotate() {\n return this._pageInfo.rotate;\n }\n\n /**\n * @type {Object} The reference that points to this page. It has `num` and\n * `gen` properties.\n */\n get ref() {\n return this._pageInfo.ref;\n }\n\n /**\n * @type {number} The default size of units in 1/72nds of an inch.\n */\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n\n /**\n * @type {Array} An array of the visible portion of the PDF page in user\n * space units [x1, y1, x2, y2].\n */\n get view() {\n return this._pageInfo.view;\n }\n\n /**\n * @param {GetViewportParameters} params - Viewport parameters.\n * @returns {PageViewport} Contains 'width' and 'height' properties\n * along with transforms required for rendering.\n */\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false,\n } = {}) {\n if (\n typeof PDFJSDev !== \"undefined\" &&\n PDFJSDev.test(\"GENERIC\") &&\n (arguments.length > 1 || typeof arguments[0] === \"number\")\n ) {\n throw new Error(\n \"PDFPageProxy.getViewport is called with obsolete arguments.\"\n );\n }\n return new PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip,\n });\n }\n\n /**\n * @param {GetAnnotationsParameters} params - Annotation parameters.\n * @returns {Promise} A promise that is resolved with an {Array} of the\n * annotation objects.\n */\n getAnnotations({ intent = null } = {}) {\n if (!this.annotationsPromise || this.annotationsIntent !== intent) {\n this.annotationsPromise = this._transport.getAnnotations(\n this._pageIndex,\n intent\n );\n this.annotationsIntent = intent;\n }\n return this.annotationsPromise;\n }\n\n /**\n * Begins the process of rendering a page to the desired context.\n * @param {RenderParameters} params Page render parameters.\n * @returns {RenderTask} An object that contains the promise, which\n * is resolved when the page finishes rendering.\n */\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n enableWebGL = false,\n renderInteractiveForms = false,\n transform = null,\n imageLayer = null,\n canvasFactory = null,\n background = null,\n }) {\n if (this._stats) {\n this._stats.time(\"Overall\");\n }\n\n const renderingIntent = intent === \"print\" ? \"print\" : \"display\";\n // If there was a pending destroy, cancel it so no cleanup happens during\n // this call to render.\n this.pendingCleanup = false;\n\n if (!this.intentStates[renderingIntent]) {\n this.intentStates[renderingIntent] = Object.create(null);\n }\n const intentState = this.intentStates[renderingIntent];\n\n // Ensure that a pending `streamReader` cancel timeout is always aborted.\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n\n const canvasFactoryInstance = canvasFactory || new DOMCanvasFactory();\n const webGLContext = new WebGLContext({\n enable: enableWebGL,\n });\n\n // If there's no displayReadyCapability yet, then the operatorList\n // was never requested before. Make the request and create the promise.\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = createPromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList({\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n renderInteractiveForms: renderInteractiveForms === true,\n });\n }\n\n const complete = error => {\n const i = intentState.renderTasks.indexOf(internalRenderTask);\n if (i >= 0) {\n intentState.renderTasks.splice(i, 1);\n }\n\n // Attempt to reduce memory usage during *printing*, by always running\n // cleanup once rendering has finished (regardless of cleanupAfterRender).\n if (this.cleanupAfterRender || renderingIntent === \"print\") {\n this.pendingCleanup = true;\n }\n this._tryCleanup();\n\n if (error) {\n internalRenderTask.capability.reject(error);\n\n this._abortOperatorList({\n intentState,\n reason: error,\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n if (this._stats) {\n this._stats.timeEnd(\"Rendering\");\n this._stats.timeEnd(\"Overall\");\n }\n };\n\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n // Only include the required properties, and *not* the entire object.\n params: {\n canvasContext,\n viewport,\n transform,\n imageLayer,\n background,\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: canvasFactoryInstance,\n webGLContext,\n useRequestAnimationFrame: renderingIntent !== \"print\",\n pdfBug: this._pdfBug,\n });\n\n if (!intentState.renderTasks) {\n intentState.renderTasks = [];\n }\n intentState.renderTasks.push(internalRenderTask);\n const renderTask = internalRenderTask.task;\n\n intentState.displayReadyCapability.promise\n .then(transparency => {\n if (this.pendingCleanup) {\n complete();\n return;\n }\n if (this._stats) {\n this._stats.time(\"Rendering\");\n }\n internalRenderTask.initializeGraphics(transparency);\n internalRenderTask.operatorListChanged();\n })\n .catch(complete);\n\n return renderTask;\n }\n\n /**\n * @returns {Promise} A promise resolved with an {@link PDFOperatorList}\n * object that represents page's operator list.\n */\n getOperatorList() {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n\n const i = intentState.renderTasks.indexOf(opListTask);\n if (i >= 0) {\n intentState.renderTasks.splice(i, 1);\n }\n }\n }\n\n const renderingIntent = \"oplist\";\n if (!this.intentStates[renderingIntent]) {\n this.intentStates[renderingIntent] = Object.create(null);\n }\n const intentState = this.intentStates[renderingIntent];\n let opListTask;\n\n if (!intentState.opListReadCapability) {\n opListTask = {};\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = createPromiseCapability();\n intentState.renderTasks = [];\n intentState.renderTasks.push(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList({\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n });\n }\n return intentState.opListReadCapability.promise;\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {ReadableStream} ReadableStream to read textContent chunks.\n */\n streamTextContent({\n normalizeWhitespace = false,\n disableCombineTextItems = false,\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n\n return this._transport.messageHandler.sendWithStream(\n \"GetTextContent\",\n {\n pageIndex: this._pageIndex,\n normalizeWhitespace: normalizeWhitespace === true,\n combineTextItems: disableCombineTextItems !== true,\n },\n {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n },\n }\n );\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {Promise} That is resolved a {@link TextContent}\n * object that represent the page text content.\n */\n getTextContent(params = {}) {\n const readableStream = this.streamTextContent(params);\n\n return new Promise(function(resolve, reject) {\n function pump() {\n reader.read().then(function({ value, done }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null),\n };\n pump();\n });\n }\n\n /**\n * Destroys the page object.\n * @private\n */\n _destroy() {\n this.destroyed = true;\n this._transport.pageCache[this._pageIndex] = null;\n\n const waitOn = [];\n Object.keys(this.intentStates).forEach(intent => {\n const intentState = this.intentStates[intent];\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true,\n });\n\n if (intent === \"oplist\") {\n // Avoid errors below, since the renderTasks are just stubs.\n return;\n }\n intentState.renderTasks.forEach(function(renderTask) {\n const renderCompleted = renderTask.capability.promise.catch(\n function() {}\n ); // ignoring failures\n waitOn.push(renderCompleted);\n renderTask.cancel();\n });\n });\n this.objs.clear();\n this.annotationsPromise = null;\n this.pendingCleanup = false;\n return Promise.all(waitOn);\n }\n\n /**\n * Cleans up resources allocated by the page.\n * @param {boolean} [resetStats] - Reset page stats, if enabled.\n * The default value is `false`.\n * @returns {boolean} Indicating if clean-up was successfully run.\n */\n cleanup(resetStats = false) {\n this.pendingCleanup = true;\n return this._tryCleanup(resetStats);\n }\n\n /**\n * Attempts to clean up if rendering is in a state where that's possible.\n * @private\n */\n _tryCleanup(resetStats = false) {\n if (\n !this.pendingCleanup ||\n Object.keys(this.intentStates).some(intent => {\n const intentState = this.intentStates[intent];\n return (\n intentState.renderTasks.length !== 0 ||\n !intentState.operatorList.lastChunk\n );\n })\n ) {\n return false;\n }\n\n Object.keys(this.intentStates).forEach(intent => {\n delete this.intentStates[intent];\n });\n this.objs.clear();\n this.annotationsPromise = null;\n if (resetStats && this._stats) {\n this._stats = new StatTimer();\n }\n this.pendingCleanup = false;\n return true;\n }\n\n /**\n * @private\n */\n _startRenderPage(transparency, intent) {\n const intentState = this.intentStates[intent];\n if (!intentState) {\n return; // Rendering was cancelled.\n }\n if (this._stats) {\n this._stats.timeEnd(\"Page Request\");\n }\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.resolve(transparency);\n }\n }\n\n /**\n * @private\n */\n _renderPageChunk(operatorListChunk, intentState) {\n // Add the new chunk to the current operator list.\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n\n // Notify all the rendering tasks there are more operators to be consumed.\n for (let i = 0; i < intentState.renderTasks.length; i++) {\n intentState.renderTasks[i].operatorListChanged();\n }\n\n if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n\n /**\n * @private\n */\n _pumpOperatorList(args) {\n assert(\n args.intent,\n 'PDFPageProxy._pumpOperatorList: Expected \"intent\" argument.'\n );\n\n const readableStream = this._transport.messageHandler.sendWithStream(\n \"GetOperatorList\",\n args\n );\n const reader = readableStream.getReader();\n\n const intentState = this.intentStates[args.intent];\n intentState.streamReader = reader;\n\n const pump = () => {\n reader.read().then(\n ({ value, done }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n this._renderPageChunk(value, intentState);\n pump();\n },\n reason => {\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n if (intentState.operatorList) {\n // Mark operator list as complete.\n intentState.operatorList.lastChunk = true;\n\n for (let i = 0; i < intentState.renderTasks.length; i++) {\n intentState.renderTasks[i].operatorListChanged();\n }\n this._tryCleanup();\n }\n\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n }\n );\n };\n pump();\n }\n\n /**\n * @private\n */\n _abortOperatorList({ intentState, reason, force = false }) {\n assert(\n reason instanceof Error ||\n (typeof reason === \"object\" && reason !== null),\n 'PDFPageProxy._abortOperatorList: Expected \"reason\" argument.'\n );\n\n if (!intentState.streamReader) {\n return;\n }\n if (!force) {\n // Ensure that an Error occurring in *only* one `InternalRenderTask`, e.g.\n // multiple render() calls on the same canvas, won't break all rendering.\n if (intentState.renderTasks.length !== 0) {\n return;\n }\n // Don't immediately abort parsing on the worker-thread when rendering is\n // cancelled, since that will unnecessarily delay re-rendering when (for\n // partially parsed pages) e.g. zooming/rotation occurs in the viewer.\n if (reason instanceof RenderingCancelledException) {\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n this._abortOperatorList({ intentState, reason, force: true });\n intentState.streamReaderCancelTimeout = null;\n }, RENDERING_CANCELLED_TIMEOUT);\n return;\n }\n }\n intentState.streamReader.cancel(\n new AbortException(reason && reason.message)\n );\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n // Remove the current `intentState`, since a cancelled `getOperatorList`\n // call on the worker-thread cannot be re-started...\n Object.keys(this.intentStates).some(intent => {\n if (this.intentStates[intent] === intentState) {\n delete this.intentStates[intent];\n return true;\n }\n return false;\n });\n // ... and force clean-up to ensure that any old state is always removed.\n this.cleanup();\n }\n\n /**\n * @type {Object} Returns page stats, if enabled; returns `null` otherwise.\n */\n get stats() {\n return this._stats;\n }\n}\n\nclass LoopbackPort {\n constructor(defer = true) {\n this._listeners = [];\n this._defer = defer;\n this._deferred = Promise.resolve(undefined);\n }\n\n postMessage(obj, transfers) {\n function cloneValue(value) {\n // Trying to perform a structured clone close to the spec, including\n // transfers.\n if (typeof value !== \"object\" || value === null) {\n return value;\n }\n if (cloned.has(value)) {\n // already cloned the object\n return cloned.get(value);\n }\n let buffer, result;\n if ((buffer = value.buffer) && isArrayBuffer(buffer)) {\n // We found object with ArrayBuffer (typed array).\n const transferable = transfers && transfers.includes(buffer);\n if (transferable) {\n result = new value.constructor(\n buffer,\n value.byteOffset,\n value.byteLength\n );\n } else {\n result = new value.constructor(value);\n }\n cloned.set(value, result);\n return result;\n }\n result = Array.isArray(value) ? [] : {};\n cloned.set(value, result); // adding to cache now for cyclic references\n // Cloning all value and object properties, however ignoring properties\n // defined via getter.\n for (const i in value) {\n let desc,\n p = value;\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n if (typeof desc.value === \"undefined\") {\n continue;\n }\n if (typeof desc.value === \"function\") {\n if (value.hasOwnProperty && value.hasOwnProperty(i)) {\n throw new Error(\n `LoopbackPort.postMessage - cannot clone: ${value[i]}`\n );\n }\n continue;\n }\n result[i] = cloneValue(desc.value);\n }\n return result;\n }\n\n if (!this._defer) {\n this._listeners.forEach(listener => {\n listener.call(this, { data: obj });\n });\n return;\n }\n\n const cloned = new WeakMap();\n const e = { data: cloneValue(obj) };\n this._deferred.then(() => {\n this._listeners.forEach(listener => {\n listener.call(this, e);\n });\n });\n }\n\n addEventListener(name, listener) {\n this._listeners.push(listener);\n }\n\n removeEventListener(name, listener) {\n const i = this._listeners.indexOf(listener);\n this._listeners.splice(i, 1);\n }\n\n terminate() {\n this._listeners.length = 0;\n }\n}\n\n/**\n * @typedef {Object} PDFWorkerParameters\n * @property {string} [name] - The name of the worker.\n * @property {Object} [port] - The `workerPort`.\n * @property {number} [verbosity] - Controls the logging level; the\n * constants from {VerbosityLevel} should be used.\n */\n\nconst PDFWorker = (function PDFWorkerClosure() {\n const pdfWorkerPorts = new WeakMap();\n let isWorkerDisabled = false;\n let fallbackWorkerSrc;\n let nextFakeWorkerId = 0;\n let fakeWorkerCapability;\n\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\")) {\n // eslint-disable-next-line no-undef\n if (isNodeJS && typeof __non_webpack_require__ === \"function\") {\n // Workers aren't supported in Node.js, force-disabling them there.\n isWorkerDisabled = true;\n\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"LIB\")) {\n fallbackWorkerSrc = \"../pdf.worker.js\";\n } else {\n fallbackWorkerSrc = \"./pdf.worker.js\";\n }\n } else if (typeof document === \"object\" && \"currentScript\" in document) {\n const pdfjsFilePath =\n document.currentScript && document.currentScript.src;\n if (pdfjsFilePath) {\n fallbackWorkerSrc = pdfjsFilePath.replace(\n /(\\.(?:min\\.)?js)(\\?.*)?$/i,\n \".worker$1$2\"\n );\n }\n }\n }\n\n function getWorkerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n if (typeof fallbackWorkerSrc !== \"undefined\") {\n if (!isNodeJS) {\n deprecated('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n function getMainThreadWorkerMessageHandler() {\n let mainWorkerMessageHandler;\n try {\n mainWorkerMessageHandler =\n globalThis.pdfjsWorker && globalThis.pdfjsWorker.WorkerMessageHandler;\n } catch (ex) {\n /* Ignore errors. */\n }\n return mainWorkerMessageHandler || null;\n }\n\n // Loads worker code into main thread.\n function setupFakeWorkerGlobal() {\n if (fakeWorkerCapability) {\n return fakeWorkerCapability.promise;\n }\n fakeWorkerCapability = createPromiseCapability();\n\n const loader = async function() {\n const mainWorkerMessageHandler = getMainThreadWorkerMessageHandler();\n\n if (mainWorkerMessageHandler) {\n // The worker was already loaded using e.g. a ` - - - - -
- -
-
-
- - - -
-
-
-
-
- - -
- -
- -
- - - - -
-
-
-
- -
- -
- -
- -
- - -
-
- - - - - - - - - -
- - -
-
-
- -
- -
- - - -
-
-
-
-
-
-
-
-
-
- - - - - - - - -
-
-
- - -
- - - -
-
- - - diff --git a/cookbook/static/pdfjs/viewer.js b/cookbook/static/pdfjs/viewer.js deleted file mode 100644 index f9c2f73d4..000000000 --- a/cookbook/static/pdfjs/viewer.js +++ /dev/null @@ -1,13279 +0,0 @@ -/** - * @licstart The following is the entire license notice for the - * Javascript code in this page - * - * Copyright 2020 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * @licend The above is the entire license notice for the - * Javascript code in this page - */ - -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __webpack_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 0); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -; -let pdfjsWebApp, pdfjsWebAppOptions; -{ - pdfjsWebApp = __webpack_require__(1); - pdfjsWebAppOptions = __webpack_require__(3); -} -; -{ - __webpack_require__(33); -} -; -{ - __webpack_require__(38); -} - -function getViewerConfiguration() { - return { - appContainer: document.body, - mainContainer: document.getElementById("viewerContainer"), - viewerContainer: document.getElementById("viewer"), - eventBus: null, - toolbar: { - container: document.getElementById("toolbarViewer"), - numPages: document.getElementById("numPages"), - pageNumber: document.getElementById("pageNumber"), - scaleSelectContainer: document.getElementById("scaleSelectContainer"), - scaleSelect: document.getElementById("scaleSelect"), - customScaleOption: document.getElementById("customScaleOption"), - previous: document.getElementById("previous"), - next: document.getElementById("next"), - zoomIn: document.getElementById("zoomIn"), - zoomOut: document.getElementById("zoomOut"), - viewFind: document.getElementById("viewFind"), - openFile: document.getElementById("openFile"), - print: document.getElementById("print"), - presentationModeButton: document.getElementById("presentationMode"), - download: document.getElementById("download"), - viewBookmark: document.getElementById("viewBookmark") - }, - secondaryToolbar: { - toolbar: document.getElementById("secondaryToolbar"), - toggleButton: document.getElementById("secondaryToolbarToggle"), - toolbarButtonContainer: document.getElementById("secondaryToolbarButtonContainer"), - presentationModeButton: document.getElementById("secondaryPresentationMode"), - openFileButton: document.getElementById("secondaryOpenFile"), - printButton: document.getElementById("secondaryPrint"), - downloadButton: document.getElementById("secondaryDownload"), - viewBookmarkButton: document.getElementById("secondaryViewBookmark"), - firstPageButton: document.getElementById("firstPage"), - lastPageButton: document.getElementById("lastPage"), - pageRotateCwButton: document.getElementById("pageRotateCw"), - pageRotateCcwButton: document.getElementById("pageRotateCcw"), - cursorSelectToolButton: document.getElementById("cursorSelectTool"), - cursorHandToolButton: document.getElementById("cursorHandTool"), - scrollVerticalButton: document.getElementById("scrollVertical"), - scrollHorizontalButton: document.getElementById("scrollHorizontal"), - scrollWrappedButton: document.getElementById("scrollWrapped"), - spreadNoneButton: document.getElementById("spreadNone"), - spreadOddButton: document.getElementById("spreadOdd"), - spreadEvenButton: document.getElementById("spreadEven"), - documentPropertiesButton: document.getElementById("documentProperties") - }, - fullscreen: { - contextFirstPage: document.getElementById("contextFirstPage"), - contextLastPage: document.getElementById("contextLastPage"), - contextPageRotateCw: document.getElementById("contextPageRotateCw"), - contextPageRotateCcw: document.getElementById("contextPageRotateCcw") - }, - sidebar: { - outerContainer: document.getElementById("outerContainer"), - viewerContainer: document.getElementById("viewerContainer"), - toggleButton: document.getElementById("sidebarToggle"), - thumbnailButton: document.getElementById("viewThumbnail"), - outlineButton: document.getElementById("viewOutline"), - attachmentsButton: document.getElementById("viewAttachments"), - thumbnailView: document.getElementById("thumbnailView"), - outlineView: document.getElementById("outlineView"), - attachmentsView: document.getElementById("attachmentsView") - }, - sidebarResizer: { - outerContainer: document.getElementById("outerContainer"), - resizer: document.getElementById("sidebarResizer") - }, - findBar: { - bar: document.getElementById("findbar"), - toggleButton: document.getElementById("viewFind"), - findField: document.getElementById("findInput"), - highlightAllCheckbox: document.getElementById("findHighlightAll"), - caseSensitiveCheckbox: document.getElementById("findMatchCase"), - entireWordCheckbox: document.getElementById("findEntireWord"), - findMsg: document.getElementById("findMsg"), - findResultsCount: document.getElementById("findResultsCount"), - findPreviousButton: document.getElementById("findPrevious"), - findNextButton: document.getElementById("findNext") - }, - passwordOverlay: { - overlayName: "passwordOverlay", - container: document.getElementById("passwordOverlay"), - label: document.getElementById("passwordText"), - input: document.getElementById("password"), - submitButton: document.getElementById("passwordSubmit"), - cancelButton: document.getElementById("passwordCancel") - }, - documentProperties: { - overlayName: "documentPropertiesOverlay", - container: document.getElementById("documentPropertiesOverlay"), - closeButton: document.getElementById("documentPropertiesClose"), - fields: { - fileName: document.getElementById("fileNameField"), - fileSize: document.getElementById("fileSizeField"), - title: document.getElementById("titleField"), - author: document.getElementById("authorField"), - subject: document.getElementById("subjectField"), - keywords: document.getElementById("keywordsField"), - creationDate: document.getElementById("creationDateField"), - modificationDate: document.getElementById("modificationDateField"), - creator: document.getElementById("creatorField"), - producer: document.getElementById("producerField"), - version: document.getElementById("versionField"), - pageCount: document.getElementById("pageCountField"), - pageSize: document.getElementById("pageSizeField"), - linearized: document.getElementById("linearizedField") - } - }, - errorWrapper: { - container: document.getElementById("errorWrapper"), - errorMessage: document.getElementById("errorMessage"), - closeButton: document.getElementById("errorClose"), - errorMoreInfo: document.getElementById("errorMoreInfo"), - moreInfoButton: document.getElementById("errorShowMore"), - lessInfoButton: document.getElementById("errorShowLess") - }, - printContainer: document.getElementById("printContainer"), - openFileInputName: "fileInput", - debuggerScriptPath: "./debugger.js" - }; -} - -function webViewerLoad() { - const config = getViewerConfiguration(); - window.PDFViewerApplication = pdfjsWebApp.PDFViewerApplication; - window.PDFViewerApplicationOptions = pdfjsWebAppOptions.AppOptions; - const event = document.createEvent("CustomEvent"); - event.initCustomEvent("webviewerloaded", true, true, { - source: window - }); - - try { - parent.document.dispatchEvent(event); - } catch (ex) { - console.error(`webviewerloaded: ${ex}`); - document.dispatchEvent(event); - } - - pdfjsWebApp.PDFViewerApplication.run(config); -} - -if (document.readyState === "interactive" || document.readyState === "complete") { - webViewerLoad(); -} else { - document.addEventListener("DOMContentLoaded", webViewerLoad, true); -} - -/***/ }), -/* 1 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFPrintServiceFactory = exports.DefaultExternalServices = exports.PDFViewerApplication = void 0; - -var _ui_utils = __webpack_require__(2); - -var _app_options = __webpack_require__(3); - -var _pdfjsLib = __webpack_require__(5); - -var _pdf_cursor_tools = __webpack_require__(6); - -var _pdf_rendering_queue = __webpack_require__(8); - -var _pdf_sidebar = __webpack_require__(9); - -var _overlay_manager = __webpack_require__(10); - -var _password_prompt = __webpack_require__(11); - -var _pdf_attachment_viewer = __webpack_require__(12); - -var _pdf_document_properties = __webpack_require__(13); - -var _pdf_find_bar = __webpack_require__(14); - -var _pdf_find_controller = __webpack_require__(15); - -var _pdf_history = __webpack_require__(17); - -var _pdf_link_service = __webpack_require__(18); - -var _pdf_outline_viewer = __webpack_require__(19); - -var _pdf_presentation_mode = __webpack_require__(20); - -var _pdf_sidebar_resizer = __webpack_require__(21); - -var _pdf_thumbnail_viewer = __webpack_require__(22); - -var _pdf_viewer = __webpack_require__(24); - -var _secondary_toolbar = __webpack_require__(29); - -var _toolbar = __webpack_require__(31); - -var _view_history = __webpack_require__(32); - -const DEFAULT_SCALE_DELTA = 1.1; -const DISABLE_AUTO_FETCH_LOADING_BAR_TIMEOUT = 5000; -const FORCE_PAGES_LOADED_TIMEOUT = 10000; -const WHEEL_ZOOM_DISABLED_TIMEOUT = 1000; -const ENABLE_PERMISSIONS_CLASS = "enablePermissions"; -const ViewOnLoad = { - UNKNOWN: -1, - PREVIOUS: 0, - INITIAL: 1 -}; - -class DefaultExternalServices { - constructor() { - throw new Error("Cannot initialize DefaultExternalServices."); - } - - static updateFindControlState(data) {} - - static updateFindMatchesCount(data) {} - - static initPassiveLoading(callbacks) {} - - static fallback(data, callback) {} - - static reportTelemetry(data) {} - - static createDownloadManager(options) { - throw new Error("Not implemented: createDownloadManager"); - } - - static createPreferences() { - throw new Error("Not implemented: createPreferences"); - } - - static createL10n(options) { - throw new Error("Not implemented: createL10n"); - } - - static get supportsIntegratedFind() { - return (0, _pdfjsLib.shadow)(this, "supportsIntegratedFind", false); - } - - static get supportsDocumentFonts() { - return (0, _pdfjsLib.shadow)(this, "supportsDocumentFonts", true); - } - - static get supportedMouseWheelZoomModifierKeys() { - return (0, _pdfjsLib.shadow)(this, "supportedMouseWheelZoomModifierKeys", { - ctrlKey: true, - metaKey: true - }); - } - - static get isInAutomation() { - return (0, _pdfjsLib.shadow)(this, "isInAutomation", false); - } - -} - -exports.DefaultExternalServices = DefaultExternalServices; -const PDFViewerApplication = { - initialBookmark: document.location.hash.substring(1), - _initializedCapability: (0, _pdfjsLib.createPromiseCapability)(), - fellback: false, - appConfig: null, - pdfDocument: null, - pdfLoadingTask: null, - printService: null, - pdfViewer: null, - pdfThumbnailViewer: null, - pdfRenderingQueue: null, - pdfPresentationMode: null, - pdfDocumentProperties: null, - pdfLinkService: null, - pdfHistory: null, - pdfSidebar: null, - pdfSidebarResizer: null, - pdfOutlineViewer: null, - pdfAttachmentViewer: null, - pdfCursorTools: null, - store: null, - downloadManager: null, - overlayManager: null, - preferences: null, - toolbar: null, - secondaryToolbar: null, - eventBus: null, - l10n: null, - isInitialViewSet: false, - downloadComplete: false, - isViewerEmbedded: window.parent !== window, - url: "", - baseUrl: "", - externalServices: DefaultExternalServices, - _boundEvents: {}, - contentDispositionFilename: null, - - async initialize(appConfig) { - this.preferences = this.externalServices.createPreferences(); - this.appConfig = appConfig; - await this._readPreferences(); - await this._parseHashParameters(); - await this._initializeL10n(); - - if (this.isViewerEmbedded && _app_options.AppOptions.get("externalLinkTarget") === _pdfjsLib.LinkTarget.NONE) { - _app_options.AppOptions.set("externalLinkTarget", _pdfjsLib.LinkTarget.TOP); - } - - await this._initializeViewerComponents(); - this.bindEvents(); - this.bindWindowEvents(); - const appContainer = appConfig.appContainer || document.documentElement; - this.l10n.translate(appContainer).then(() => { - this.eventBus.dispatch("localized", { - source: this - }); - }); - - this._initializedCapability.resolve(); - }, - - async _readPreferences() { - if (_app_options.AppOptions.get("disablePreferences")) { - return; - } - - try { - const prefs = await this.preferences.getAll(); - - for (const name in prefs) { - _app_options.AppOptions.set(name, prefs[name]); - } - } catch (reason) { - console.error(`_readPreferences: "${reason.message}".`); - } - }, - - async _parseHashParameters() { - if (!_app_options.AppOptions.get("pdfBugEnabled")) { - return undefined; - } - - const hash = document.location.hash.substring(1); - - if (!hash) { - return undefined; - } - - const hashParams = (0, _ui_utils.parseQueryString)(hash), - waitOn = []; - - if ("disableworker" in hashParams && hashParams.disableworker === "true") { - waitOn.push(loadFakeWorker()); - } - - if ("disablerange" in hashParams) { - _app_options.AppOptions.set("disableRange", hashParams.disablerange === "true"); - } - - if ("disablestream" in hashParams) { - _app_options.AppOptions.set("disableStream", hashParams.disablestream === "true"); - } - - if ("disableautofetch" in hashParams) { - _app_options.AppOptions.set("disableAutoFetch", hashParams.disableautofetch === "true"); - } - - if ("disablefontface" in hashParams) { - _app_options.AppOptions.set("disableFontFace", hashParams.disablefontface === "true"); - } - - if ("disablehistory" in hashParams) { - _app_options.AppOptions.set("disableHistory", hashParams.disablehistory === "true"); - } - - if ("webgl" in hashParams) { - _app_options.AppOptions.set("enableWebGL", hashParams.webgl === "true"); - } - - if ("verbosity" in hashParams) { - _app_options.AppOptions.set("verbosity", hashParams.verbosity | 0); - } - - if ("textlayer" in hashParams) { - switch (hashParams.textlayer) { - case "off": - _app_options.AppOptions.set("textLayerMode", _ui_utils.TextLayerMode.DISABLE); - - break; - - case "visible": - case "shadow": - case "hover": - const viewer = this.appConfig.viewerContainer; - viewer.classList.add("textLayer-" + hashParams.textlayer); - break; - } - } - - if ("pdfbug" in hashParams) { - _app_options.AppOptions.set("pdfBug", true); - - _app_options.AppOptions.set("fontExtraProperties", true); - - const enabled = hashParams.pdfbug.split(","); - waitOn.push(loadAndEnablePDFBug(enabled)); - } - - if ("locale" in hashParams) { - _app_options.AppOptions.set("locale", hashParams.locale); - } - - return Promise.all(waitOn).catch(reason => { - console.error(`_parseHashParameters: "${reason.message}".`); - }); - }, - - async _initializeL10n() { - this.l10n = this.externalServices.createL10n({ - locale: _app_options.AppOptions.get("locale") - }); - const dir = await this.l10n.getDirection(); - document.getElementsByTagName("html")[0].dir = dir; - }, - - async _initializeViewerComponents() { - const appConfig = this.appConfig; - const eventBus = appConfig.eventBus || new _ui_utils.EventBus({ - isInAutomation: this.externalServices.isInAutomation - }); - this.eventBus = eventBus; - this.overlayManager = new _overlay_manager.OverlayManager(); - const pdfRenderingQueue = new _pdf_rendering_queue.PDFRenderingQueue(); - pdfRenderingQueue.onIdle = this.cleanup.bind(this); - this.pdfRenderingQueue = pdfRenderingQueue; - const pdfLinkService = new _pdf_link_service.PDFLinkService({ - eventBus, - externalLinkTarget: _app_options.AppOptions.get("externalLinkTarget"), - externalLinkRel: _app_options.AppOptions.get("externalLinkRel"), - ignoreDestinationZoom: _app_options.AppOptions.get("ignoreDestinationZoom") - }); - this.pdfLinkService = pdfLinkService; - const downloadManager = this.externalServices.createDownloadManager({ - disableCreateObjectURL: _app_options.AppOptions.get("disableCreateObjectURL") - }); - this.downloadManager = downloadManager; - const findController = new _pdf_find_controller.PDFFindController({ - linkService: pdfLinkService, - eventBus - }); - this.findController = findController; - const container = appConfig.mainContainer; - const viewer = appConfig.viewerContainer; - this.pdfViewer = new _pdf_viewer.PDFViewer({ - container, - viewer, - eventBus, - renderingQueue: pdfRenderingQueue, - linkService: pdfLinkService, - downloadManager, - findController, - renderer: _app_options.AppOptions.get("renderer"), - enableWebGL: _app_options.AppOptions.get("enableWebGL"), - l10n: this.l10n, - textLayerMode: _app_options.AppOptions.get("textLayerMode"), - imageResourcesPath: _app_options.AppOptions.get("imageResourcesPath"), - renderInteractiveForms: _app_options.AppOptions.get("renderInteractiveForms"), - enablePrintAutoRotate: _app_options.AppOptions.get("enablePrintAutoRotate"), - useOnlyCssZoom: _app_options.AppOptions.get("useOnlyCssZoom"), - maxCanvasPixels: _app_options.AppOptions.get("maxCanvasPixels") - }); - pdfRenderingQueue.setViewer(this.pdfViewer); - pdfLinkService.setViewer(this.pdfViewer); - this.pdfThumbnailViewer = new _pdf_thumbnail_viewer.PDFThumbnailViewer({ - container: appConfig.sidebar.thumbnailView, - renderingQueue: pdfRenderingQueue, - linkService: pdfLinkService, - l10n: this.l10n - }); - pdfRenderingQueue.setThumbnailViewer(this.pdfThumbnailViewer); - this.pdfHistory = new _pdf_history.PDFHistory({ - linkService: pdfLinkService, - eventBus - }); - pdfLinkService.setHistory(this.pdfHistory); - - if (!this.supportsIntegratedFind) { - this.findBar = new _pdf_find_bar.PDFFindBar(appConfig.findBar, eventBus, this.l10n); - } - - this.pdfDocumentProperties = new _pdf_document_properties.PDFDocumentProperties(appConfig.documentProperties, this.overlayManager, eventBus, this.l10n); - this.pdfCursorTools = new _pdf_cursor_tools.PDFCursorTools({ - container, - eventBus, - cursorToolOnLoad: _app_options.AppOptions.get("cursorToolOnLoad") - }); - this.toolbar = new _toolbar.Toolbar(appConfig.toolbar, eventBus, this.l10n); - this.secondaryToolbar = new _secondary_toolbar.SecondaryToolbar(appConfig.secondaryToolbar, container, eventBus); - - if (this.supportsFullscreen) { - this.pdfPresentationMode = new _pdf_presentation_mode.PDFPresentationMode({ - container, - pdfViewer: this.pdfViewer, - eventBus, - contextMenuItems: appConfig.fullscreen - }); - } - - this.passwordPrompt = new _password_prompt.PasswordPrompt(appConfig.passwordOverlay, this.overlayManager, this.l10n); - this.pdfOutlineViewer = new _pdf_outline_viewer.PDFOutlineViewer({ - container: appConfig.sidebar.outlineView, - eventBus, - linkService: pdfLinkService - }); - this.pdfAttachmentViewer = new _pdf_attachment_viewer.PDFAttachmentViewer({ - container: appConfig.sidebar.attachmentsView, - eventBus, - downloadManager - }); - this.pdfSidebar = new _pdf_sidebar.PDFSidebar({ - elements: appConfig.sidebar, - pdfViewer: this.pdfViewer, - pdfThumbnailViewer: this.pdfThumbnailViewer, - eventBus, - l10n: this.l10n - }); - this.pdfSidebar.onToggled = this.forceRendering.bind(this); - this.pdfSidebarResizer = new _pdf_sidebar_resizer.PDFSidebarResizer(appConfig.sidebarResizer, eventBus, this.l10n); - }, - - run(config) { - this.initialize(config).then(webViewerInitialized); - }, - - get initialized() { - return this._initializedCapability.settled; - }, - - get initializedPromise() { - return this._initializedCapability.promise; - }, - - zoomIn(ticks) { - if (this.pdfViewer.isInPresentationMode) { - return; - } - - let newScale = this.pdfViewer.currentScale; - - do { - newScale = (newScale * DEFAULT_SCALE_DELTA).toFixed(2); - newScale = Math.ceil(newScale * 10) / 10; - newScale = Math.min(_ui_utils.MAX_SCALE, newScale); - } while (--ticks > 0 && newScale < _ui_utils.MAX_SCALE); - - this.pdfViewer.currentScaleValue = newScale; - }, - - zoomOut(ticks) { - if (this.pdfViewer.isInPresentationMode) { - return; - } - - let newScale = this.pdfViewer.currentScale; - - do { - newScale = (newScale / DEFAULT_SCALE_DELTA).toFixed(2); - newScale = Math.floor(newScale * 10) / 10; - newScale = Math.max(_ui_utils.MIN_SCALE, newScale); - } while (--ticks > 0 && newScale > _ui_utils.MIN_SCALE); - - this.pdfViewer.currentScaleValue = newScale; - }, - - zoomReset() { - if (this.pdfViewer.isInPresentationMode) { - return; - } - - this.pdfViewer.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE; - }, - - get pagesCount() { - return this.pdfDocument ? this.pdfDocument.numPages : 0; - }, - - get page() { - return this.pdfViewer.currentPageNumber; - }, - - set page(val) { - this.pdfViewer.currentPageNumber = val; - }, - - get printing() { - return !!this.printService; - }, - - get supportsPrinting() { - return PDFPrintServiceFactory.instance.supportsPrinting; - }, - - get supportsFullscreen() { - let support; - const doc = document.documentElement; - support = !!(doc.requestFullscreen || doc.mozRequestFullScreen || doc.webkitRequestFullScreen || doc.msRequestFullscreen); - - if (document.fullscreenEnabled === false || document.mozFullScreenEnabled === false || document.webkitFullscreenEnabled === false || document.msFullscreenEnabled === false) { - support = false; - } - - return (0, _pdfjsLib.shadow)(this, "supportsFullscreen", support); - }, - - get supportsIntegratedFind() { - return this.externalServices.supportsIntegratedFind; - }, - - get supportsDocumentFonts() { - return this.externalServices.supportsDocumentFonts; - }, - - get loadingBar() { - const bar = new _ui_utils.ProgressBar("#loadingBar"); - return (0, _pdfjsLib.shadow)(this, "loadingBar", bar); - }, - - get supportedMouseWheelZoomModifierKeys() { - return this.externalServices.supportedMouseWheelZoomModifierKeys; - }, - - initPassiveLoading() { - throw new Error("Not implemented: initPassiveLoading"); - }, - - setTitleUsingUrl(url = "") { - this.url = url; - this.baseUrl = url.split("#")[0]; - let title = (0, _ui_utils.getPDFFileNameFromURL)(url, ""); - - if (!title) { - try { - title = decodeURIComponent((0, _pdfjsLib.getFilenameFromUrl)(url)) || url; - } catch (ex) { - title = url; - } - } - - this.setTitle(title); - }, - - setTitle(title) { - if (this.isViewerEmbedded) { - return; - } - - document.title = title; - }, - - async close() { - const errorWrapper = this.appConfig.errorWrapper.container; - errorWrapper.setAttribute("hidden", "true"); - - if (!this.pdfLoadingTask) { - return undefined; - } - - const promise = this.pdfLoadingTask.destroy(); - this.pdfLoadingTask = null; - - if (this.pdfDocument) { - this.pdfDocument = null; - this.pdfThumbnailViewer.setDocument(null); - this.pdfViewer.setDocument(null); - this.pdfLinkService.setDocument(null); - this.pdfDocumentProperties.setDocument(null); - } - - webViewerResetPermissions(); - this.store = null; - this.isInitialViewSet = false; - this.downloadComplete = false; - this.url = ""; - this.baseUrl = ""; - this.contentDispositionFilename = null; - this.pdfSidebar.reset(); - this.pdfOutlineViewer.reset(); - this.pdfAttachmentViewer.reset(); - - if (this.pdfHistory) { - this.pdfHistory.reset(); - } - - if (this.findBar) { - this.findBar.reset(); - } - - this.toolbar.reset(); - this.secondaryToolbar.reset(); - - if (typeof PDFBug !== "undefined") { - PDFBug.cleanup(); - } - - return promise; - }, - - async open(file, args) { - if (this.pdfLoadingTask) { - await this.close(); - } - - const workerParameters = _app_options.AppOptions.getAll(_app_options.OptionKind.WORKER); - - for (const key in workerParameters) { - _pdfjsLib.GlobalWorkerOptions[key] = workerParameters[key]; - } - - const parameters = Object.create(null); - - if (typeof file === "string") { - this.setTitleUsingUrl(file); - parameters.url = file; - } else if (file && "byteLength" in file) { - parameters.data = file; - } else if (file.url && file.originalUrl) { - this.setTitleUsingUrl(file.originalUrl); - parameters.url = file.url; - } - - const apiParameters = _app_options.AppOptions.getAll(_app_options.OptionKind.API); - - for (const key in apiParameters) { - let value = apiParameters[key]; - - if (key === "docBaseUrl" && !value) {} - - parameters[key] = value; - } - - if (args) { - for (const key in args) { - const value = args[key]; - - if (key === "length") { - this.pdfDocumentProperties.setFileSize(value); - } - - parameters[key] = value; - } - } - - const loadingTask = (0, _pdfjsLib.getDocument)(parameters); - this.pdfLoadingTask = loadingTask; - - loadingTask.onPassword = (updateCallback, reason) => { - this.pdfLinkService.externalLinkEnabled = false; - this.passwordPrompt.setUpdateCallback(updateCallback, reason); - this.passwordPrompt.open(); - }; - - loadingTask.onProgress = ({ - loaded, - total - }) => { - this.progress(loaded / total); - }; - - loadingTask.onUnsupportedFeature = this.fallback.bind(this); - return loadingTask.promise.then(pdfDocument => { - this.load(pdfDocument); - }, exception => { - if (loadingTask !== this.pdfLoadingTask) { - return undefined; - } - - const message = exception && exception.message; - let loadingErrorMessage; - - if (exception instanceof _pdfjsLib.InvalidPDFException) { - loadingErrorMessage = this.l10n.get("invalid_file_error", null, "Invalid or corrupted PDF file."); - } else if (exception instanceof _pdfjsLib.MissingPDFException) { - loadingErrorMessage = this.l10n.get("missing_file_error", null, "Missing PDF file."); - } else if (exception instanceof _pdfjsLib.UnexpectedResponseException) { - loadingErrorMessage = this.l10n.get("unexpected_response_error", null, "Unexpected server response."); - } else { - loadingErrorMessage = this.l10n.get("loading_error", null, "An error occurred while loading the PDF."); - } - - return loadingErrorMessage.then(msg => { - this.error(msg, { - message - }); - throw exception; - }); - }); - }, - - download() { - function downloadByUrl() { - downloadManager.downloadUrl(url, filename); - } - - const url = this.baseUrl; - const filename = this.contentDispositionFilename || (0, _ui_utils.getPDFFileNameFromURL)(this.url); - const downloadManager = this.downloadManager; - - downloadManager.onerror = err => { - this.error(`PDF failed to download: ${err}`); - }; - - if (!this.pdfDocument || !this.downloadComplete) { - downloadByUrl(); - return; - } - - this.pdfDocument.getData().then(function (data) { - const blob = new Blob([data], { - type: "application/pdf" - }); - downloadManager.download(blob, url, filename); - }).catch(downloadByUrl); - }, - - fallback(featureId) { - if (this.fellback) { - return; - } - - this.fellback = true; - this.externalServices.fallback({ - featureId, - url: this.baseUrl - }, function response(download) { - if (!download) { - return; - } - - PDFViewerApplication.download(); - }); - }, - - error(message, moreInfo) { - const moreInfoText = [this.l10n.get("error_version_info", { - version: _pdfjsLib.version || "?", - build: _pdfjsLib.build || "?" - }, "PDF.js v{{version}} (build: {{build}})")]; - - if (moreInfo) { - moreInfoText.push(this.l10n.get("error_message", { - message: moreInfo.message - }, "Message: {{message}}")); - - if (moreInfo.stack) { - moreInfoText.push(this.l10n.get("error_stack", { - stack: moreInfo.stack - }, "Stack: {{stack}}")); - } else { - if (moreInfo.filename) { - moreInfoText.push(this.l10n.get("error_file", { - file: moreInfo.filename - }, "File: {{file}}")); - } - - if (moreInfo.lineNumber) { - moreInfoText.push(this.l10n.get("error_line", { - line: moreInfo.lineNumber - }, "Line: {{line}}")); - } - } - } - - const errorWrapperConfig = this.appConfig.errorWrapper; - const errorWrapper = errorWrapperConfig.container; - errorWrapper.removeAttribute("hidden"); - const errorMessage = errorWrapperConfig.errorMessage; - errorMessage.textContent = message; - const closeButton = errorWrapperConfig.closeButton; - - closeButton.onclick = function () { - errorWrapper.setAttribute("hidden", "true"); - }; - - const errorMoreInfo = errorWrapperConfig.errorMoreInfo; - const moreInfoButton = errorWrapperConfig.moreInfoButton; - const lessInfoButton = errorWrapperConfig.lessInfoButton; - - moreInfoButton.onclick = function () { - errorMoreInfo.removeAttribute("hidden"); - moreInfoButton.setAttribute("hidden", "true"); - lessInfoButton.removeAttribute("hidden"); - errorMoreInfo.style.height = errorMoreInfo.scrollHeight + "px"; - }; - - lessInfoButton.onclick = function () { - errorMoreInfo.setAttribute("hidden", "true"); - moreInfoButton.removeAttribute("hidden"); - lessInfoButton.setAttribute("hidden", "true"); - }; - - moreInfoButton.oncontextmenu = _ui_utils.noContextMenuHandler; - lessInfoButton.oncontextmenu = _ui_utils.noContextMenuHandler; - closeButton.oncontextmenu = _ui_utils.noContextMenuHandler; - moreInfoButton.removeAttribute("hidden"); - lessInfoButton.setAttribute("hidden", "true"); - Promise.all(moreInfoText).then(parts => { - errorMoreInfo.value = parts.join("\n"); - }); - }, - - progress(level) { - if (this.downloadComplete) { - return; - } - - const percent = Math.round(level * 100); - - if (percent > this.loadingBar.percent || isNaN(percent)) { - this.loadingBar.percent = percent; - const disableAutoFetch = this.pdfDocument ? this.pdfDocument.loadingParams.disableAutoFetch : _app_options.AppOptions.get("disableAutoFetch"); - - if (disableAutoFetch && percent) { - if (this.disableAutoFetchLoadingBarTimeout) { - clearTimeout(this.disableAutoFetchLoadingBarTimeout); - this.disableAutoFetchLoadingBarTimeout = null; - } - - this.loadingBar.show(); - this.disableAutoFetchLoadingBarTimeout = setTimeout(() => { - this.loadingBar.hide(); - this.disableAutoFetchLoadingBarTimeout = null; - }, DISABLE_AUTO_FETCH_LOADING_BAR_TIMEOUT); - } - } - }, - - load(pdfDocument) { - this.pdfDocument = pdfDocument; - pdfDocument.getDownloadInfo().then(() => { - this.downloadComplete = true; - this.loadingBar.hide(); - firstPagePromise.then(() => { - this.eventBus.dispatch("documentloaded", { - source: this - }); - }); - }); - const pageLayoutPromise = pdfDocument.getPageLayout().catch(function () {}); - const pageModePromise = pdfDocument.getPageMode().catch(function () {}); - const openActionPromise = pdfDocument.getOpenAction().catch(function () {}); - this.toolbar.setPagesCount(pdfDocument.numPages, false); - this.secondaryToolbar.setPagesCount(pdfDocument.numPages); - let baseDocumentUrl; - baseDocumentUrl = null; - this.pdfLinkService.setDocument(pdfDocument, baseDocumentUrl); - this.pdfDocumentProperties.setDocument(pdfDocument, this.url); - const pdfViewer = this.pdfViewer; - pdfViewer.setDocument(pdfDocument); - const { - firstPagePromise, - onePageRendered, - pagesPromise - } = pdfViewer; - const pdfThumbnailViewer = this.pdfThumbnailViewer; - pdfThumbnailViewer.setDocument(pdfDocument); - const storedPromise = (this.store = new _view_history.ViewHistory(pdfDocument.fingerprint)).getMultiple({ - page: null, - zoom: _ui_utils.DEFAULT_SCALE_VALUE, - scrollLeft: "0", - scrollTop: "0", - rotation: null, - sidebarView: _pdf_sidebar.SidebarView.UNKNOWN, - scrollMode: _ui_utils.ScrollMode.UNKNOWN, - spreadMode: _ui_utils.SpreadMode.UNKNOWN - }).catch(() => { - return Object.create(null); - }); - firstPagePromise.then(pdfPage => { - this.loadingBar.setWidth(this.appConfig.viewerContainer); - Promise.all([_ui_utils.animationStarted, storedPromise, pageLayoutPromise, pageModePromise, openActionPromise]).then(async ([timeStamp, stored, pageLayout, pageMode, openAction]) => { - const viewOnLoad = _app_options.AppOptions.get("viewOnLoad"); - - this._initializePdfHistory({ - fingerprint: pdfDocument.fingerprint, - viewOnLoad, - initialDest: openAction && openAction.dest - }); - - const initialBookmark = this.initialBookmark; - - const zoom = _app_options.AppOptions.get("defaultZoomValue"); - - let hash = zoom ? `zoom=${zoom}` : null; - let rotation = null; - - let sidebarView = _app_options.AppOptions.get("sidebarViewOnLoad"); - - let scrollMode = _app_options.AppOptions.get("scrollModeOnLoad"); - - let spreadMode = _app_options.AppOptions.get("spreadModeOnLoad"); - - if (stored.page && viewOnLoad !== ViewOnLoad.INITIAL) { - hash = `page=${stored.page}&zoom=${zoom || stored.zoom},` + `${stored.scrollLeft},${stored.scrollTop}`; - rotation = parseInt(stored.rotation, 10); - - if (sidebarView === _pdf_sidebar.SidebarView.UNKNOWN) { - sidebarView = stored.sidebarView | 0; - } - - if (scrollMode === _ui_utils.ScrollMode.UNKNOWN) { - scrollMode = stored.scrollMode | 0; - } - - if (spreadMode === _ui_utils.SpreadMode.UNKNOWN) { - spreadMode = stored.spreadMode | 0; - } - } - - if (pageMode && sidebarView === _pdf_sidebar.SidebarView.UNKNOWN) { - sidebarView = apiPageModeToSidebarView(pageMode); - } - - if (pageLayout && spreadMode === _ui_utils.SpreadMode.UNKNOWN) { - spreadMode = apiPageLayoutToSpreadMode(pageLayout); - } - - this.setInitialView(hash, { - rotation, - sidebarView, - scrollMode, - spreadMode - }); - this.eventBus.dispatch("documentinit", { - source: this - }); - - if (!this.isViewerEmbedded) { - pdfViewer.focus(); - } - - this._initializePermissions(pdfDocument); - - await Promise.race([pagesPromise, new Promise(resolve => { - setTimeout(resolve, FORCE_PAGES_LOADED_TIMEOUT); - })]); - - if (!initialBookmark && !hash) { - return; - } - - if (pdfViewer.hasEqualPageSizes) { - return; - } - - this.initialBookmark = initialBookmark; - pdfViewer.currentScaleValue = pdfViewer.currentScaleValue; - this.setInitialView(hash); - }).catch(() => { - this.setInitialView(); - }).then(function () { - pdfViewer.update(); - }); - }); - pagesPromise.then(() => { - this._initializeAutoPrint(pdfDocument, openActionPromise); - }); - onePageRendered.then(() => { - pdfDocument.getOutline().then(outline => { - this.pdfOutlineViewer.render({ - outline - }); - }); - pdfDocument.getAttachments().then(attachments => { - this.pdfAttachmentViewer.render({ - attachments - }); - }); - }); - - this._initializePageLabels(pdfDocument); - - this._initializeMetadata(pdfDocument); - }, - - async _initializeAutoPrint(pdfDocument, openActionPromise) { - const [openAction, javaScript] = await Promise.all([openActionPromise, pdfDocument.getJavaScript()]); - - if (pdfDocument !== this.pdfDocument) { - return; - } - - let triggerAutoPrint = false; - - if (openAction && openAction.action === "Print") { - triggerAutoPrint = true; - } - - if (javaScript) { - javaScript.some(js => { - if (!js) { - return false; - } - - console.warn("Warning: JavaScript is not supported"); - this.fallback(_pdfjsLib.UNSUPPORTED_FEATURES.javaScript); - return true; - }); - - if (!triggerAutoPrint) { - for (const js of javaScript) { - if (js && _ui_utils.AutoPrintRegExp.test(js)) { - triggerAutoPrint = true; - break; - } - } - } - } - - if (!this.supportsPrinting) { - return; - } - - if (triggerAutoPrint) { - setTimeout(function () { - window.print(); - }); - } - }, - - async _initializeMetadata(pdfDocument) { - const { - info, - metadata, - contentDispositionFilename - } = await pdfDocument.getMetadata(); - - if (pdfDocument !== this.pdfDocument) { - return; - } - - this.documentInfo = info; - this.metadata = metadata; - this.contentDispositionFilename = contentDispositionFilename; - console.log(`PDF ${pdfDocument.fingerprint} [${info.PDFFormatVersion} ` + `${(info.Producer || "-").trim()} / ${(info.Creator || "-").trim()}] ` + `(PDF.js: ${_pdfjsLib.version || "-"}` + `${this.pdfViewer.enableWebGL ? " [WebGL]" : ""})`); - let pdfTitle; - const infoTitle = info && info.Title; - - if (infoTitle) { - pdfTitle = infoTitle; - } - - const metadataTitle = metadata && metadata.get("dc:title"); - - if (metadataTitle) { - if (metadataTitle !== "Untitled" && !/[\uFFF0-\uFFFF]/g.test(metadataTitle)) { - pdfTitle = metadataTitle; - } - } - - if (pdfTitle) { - this.setTitle(`${pdfTitle} - ${contentDispositionFilename || document.title}`); - } else if (contentDispositionFilename) { - this.setTitle(contentDispositionFilename); - } - - if (info.IsAcroFormPresent) { - console.warn("Warning: AcroForm/XFA is not supported"); - this.fallback(_pdfjsLib.UNSUPPORTED_FEATURES.forms); - } - - let versionId = "other"; - const KNOWN_VERSIONS = ["1.0", "1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "2.0", "2.1", "2.2", "2.3"]; - - if (KNOWN_VERSIONS.includes(info.PDFFormatVersion)) { - versionId = `v${info.PDFFormatVersion.replace(".", "_")}`; - } - - let generatorId = "other"; - const KNOWN_GENERATORS = ["acrobat distiller", "acrobat pdfwriter", "adobe livecycle", "adobe pdf library", "adobe photoshop", "ghostscript", "tcpdf", "cairo", "dvipdfm", "dvips", "pdftex", "pdfkit", "itext", "prince", "quarkxpress", "mac os x", "microsoft", "openoffice", "oracle", "luradocument", "pdf-xchange", "antenna house", "aspose.cells", "fpdf"]; - - if (info.Producer) { - const producer = info.Producer.toLowerCase(); - KNOWN_GENERATORS.some(function (generator) { - if (!producer.includes(generator)) { - return false; - } - - generatorId = generator.replace(/[ .\-]/g, "_"); - return true; - }); - } - - let formType = null; - - if (info.IsAcroFormPresent) { - formType = info.IsXFAPresent ? "xfa" : "acroform"; - } - - this.externalServices.reportTelemetry({ - type: "documentInfo", - version: versionId, - generator: generatorId, - formType - }); - }, - - async _initializePageLabels(pdfDocument) { - const labels = await pdfDocument.getPageLabels(); - - if (pdfDocument !== this.pdfDocument) { - return; - } - - if (!labels || _app_options.AppOptions.get("disablePageLabels")) { - return; - } - - const numLabels = labels.length; - - if (numLabels !== this.pagesCount) { - console.error("The number of Page Labels does not match the number of pages in the document."); - return; - } - - let i = 0; - - while (i < numLabels && labels[i] === (i + 1).toString()) { - i++; - } - - if (i === numLabels) { - return; - } - - const { - pdfViewer, - pdfThumbnailViewer, - toolbar - } = this; - pdfViewer.setPageLabels(labels); - pdfThumbnailViewer.setPageLabels(labels); - toolbar.setPagesCount(numLabels, true); - toolbar.setPageNumber(pdfViewer.currentPageNumber, pdfViewer.currentPageLabel); - }, - - _initializePdfHistory({ - fingerprint, - viewOnLoad, - initialDest = null - }) { - if (this.isViewerEmbedded || _app_options.AppOptions.get("disableHistory")) { - return; - } - - this.pdfHistory.initialize({ - fingerprint, - resetHistory: viewOnLoad === ViewOnLoad.INITIAL, - updateUrl: _app_options.AppOptions.get("historyUpdateUrl") - }); - - if (this.pdfHistory.initialBookmark) { - this.initialBookmark = this.pdfHistory.initialBookmark; - this.initialRotation = this.pdfHistory.initialRotation; - } - - if (initialDest && !this.initialBookmark && viewOnLoad === ViewOnLoad.UNKNOWN) { - this.initialBookmark = JSON.stringify(initialDest); - this.pdfHistory.push({ - explicitDest: initialDest, - pageNumber: null - }); - } - }, - - async _initializePermissions(pdfDocument) { - const permissions = await pdfDocument.getPermissions(); - - if (pdfDocument !== this.pdfDocument) { - return; - } - - if (!permissions || !_app_options.AppOptions.get("enablePermissions")) { - return; - } - - if (!permissions.includes(_pdfjsLib.PermissionFlag.COPY)) { - this.appConfig.viewerContainer.classList.add(ENABLE_PERMISSIONS_CLASS); - } - }, - - setInitialView(storedHash, { - rotation, - sidebarView, - scrollMode, - spreadMode - } = {}) { - const setRotation = angle => { - if ((0, _ui_utils.isValidRotation)(angle)) { - this.pdfViewer.pagesRotation = angle; - } - }; - - const setViewerModes = (scroll, spread) => { - if ((0, _ui_utils.isValidScrollMode)(scroll)) { - this.pdfViewer.scrollMode = scroll; - } - - if ((0, _ui_utils.isValidSpreadMode)(spread)) { - this.pdfViewer.spreadMode = spread; - } - }; - - this.isInitialViewSet = true; - this.pdfSidebar.setInitialView(sidebarView); - setViewerModes(scrollMode, spreadMode); - - if (this.initialBookmark) { - setRotation(this.initialRotation); - delete this.initialRotation; - this.pdfLinkService.setHash(this.initialBookmark); - this.initialBookmark = null; - } else if (storedHash) { - setRotation(rotation); - this.pdfLinkService.setHash(storedHash); - } - - this.toolbar.setPageNumber(this.pdfViewer.currentPageNumber, this.pdfViewer.currentPageLabel); - this.secondaryToolbar.setPageNumber(this.pdfViewer.currentPageNumber); - - if (!this.pdfViewer.currentScaleValue) { - this.pdfViewer.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE; - } - }, - - cleanup() { - if (!this.pdfDocument) { - return; - } - - this.pdfViewer.cleanup(); - this.pdfThumbnailViewer.cleanup(); - - if (this.pdfViewer.renderer !== _ui_utils.RendererType.SVG) { - this.pdfDocument.cleanup(); - } - }, - - forceRendering() { - this.pdfRenderingQueue.printing = this.printing; - this.pdfRenderingQueue.isThumbnailViewEnabled = this.pdfSidebar.isThumbnailViewVisible; - this.pdfRenderingQueue.renderHighestPriority(); - }, - - beforePrint() { - if (this.printService) { - return; - } - - if (!this.supportsPrinting) { - this.l10n.get("printing_not_supported", null, "Warning: Printing is not fully supported by this browser.").then(printMessage => { - this.error(printMessage); - }); - return; - } - - if (!this.pdfViewer.pageViewsReady) { - this.l10n.get("printing_not_ready", null, "Warning: The PDF is not fully loaded for printing.").then(notReadyMessage => { - window.alert(notReadyMessage); - }); - return; - } - - const pagesOverview = this.pdfViewer.getPagesOverview(); - const printContainer = this.appConfig.printContainer; - const printService = PDFPrintServiceFactory.instance.createPrintService(this.pdfDocument, pagesOverview, printContainer, this.l10n); - this.printService = printService; - this.forceRendering(); - printService.layout(); - this.externalServices.reportTelemetry({ - type: "print" - }); - }, - - afterPrint() { - if (this.printService) { - this.printService.destroy(); - this.printService = null; - } - - this.forceRendering(); - }, - - rotatePages(delta) { - if (!this.pdfDocument) { - return; - } - - const newRotation = (this.pdfViewer.pagesRotation + 360 + delta) % 360; - this.pdfViewer.pagesRotation = newRotation; - }, - - requestPresentationMode() { - if (!this.pdfPresentationMode) { - return; - } - - this.pdfPresentationMode.request(); - }, - - bindEvents() { - const { - eventBus, - _boundEvents - } = this; - _boundEvents.beforePrint = this.beforePrint.bind(this); - _boundEvents.afterPrint = this.afterPrint.bind(this); - - eventBus._on("resize", webViewerResize); - - eventBus._on("hashchange", webViewerHashchange); - - eventBus._on("beforeprint", _boundEvents.beforePrint); - - eventBus._on("afterprint", _boundEvents.afterPrint); - - eventBus._on("pagerendered", webViewerPageRendered); - - eventBus._on("updateviewarea", webViewerUpdateViewarea); - - eventBus._on("pagechanging", webViewerPageChanging); - - eventBus._on("scalechanging", webViewerScaleChanging); - - eventBus._on("rotationchanging", webViewerRotationChanging); - - eventBus._on("sidebarviewchanged", webViewerSidebarViewChanged); - - eventBus._on("pagemode", webViewerPageMode); - - eventBus._on("namedaction", webViewerNamedAction); - - eventBus._on("presentationmodechanged", webViewerPresentationModeChanged); - - eventBus._on("presentationmode", webViewerPresentationMode); - - eventBus._on("print", webViewerPrint); - - eventBus._on("download", webViewerDownload); - - eventBus._on("firstpage", webViewerFirstPage); - - eventBus._on("lastpage", webViewerLastPage); - - eventBus._on("nextpage", webViewerNextPage); - - eventBus._on("previouspage", webViewerPreviousPage); - - eventBus._on("zoomin", webViewerZoomIn); - - eventBus._on("zoomout", webViewerZoomOut); - - eventBus._on("zoomreset", webViewerZoomReset); - - eventBus._on("pagenumberchanged", webViewerPageNumberChanged); - - eventBus._on("scalechanged", webViewerScaleChanged); - - eventBus._on("rotatecw", webViewerRotateCw); - - eventBus._on("rotateccw", webViewerRotateCcw); - - eventBus._on("switchscrollmode", webViewerSwitchScrollMode); - - eventBus._on("scrollmodechanged", webViewerScrollModeChanged); - - eventBus._on("switchspreadmode", webViewerSwitchSpreadMode); - - eventBus._on("spreadmodechanged", webViewerSpreadModeChanged); - - eventBus._on("documentproperties", webViewerDocumentProperties); - - eventBus._on("find", webViewerFind); - - eventBus._on("findfromurlhash", webViewerFindFromUrlHash); - - eventBus._on("updatefindmatchescount", webViewerUpdateFindMatchesCount); - - eventBus._on("updatefindcontrolstate", webViewerUpdateFindControlState); - - eventBus._on("fileinputchange", webViewerFileInputChange); - - eventBus._on("openfile", webViewerOpenFile); - }, - - bindWindowEvents() { - const { - eventBus, - _boundEvents - } = this; - - _boundEvents.windowResize = () => { - eventBus.dispatch("resize", { - source: window - }); - }; - - _boundEvents.windowHashChange = () => { - eventBus.dispatch("hashchange", { - source: window, - hash: document.location.hash.substring(1) - }); - }; - - _boundEvents.windowBeforePrint = () => { - eventBus.dispatch("beforeprint", { - source: window - }); - }; - - _boundEvents.windowAfterPrint = () => { - eventBus.dispatch("afterprint", { - source: window - }); - }; - - window.addEventListener("visibilitychange", webViewerVisibilityChange); - window.addEventListener("wheel", webViewerWheel, { - passive: false - }); - window.addEventListener("click", webViewerClick); - window.addEventListener("keydown", webViewerKeyDown); - window.addEventListener("resize", _boundEvents.windowResize); - window.addEventListener("hashchange", _boundEvents.windowHashChange); - window.addEventListener("beforeprint", _boundEvents.windowBeforePrint); - window.addEventListener("afterprint", _boundEvents.windowAfterPrint); - }, - - unbindEvents() { - const { - eventBus, - _boundEvents - } = this; - - eventBus._off("resize", webViewerResize); - - eventBus._off("hashchange", webViewerHashchange); - - eventBus._off("beforeprint", _boundEvents.beforePrint); - - eventBus._off("afterprint", _boundEvents.afterPrint); - - eventBus._off("pagerendered", webViewerPageRendered); - - eventBus._off("updateviewarea", webViewerUpdateViewarea); - - eventBus._off("pagechanging", webViewerPageChanging); - - eventBus._off("scalechanging", webViewerScaleChanging); - - eventBus._off("rotationchanging", webViewerRotationChanging); - - eventBus._off("sidebarviewchanged", webViewerSidebarViewChanged); - - eventBus._off("pagemode", webViewerPageMode); - - eventBus._off("namedaction", webViewerNamedAction); - - eventBus._off("presentationmodechanged", webViewerPresentationModeChanged); - - eventBus._off("presentationmode", webViewerPresentationMode); - - eventBus._off("print", webViewerPrint); - - eventBus._off("download", webViewerDownload); - - eventBus._off("firstpage", webViewerFirstPage); - - eventBus._off("lastpage", webViewerLastPage); - - eventBus._off("nextpage", webViewerNextPage); - - eventBus._off("previouspage", webViewerPreviousPage); - - eventBus._off("zoomin", webViewerZoomIn); - - eventBus._off("zoomout", webViewerZoomOut); - - eventBus._off("zoomreset", webViewerZoomReset); - - eventBus._off("pagenumberchanged", webViewerPageNumberChanged); - - eventBus._off("scalechanged", webViewerScaleChanged); - - eventBus._off("rotatecw", webViewerRotateCw); - - eventBus._off("rotateccw", webViewerRotateCcw); - - eventBus._off("switchscrollmode", webViewerSwitchScrollMode); - - eventBus._off("scrollmodechanged", webViewerScrollModeChanged); - - eventBus._off("switchspreadmode", webViewerSwitchSpreadMode); - - eventBus._off("spreadmodechanged", webViewerSpreadModeChanged); - - eventBus._off("documentproperties", webViewerDocumentProperties); - - eventBus._off("find", webViewerFind); - - eventBus._off("findfromurlhash", webViewerFindFromUrlHash); - - eventBus._off("updatefindmatchescount", webViewerUpdateFindMatchesCount); - - eventBus._off("updatefindcontrolstate", webViewerUpdateFindControlState); - - eventBus._off("fileinputchange", webViewerFileInputChange); - - eventBus._off("openfile", webViewerOpenFile); - - _boundEvents.beforePrint = null; - _boundEvents.afterPrint = null; - }, - - unbindWindowEvents() { - const { - _boundEvents - } = this; - window.removeEventListener("visibilitychange", webViewerVisibilityChange); - window.removeEventListener("wheel", webViewerWheel, { - passive: false - }); - window.removeEventListener("click", webViewerClick); - window.removeEventListener("keydown", webViewerKeyDown); - window.removeEventListener("resize", _boundEvents.windowResize); - window.removeEventListener("hashchange", _boundEvents.windowHashChange); - window.removeEventListener("beforeprint", _boundEvents.windowBeforePrint); - window.removeEventListener("afterprint", _boundEvents.windowAfterPrint); - _boundEvents.windowResize = null; - _boundEvents.windowHashChange = null; - _boundEvents.windowBeforePrint = null; - _boundEvents.windowAfterPrint = null; - } - -}; -exports.PDFViewerApplication = PDFViewerApplication; -let validateFileURL; -{ - const HOSTED_VIEWER_ORIGINS = ["null", "http://mozilla.github.io", "https://mozilla.github.io"]; - - validateFileURL = function (file) { - if (file === undefined) { - return; - } - - try { - const viewerOrigin = new URL(window.location.href).origin || "null"; - - if (HOSTED_VIEWER_ORIGINS.includes(viewerOrigin)) { - return; - } - - const { - origin, - protocol - } = new URL(file, window.location.href); - - if (origin !== viewerOrigin && protocol !== "blob:") { - throw new Error("file origin does not match viewer's"); - } - } catch (ex) { - const message = ex && ex.message; - PDFViewerApplication.l10n.get("loading_error", null, "An error occurred while loading the PDF.").then(loadingErrorMessage => { - PDFViewerApplication.error(loadingErrorMessage, { - message - }); - }); - throw ex; - } - }; -} - -async function loadFakeWorker() { - if (!_pdfjsLib.GlobalWorkerOptions.workerSrc) { - _pdfjsLib.GlobalWorkerOptions.workerSrc = _app_options.AppOptions.get("workerSrc"); - } - - return (0, _pdfjsLib.loadScript)(_pdfjsLib.PDFWorker.getWorkerSrc()); -} - -function loadAndEnablePDFBug(enabledTabs) { - const appConfig = PDFViewerApplication.appConfig; - return (0, _pdfjsLib.loadScript)(appConfig.debuggerScriptPath).then(function () { - PDFBug.enable(enabledTabs); - PDFBug.init({ - OPS: _pdfjsLib.OPS - }, appConfig.mainContainer); - }); -} - -function webViewerInitialized() { - const appConfig = PDFViewerApplication.appConfig; - let file; - const queryString = document.location.search.substring(1); - const params = (0, _ui_utils.parseQueryString)(queryString); - file = "file" in params ? params.file : _app_options.AppOptions.get("defaultUrl"); - validateFileURL(file); - const fileInput = document.createElement("input"); - fileInput.id = appConfig.openFileInputName; - fileInput.className = "fileInput"; - fileInput.setAttribute("type", "file"); - fileInput.oncontextmenu = _ui_utils.noContextMenuHandler; - document.body.appendChild(fileInput); - - if (!window.File || !window.FileReader || !window.FileList || !window.Blob) { - appConfig.toolbar.openFile.setAttribute("hidden", "true"); - appConfig.secondaryToolbar.openFileButton.setAttribute("hidden", "true"); - } else { - fileInput.value = null; - } - - fileInput.addEventListener("change", function (evt) { - const files = evt.target.files; - - if (!files || files.length === 0) { - return; - } - - PDFViewerApplication.eventBus.dispatch("fileinputchange", { - source: this, - fileInput: evt.target - }); - }); - appConfig.mainContainer.addEventListener("dragover", function (evt) { - evt.preventDefault(); - evt.dataTransfer.dropEffect = "move"; - }); - appConfig.mainContainer.addEventListener("drop", function (evt) { - evt.preventDefault(); - const files = evt.dataTransfer.files; - - if (!files || files.length === 0) { - return; - } - - PDFViewerApplication.eventBus.dispatch("fileinputchange", { - source: this, - fileInput: evt.dataTransfer - }); - }); - - if (!PDFViewerApplication.supportsDocumentFonts) { - _app_options.AppOptions.set("disableFontFace", true); - - PDFViewerApplication.l10n.get("web_fonts_disabled", null, "Web fonts are disabled: unable to use embedded PDF fonts.").then(msg => { - console.warn(msg); - }); - } - - if (!PDFViewerApplication.supportsPrinting) { - appConfig.toolbar.print.classList.add("hidden"); - appConfig.secondaryToolbar.printButton.classList.add("hidden"); - } - - if (!PDFViewerApplication.supportsFullscreen) { - appConfig.toolbar.presentationModeButton.classList.add("hidden"); - appConfig.secondaryToolbar.presentationModeButton.classList.add("hidden"); - } - - if (PDFViewerApplication.supportsIntegratedFind) { - appConfig.toolbar.viewFind.classList.add("hidden"); - } - - appConfig.mainContainer.addEventListener("transitionend", function (evt) { - if (evt.target === this) { - PDFViewerApplication.eventBus.dispatch("resize", { - source: this - }); - } - }, true); - - try { - webViewerOpenFileViaURL(file); - } catch (reason) { - PDFViewerApplication.l10n.get("loading_error", null, "An error occurred while loading the PDF.").then(msg => { - PDFViewerApplication.error(msg, reason); - }); - } -} - -let webViewerOpenFileViaURL; -{ - webViewerOpenFileViaURL = function (file) { - if (file && file.lastIndexOf("file:", 0) === 0) { - PDFViewerApplication.setTitleUsingUrl(file); - const xhr = new XMLHttpRequest(); - - xhr.onload = function () { - PDFViewerApplication.open(new Uint8Array(xhr.response)); - }; - - xhr.open("GET", file); - xhr.responseType = "arraybuffer"; - xhr.send(); - return; - } - - if (file) { - PDFViewerApplication.open(file); - } - }; -} - -function webViewerResetPermissions() { - const { - appConfig - } = PDFViewerApplication; - - if (!appConfig) { - return; - } - - appConfig.viewerContainer.classList.remove(ENABLE_PERMISSIONS_CLASS); -} - -function webViewerPageRendered(evt) { - const pageNumber = evt.pageNumber; - const pageIndex = pageNumber - 1; - const pageView = PDFViewerApplication.pdfViewer.getPageView(pageIndex); - - if (pageNumber === PDFViewerApplication.page) { - PDFViewerApplication.toolbar.updateLoadingIndicatorState(false); - } - - if (!pageView) { - return; - } - - if (PDFViewerApplication.pdfSidebar.isThumbnailViewVisible) { - const thumbnailView = PDFViewerApplication.pdfThumbnailViewer.getThumbnail(pageIndex); - thumbnailView.setImage(pageView); - } - - if (typeof Stats !== "undefined" && Stats.enabled && pageView.stats) { - Stats.add(pageNumber, pageView.stats); - } - - if (pageView.error) { - PDFViewerApplication.l10n.get("rendering_error", null, "An error occurred while rendering the page.").then(msg => { - PDFViewerApplication.error(msg, pageView.error); - }); - } - - PDFViewerApplication.externalServices.reportTelemetry({ - type: "pageInfo", - timestamp: evt.timestamp - }); - PDFViewerApplication.pdfDocument.getStats().then(function (stats) { - PDFViewerApplication.externalServices.reportTelemetry({ - type: "documentStats", - stats - }); - }); -} - -function webViewerPageMode({ - mode -}) { - let view; - - switch (mode) { - case "thumbs": - view = _pdf_sidebar.SidebarView.THUMBS; - break; - - case "bookmarks": - case "outline": - view = _pdf_sidebar.SidebarView.OUTLINE; - break; - - case "attachments": - view = _pdf_sidebar.SidebarView.ATTACHMENTS; - break; - - case "none": - view = _pdf_sidebar.SidebarView.NONE; - break; - - default: - console.error('Invalid "pagemode" hash parameter: ' + mode); - return; - } - - PDFViewerApplication.pdfSidebar.switchView(view, true); -} - -function webViewerNamedAction(evt) { - const action = evt.action; - - switch (action) { - case "GoToPage": - PDFViewerApplication.appConfig.toolbar.pageNumber.select(); - break; - - case "Find": - if (!PDFViewerApplication.supportsIntegratedFind) { - PDFViewerApplication.findBar.toggle(); - } - - break; - } -} - -function webViewerPresentationModeChanged({ - active, - switchInProgress -}) { - let state = _ui_utils.PresentationModeState.NORMAL; - - if (switchInProgress) { - state = _ui_utils.PresentationModeState.CHANGING; - } else if (active) { - state = _ui_utils.PresentationModeState.FULLSCREEN; - } - - PDFViewerApplication.pdfViewer.presentationModeState = state; -} - -function webViewerSidebarViewChanged(evt) { - PDFViewerApplication.pdfRenderingQueue.isThumbnailViewEnabled = PDFViewerApplication.pdfSidebar.isThumbnailViewVisible; - const store = PDFViewerApplication.store; - - if (store && PDFViewerApplication.isInitialViewSet) { - store.set("sidebarView", evt.view).catch(function () {}); - } -} - -function webViewerUpdateViewarea(evt) { - const location = evt.location, - store = PDFViewerApplication.store; - - if (store && PDFViewerApplication.isInitialViewSet) { - store.setMultiple({ - page: location.pageNumber, - zoom: location.scale, - scrollLeft: location.left, - scrollTop: location.top, - rotation: location.rotation - }).catch(function () {}); - } - - const href = PDFViewerApplication.pdfLinkService.getAnchorUrl(location.pdfOpenParams); - PDFViewerApplication.appConfig.toolbar.viewBookmark.href = href; - PDFViewerApplication.appConfig.secondaryToolbar.viewBookmarkButton.href = href; - const currentPage = PDFViewerApplication.pdfViewer.getPageView(PDFViewerApplication.page - 1); - const loading = currentPage.renderingState !== _pdf_rendering_queue.RenderingStates.FINISHED; - PDFViewerApplication.toolbar.updateLoadingIndicatorState(loading); -} - -function webViewerScrollModeChanged(evt) { - const store = PDFViewerApplication.store; - - if (store && PDFViewerApplication.isInitialViewSet) { - store.set("scrollMode", evt.mode).catch(function () {}); - } -} - -function webViewerSpreadModeChanged(evt) { - const store = PDFViewerApplication.store; - - if (store && PDFViewerApplication.isInitialViewSet) { - store.set("spreadMode", evt.mode).catch(function () {}); - } -} - -function webViewerResize() { - const { - pdfDocument, - pdfViewer - } = PDFViewerApplication; - - if (!pdfDocument) { - return; - } - - const currentScaleValue = pdfViewer.currentScaleValue; - - if (currentScaleValue === "auto" || currentScaleValue === "page-fit" || currentScaleValue === "page-width") { - pdfViewer.currentScaleValue = currentScaleValue; - } - - pdfViewer.update(); -} - -function webViewerHashchange(evt) { - const hash = evt.hash; - - if (!hash) { - return; - } - - if (!PDFViewerApplication.isInitialViewSet) { - PDFViewerApplication.initialBookmark = hash; - } else if (!PDFViewerApplication.pdfHistory.popStateInProgress) { - PDFViewerApplication.pdfLinkService.setHash(hash); - } -} - -let webViewerFileInputChange, webViewerOpenFile; -{ - webViewerFileInputChange = function (evt) { - if (PDFViewerApplication.pdfViewer && PDFViewerApplication.pdfViewer.isInPresentationMode) { - return; - } - - const file = evt.fileInput.files[0]; - - if (!_app_options.AppOptions.get("disableCreateObjectURL")) { - let url = URL.createObjectURL(file); - - if (file.name) { - url = { - url, - originalUrl: file.name - }; - } - - PDFViewerApplication.open(url); - } else { - PDFViewerApplication.setTitleUsingUrl(file.name); - const fileReader = new FileReader(); - - fileReader.onload = function webViewerChangeFileReaderOnload(event) { - const buffer = event.target.result; - PDFViewerApplication.open(new Uint8Array(buffer)); - }; - - fileReader.readAsArrayBuffer(file); - } - - const appConfig = PDFViewerApplication.appConfig; - appConfig.toolbar.viewBookmark.setAttribute("hidden", "true"); - appConfig.secondaryToolbar.viewBookmarkButton.setAttribute("hidden", "true"); - appConfig.toolbar.download.setAttribute("hidden", "true"); - appConfig.secondaryToolbar.downloadButton.setAttribute("hidden", "true"); - }; - - webViewerOpenFile = function (evt) { - const openFileInputName = PDFViewerApplication.appConfig.openFileInputName; - document.getElementById(openFileInputName).click(); - }; -} - -function webViewerPresentationMode() { - PDFViewerApplication.requestPresentationMode(); -} - -function webViewerPrint() { - window.print(); -} - -function webViewerDownload() { - PDFViewerApplication.download(); -} - -function webViewerFirstPage() { - if (PDFViewerApplication.pdfDocument) { - PDFViewerApplication.page = 1; - } -} - -function webViewerLastPage() { - if (PDFViewerApplication.pdfDocument) { - PDFViewerApplication.page = PDFViewerApplication.pagesCount; - } -} - -function webViewerNextPage() { - PDFViewerApplication.page++; -} - -function webViewerPreviousPage() { - PDFViewerApplication.page--; -} - -function webViewerZoomIn() { - PDFViewerApplication.zoomIn(); -} - -function webViewerZoomOut() { - PDFViewerApplication.zoomOut(); -} - -function webViewerZoomReset() { - PDFViewerApplication.zoomReset(); -} - -function webViewerPageNumberChanged(evt) { - const pdfViewer = PDFViewerApplication.pdfViewer; - - if (evt.value !== "") { - pdfViewer.currentPageLabel = evt.value; - } - - if (evt.value !== pdfViewer.currentPageNumber.toString() && evt.value !== pdfViewer.currentPageLabel) { - PDFViewerApplication.toolbar.setPageNumber(pdfViewer.currentPageNumber, pdfViewer.currentPageLabel); - } -} - -function webViewerScaleChanged(evt) { - PDFViewerApplication.pdfViewer.currentScaleValue = evt.value; -} - -function webViewerRotateCw() { - PDFViewerApplication.rotatePages(90); -} - -function webViewerRotateCcw() { - PDFViewerApplication.rotatePages(-90); -} - -function webViewerSwitchScrollMode(evt) { - PDFViewerApplication.pdfViewer.scrollMode = evt.mode; -} - -function webViewerSwitchSpreadMode(evt) { - PDFViewerApplication.pdfViewer.spreadMode = evt.mode; -} - -function webViewerDocumentProperties() { - PDFViewerApplication.pdfDocumentProperties.open(); -} - -function webViewerFind(evt) { - PDFViewerApplication.findController.executeCommand("find" + evt.type, { - query: evt.query, - phraseSearch: evt.phraseSearch, - caseSensitive: evt.caseSensitive, - entireWord: evt.entireWord, - highlightAll: evt.highlightAll, - findPrevious: evt.findPrevious - }); -} - -function webViewerFindFromUrlHash(evt) { - PDFViewerApplication.findController.executeCommand("find", { - query: evt.query, - phraseSearch: evt.phraseSearch, - caseSensitive: false, - entireWord: false, - highlightAll: true, - findPrevious: false - }); -} - -function webViewerUpdateFindMatchesCount({ - matchesCount -}) { - if (PDFViewerApplication.supportsIntegratedFind) { - PDFViewerApplication.externalServices.updateFindMatchesCount(matchesCount); - } else { - PDFViewerApplication.findBar.updateResultsCount(matchesCount); - } -} - -function webViewerUpdateFindControlState({ - state, - previous, - matchesCount -}) { - if (PDFViewerApplication.supportsIntegratedFind) { - PDFViewerApplication.externalServices.updateFindControlState({ - result: state, - findPrevious: previous, - matchesCount - }); - } else { - PDFViewerApplication.findBar.updateUIState(state, previous, matchesCount); - } -} - -function webViewerScaleChanging(evt) { - PDFViewerApplication.toolbar.setPageScale(evt.presetValue, evt.scale); - PDFViewerApplication.pdfViewer.update(); -} - -function webViewerRotationChanging(evt) { - PDFViewerApplication.pdfThumbnailViewer.pagesRotation = evt.pagesRotation; - PDFViewerApplication.forceRendering(); - PDFViewerApplication.pdfViewer.currentPageNumber = evt.pageNumber; -} - -function webViewerPageChanging(evt) { - const page = evt.pageNumber; - PDFViewerApplication.toolbar.setPageNumber(page, evt.pageLabel || null); - PDFViewerApplication.secondaryToolbar.setPageNumber(page); - - if (PDFViewerApplication.pdfSidebar.isThumbnailViewVisible) { - PDFViewerApplication.pdfThumbnailViewer.scrollThumbnailIntoView(page); - } - - if (typeof Stats !== "undefined" && Stats.enabled) { - const pageView = PDFViewerApplication.pdfViewer.getPageView(page - 1); - - if (pageView && pageView.stats) { - Stats.add(page, pageView.stats); - } - } -} - -function webViewerVisibilityChange(evt) { - if (document.visibilityState === "visible") { - setZoomDisabledTimeout(); - } -} - -let zoomDisabledTimeout = null; - -function setZoomDisabledTimeout() { - if (zoomDisabledTimeout) { - clearTimeout(zoomDisabledTimeout); - } - - zoomDisabledTimeout = setTimeout(function () { - zoomDisabledTimeout = null; - }, WHEEL_ZOOM_DISABLED_TIMEOUT); -} - -function webViewerWheel(evt) { - const { - pdfViewer, - supportedMouseWheelZoomModifierKeys - } = PDFViewerApplication; - - if (pdfViewer.isInPresentationMode) { - return; - } - - if (evt.ctrlKey && supportedMouseWheelZoomModifierKeys.ctrlKey || evt.metaKey && supportedMouseWheelZoomModifierKeys.metaKey) { - evt.preventDefault(); - - if (zoomDisabledTimeout || document.visibilityState === "hidden") { - return; - } - - const previousScale = pdfViewer.currentScale; - const delta = (0, _ui_utils.normalizeWheelEventDelta)(evt); - const MOUSE_WHEEL_DELTA_PER_PAGE_SCALE = 3.0; - const ticks = delta * MOUSE_WHEEL_DELTA_PER_PAGE_SCALE; - - if (ticks < 0) { - PDFViewerApplication.zoomOut(-ticks); - } else { - PDFViewerApplication.zoomIn(ticks); - } - - const currentScale = pdfViewer.currentScale; - - if (previousScale !== currentScale) { - const scaleCorrectionFactor = currentScale / previousScale - 1; - const rect = pdfViewer.container.getBoundingClientRect(); - const dx = evt.clientX - rect.left; - const dy = evt.clientY - rect.top; - pdfViewer.container.scrollLeft += dx * scaleCorrectionFactor; - pdfViewer.container.scrollTop += dy * scaleCorrectionFactor; - } - } else { - setZoomDisabledTimeout(); - } -} - -function webViewerClick(evt) { - if (!PDFViewerApplication.secondaryToolbar.isOpen) { - return; - } - - const appConfig = PDFViewerApplication.appConfig; - - if (PDFViewerApplication.pdfViewer.containsElement(evt.target) || appConfig.toolbar.container.contains(evt.target) && evt.target !== appConfig.secondaryToolbar.toggleButton) { - PDFViewerApplication.secondaryToolbar.close(); - } -} - -function webViewerKeyDown(evt) { - if (PDFViewerApplication.overlayManager.active) { - return; - } - - let handled = false, - ensureViewerFocused = false; - const cmd = (evt.ctrlKey ? 1 : 0) | (evt.altKey ? 2 : 0) | (evt.shiftKey ? 4 : 0) | (evt.metaKey ? 8 : 0); - const pdfViewer = PDFViewerApplication.pdfViewer; - const isViewerInPresentationMode = pdfViewer && pdfViewer.isInPresentationMode; - - if (cmd === 1 || cmd === 8 || cmd === 5 || cmd === 12) { - switch (evt.keyCode) { - case 70: - if (!PDFViewerApplication.supportsIntegratedFind) { - PDFViewerApplication.findBar.open(); - handled = true; - } - - break; - - case 71: - if (!PDFViewerApplication.supportsIntegratedFind) { - const findState = PDFViewerApplication.findController.state; - - if (findState) { - PDFViewerApplication.findController.executeCommand("findagain", { - query: findState.query, - phraseSearch: findState.phraseSearch, - caseSensitive: findState.caseSensitive, - entireWord: findState.entireWord, - highlightAll: findState.highlightAll, - findPrevious: cmd === 5 || cmd === 12 - }); - } - - handled = true; - } - - break; - - case 61: - case 107: - case 187: - case 171: - if (!isViewerInPresentationMode) { - PDFViewerApplication.zoomIn(); - } - - handled = true; - break; - - case 173: - case 109: - case 189: - if (!isViewerInPresentationMode) { - PDFViewerApplication.zoomOut(); - } - - handled = true; - break; - - case 48: - case 96: - if (!isViewerInPresentationMode) { - setTimeout(function () { - PDFViewerApplication.zoomReset(); - }); - handled = false; - } - - break; - - case 38: - if (isViewerInPresentationMode || PDFViewerApplication.page > 1) { - PDFViewerApplication.page = 1; - handled = true; - ensureViewerFocused = true; - } - - break; - - case 40: - if (isViewerInPresentationMode || PDFViewerApplication.page < PDFViewerApplication.pagesCount) { - PDFViewerApplication.page = PDFViewerApplication.pagesCount; - handled = true; - ensureViewerFocused = true; - } - - break; - } - } - - const { - eventBus - } = PDFViewerApplication; - - if (cmd === 1 || cmd === 8) { - switch (evt.keyCode) { - case 83: - eventBus.dispatch("download", { - source: window - }); - handled = true; - break; - - case 79: - { - eventBus.dispatch("openfile", { - source: window - }); - handled = true; - } - break; - } - } - - if (cmd === 3 || cmd === 10) { - switch (evt.keyCode) { - case 80: - PDFViewerApplication.requestPresentationMode(); - handled = true; - break; - - case 71: - PDFViewerApplication.appConfig.toolbar.pageNumber.select(); - handled = true; - break; - } - } - - if (handled) { - if (ensureViewerFocused && !isViewerInPresentationMode) { - pdfViewer.focus(); - } - - evt.preventDefault(); - return; - } - - const curElement = document.activeElement || document.querySelector(":focus"); - const curElementTagName = curElement && curElement.tagName.toUpperCase(); - - if (curElementTagName === "INPUT" || curElementTagName === "TEXTAREA" || curElementTagName === "SELECT" || curElement && curElement.isContentEditable) { - if (evt.keyCode !== 27) { - return; - } - } - - if (cmd === 0) { - let turnPage = 0, - turnOnlyIfPageFit = false; - - switch (evt.keyCode) { - case 38: - case 33: - if (pdfViewer.isVerticalScrollbarEnabled) { - turnOnlyIfPageFit = true; - } - - turnPage = -1; - break; - - case 8: - if (!isViewerInPresentationMode) { - turnOnlyIfPageFit = true; - } - - turnPage = -1; - break; - - case 37: - if (pdfViewer.isHorizontalScrollbarEnabled) { - turnOnlyIfPageFit = true; - } - - case 75: - case 80: - turnPage = -1; - break; - - case 27: - if (PDFViewerApplication.secondaryToolbar.isOpen) { - PDFViewerApplication.secondaryToolbar.close(); - handled = true; - } - - if (!PDFViewerApplication.supportsIntegratedFind && PDFViewerApplication.findBar.opened) { - PDFViewerApplication.findBar.close(); - handled = true; - } - - break; - - case 40: - case 34: - if (pdfViewer.isVerticalScrollbarEnabled) { - turnOnlyIfPageFit = true; - } - - turnPage = 1; - break; - - case 13: - case 32: - if (!isViewerInPresentationMode) { - turnOnlyIfPageFit = true; - } - - turnPage = 1; - break; - - case 39: - if (pdfViewer.isHorizontalScrollbarEnabled) { - turnOnlyIfPageFit = true; - } - - case 74: - case 78: - turnPage = 1; - break; - - case 36: - if (isViewerInPresentationMode || PDFViewerApplication.page > 1) { - PDFViewerApplication.page = 1; - handled = true; - ensureViewerFocused = true; - } - - break; - - case 35: - if (isViewerInPresentationMode || PDFViewerApplication.page < PDFViewerApplication.pagesCount) { - PDFViewerApplication.page = PDFViewerApplication.pagesCount; - handled = true; - ensureViewerFocused = true; - } - - break; - - case 83: - PDFViewerApplication.pdfCursorTools.switchTool(_pdf_cursor_tools.CursorTool.SELECT); - break; - - case 72: - PDFViewerApplication.pdfCursorTools.switchTool(_pdf_cursor_tools.CursorTool.HAND); - break; - - case 82: - PDFViewerApplication.rotatePages(90); - break; - - case 115: - PDFViewerApplication.pdfSidebar.toggle(); - break; - } - - if (turnPage !== 0 && (!turnOnlyIfPageFit || pdfViewer.currentScaleValue === "page-fit")) { - if (turnPage > 0) { - if (PDFViewerApplication.page < PDFViewerApplication.pagesCount) { - PDFViewerApplication.page++; - } - } else { - if (PDFViewerApplication.page > 1) { - PDFViewerApplication.page--; - } - } - - handled = true; - } - } - - if (cmd === 4) { - switch (evt.keyCode) { - case 13: - case 32: - if (!isViewerInPresentationMode && pdfViewer.currentScaleValue !== "page-fit") { - break; - } - - if (PDFViewerApplication.page > 1) { - PDFViewerApplication.page--; - } - - handled = true; - break; - - case 82: - PDFViewerApplication.rotatePages(-90); - break; - } - } - - if (!handled && !isViewerInPresentationMode) { - if (evt.keyCode >= 33 && evt.keyCode <= 40 || evt.keyCode === 32 && curElementTagName !== "BUTTON") { - ensureViewerFocused = true; - } - } - - if (ensureViewerFocused && !pdfViewer.containsElement(curElement)) { - pdfViewer.focus(); - } - - if (handled) { - evt.preventDefault(); - } -} - -function apiPageLayoutToSpreadMode(layout) { - switch (layout) { - case "SinglePage": - case "OneColumn": - return _ui_utils.SpreadMode.NONE; - - case "TwoColumnLeft": - case "TwoPageLeft": - return _ui_utils.SpreadMode.ODD; - - case "TwoColumnRight": - case "TwoPageRight": - return _ui_utils.SpreadMode.EVEN; - } - - return _ui_utils.SpreadMode.NONE; -} - -function apiPageModeToSidebarView(mode) { - switch (mode) { - case "UseNone": - return _pdf_sidebar.SidebarView.NONE; - - case "UseThumbs": - return _pdf_sidebar.SidebarView.THUMBS; - - case "UseOutlines": - return _pdf_sidebar.SidebarView.OUTLINE; - - case "UseAttachments": - return _pdf_sidebar.SidebarView.ATTACHMENTS; - - case "UseOC": - } - - return _pdf_sidebar.SidebarView.NONE; -} - -const PDFPrintServiceFactory = { - instance: { - supportsPrinting: false, - - createPrintService() { - throw new Error("Not implemented: createPrintService"); - } - - } -}; -exports.PDFPrintServiceFactory = PDFPrintServiceFactory; - -/***/ }), -/* 2 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.isValidRotation = isValidRotation; -exports.isValidScrollMode = isValidScrollMode; -exports.isValidSpreadMode = isValidSpreadMode; -exports.isPortraitOrientation = isPortraitOrientation; -exports.clamp = clamp; -exports.getPDFFileNameFromURL = getPDFFileNameFromURL; -exports.noContextMenuHandler = noContextMenuHandler; -exports.parseQueryString = parseQueryString; -exports.backtrackBeforeAllVisibleElements = backtrackBeforeAllVisibleElements; -exports.getVisibleElements = getVisibleElements; -exports.roundToDivide = roundToDivide; -exports.getPageSizeInches = getPageSizeInches; -exports.approximateFraction = approximateFraction; -exports.getOutputScale = getOutputScale; -exports.scrollIntoView = scrollIntoView; -exports.watchScroll = watchScroll; -exports.binarySearchFirstItem = binarySearchFirstItem; -exports.normalizeWheelEventDelta = normalizeWheelEventDelta; -exports.waitOnEventOrTimeout = waitOnEventOrTimeout; -exports.moveToEndOfArray = moveToEndOfArray; -exports.WaitOnType = exports.animationStarted = exports.ProgressBar = exports.EventBus = exports.NullL10n = exports.SpreadMode = exports.ScrollMode = exports.TextLayerMode = exports.RendererType = exports.PresentationModeState = exports.VERTICAL_PADDING = exports.SCROLLBAR_PADDING = exports.MAX_AUTO_SCALE = exports.UNKNOWN_SCALE = exports.MAX_SCALE = exports.MIN_SCALE = exports.DEFAULT_SCALE = exports.DEFAULT_SCALE_VALUE = exports.CSS_UNITS = exports.AutoPrintRegExp = void 0; -const CSS_UNITS = 96.0 / 72.0; -exports.CSS_UNITS = CSS_UNITS; -const DEFAULT_SCALE_VALUE = "auto"; -exports.DEFAULT_SCALE_VALUE = DEFAULT_SCALE_VALUE; -const DEFAULT_SCALE = 1.0; -exports.DEFAULT_SCALE = DEFAULT_SCALE; -const MIN_SCALE = 0.1; -exports.MIN_SCALE = MIN_SCALE; -const MAX_SCALE = 10.0; -exports.MAX_SCALE = MAX_SCALE; -const UNKNOWN_SCALE = 0; -exports.UNKNOWN_SCALE = UNKNOWN_SCALE; -const MAX_AUTO_SCALE = 1.25; -exports.MAX_AUTO_SCALE = MAX_AUTO_SCALE; -const SCROLLBAR_PADDING = 40; -exports.SCROLLBAR_PADDING = SCROLLBAR_PADDING; -const VERTICAL_PADDING = 5; -exports.VERTICAL_PADDING = VERTICAL_PADDING; -const PresentationModeState = { - UNKNOWN: 0, - NORMAL: 1, - CHANGING: 2, - FULLSCREEN: 3 -}; -exports.PresentationModeState = PresentationModeState; -const RendererType = { - CANVAS: "canvas", - SVG: "svg" -}; -exports.RendererType = RendererType; -const TextLayerMode = { - DISABLE: 0, - ENABLE: 1, - ENABLE_ENHANCE: 2 -}; -exports.TextLayerMode = TextLayerMode; -const ScrollMode = { - UNKNOWN: -1, - VERTICAL: 0, - HORIZONTAL: 1, - WRAPPED: 2 -}; -exports.ScrollMode = ScrollMode; -const SpreadMode = { - UNKNOWN: -1, - NONE: 0, - ODD: 1, - EVEN: 2 -}; -exports.SpreadMode = SpreadMode; -const AutoPrintRegExp = /\bprint\s*\(/; -exports.AutoPrintRegExp = AutoPrintRegExp; - -function formatL10nValue(text, args) { - if (!args) { - return text; - } - - return text.replace(/\{\{\s*(\w+)\s*\}\}/g, (all, name) => { - return name in args ? args[name] : "{{" + name + "}}"; - }); -} - -const NullL10n = { - async getLanguage() { - return "en-us"; - }, - - async getDirection() { - return "ltr"; - }, - - async get(property, args, fallback) { - return formatL10nValue(fallback, args); - }, - - async translate(element) {} - -}; -exports.NullL10n = NullL10n; - -function getOutputScale(ctx) { - const devicePixelRatio = window.devicePixelRatio || 1; - const backingStoreRatio = ctx.webkitBackingStorePixelRatio || ctx.mozBackingStorePixelRatio || ctx.msBackingStorePixelRatio || ctx.oBackingStorePixelRatio || ctx.backingStorePixelRatio || 1; - const pixelRatio = devicePixelRatio / backingStoreRatio; - return { - sx: pixelRatio, - sy: pixelRatio, - scaled: pixelRatio !== 1 - }; -} - -function scrollIntoView(element, spot, skipOverflowHiddenElements = false) { - let parent = element.offsetParent; - - if (!parent) { - console.error("offsetParent is not set -- cannot scroll"); - return; - } - - let offsetY = element.offsetTop + element.clientTop; - let offsetX = element.offsetLeft + element.clientLeft; - - while (parent.clientHeight === parent.scrollHeight && parent.clientWidth === parent.scrollWidth || skipOverflowHiddenElements && getComputedStyle(parent).overflow === "hidden") { - if (parent.dataset._scaleY) { - offsetY /= parent.dataset._scaleY; - offsetX /= parent.dataset._scaleX; - } - - offsetY += parent.offsetTop; - offsetX += parent.offsetLeft; - parent = parent.offsetParent; - - if (!parent) { - return; - } - } - - if (spot) { - if (spot.top !== undefined) { - offsetY += spot.top; - } - - if (spot.left !== undefined) { - offsetX += spot.left; - parent.scrollLeft = offsetX; - } - } - - parent.scrollTop = offsetY; -} - -function watchScroll(viewAreaElement, callback) { - const debounceScroll = function (evt) { - if (rAF) { - return; - } - - rAF = window.requestAnimationFrame(function viewAreaElementScrolled() { - rAF = null; - const currentX = viewAreaElement.scrollLeft; - const lastX = state.lastX; - - if (currentX !== lastX) { - state.right = currentX > lastX; - } - - state.lastX = currentX; - const currentY = viewAreaElement.scrollTop; - const lastY = state.lastY; - - if (currentY !== lastY) { - state.down = currentY > lastY; - } - - state.lastY = currentY; - callback(state); - }); - }; - - const state = { - right: true, - down: true, - lastX: viewAreaElement.scrollLeft, - lastY: viewAreaElement.scrollTop, - _eventHandler: debounceScroll - }; - let rAF = null; - viewAreaElement.addEventListener("scroll", debounceScroll, true); - return state; -} - -function parseQueryString(query) { - const parts = query.split("&"); - const params = Object.create(null); - - for (let i = 0, ii = parts.length; i < ii; ++i) { - const param = parts[i].split("="); - const key = param[0].toLowerCase(); - const value = param.length > 1 ? param[1] : null; - params[decodeURIComponent(key)] = decodeURIComponent(value); - } - - return params; -} - -function binarySearchFirstItem(items, condition) { - let minIndex = 0; - let maxIndex = items.length - 1; - - if (maxIndex < 0 || !condition(items[maxIndex])) { - return items.length; - } - - if (condition(items[minIndex])) { - return minIndex; - } - - while (minIndex < maxIndex) { - const currentIndex = minIndex + maxIndex >> 1; - const currentItem = items[currentIndex]; - - if (condition(currentItem)) { - maxIndex = currentIndex; - } else { - minIndex = currentIndex + 1; - } - } - - return minIndex; -} - -function approximateFraction(x) { - if (Math.floor(x) === x) { - return [x, 1]; - } - - const xinv = 1 / x; - const limit = 8; - - if (xinv > limit) { - return [1, limit]; - } else if (Math.floor(xinv) === xinv) { - return [1, xinv]; - } - - const x_ = x > 1 ? xinv : x; - let a = 0, - b = 1, - c = 1, - d = 1; - - while (true) { - const p = a + c, - q = b + d; - - if (q > limit) { - break; - } - - if (x_ <= p / q) { - c = p; - d = q; - } else { - a = p; - b = q; - } - } - - let result; - - if (x_ - a / b < c / d - x_) { - result = x_ === x ? [a, b] : [b, a]; - } else { - result = x_ === x ? [c, d] : [d, c]; - } - - return result; -} - -function roundToDivide(x, div) { - const r = x % div; - return r === 0 ? x : Math.round(x - r + div); -} - -function getPageSizeInches({ - view, - userUnit, - rotate -}) { - const [x1, y1, x2, y2] = view; - const changeOrientation = rotate % 180 !== 0; - const width = (x2 - x1) / 72 * userUnit; - const height = (y2 - y1) / 72 * userUnit; - return { - width: changeOrientation ? height : width, - height: changeOrientation ? width : height - }; -} - -function backtrackBeforeAllVisibleElements(index, views, top) { - if (index < 2) { - return index; - } - - let elt = views[index].div; - let pageTop = elt.offsetTop + elt.clientTop; - - if (pageTop >= top) { - elt = views[index - 1].div; - pageTop = elt.offsetTop + elt.clientTop; - } - - for (let i = index - 2; i >= 0; --i) { - elt = views[i].div; - - if (elt.offsetTop + elt.clientTop + elt.clientHeight <= pageTop) { - break; - } - - index = i; - } - - return index; -} - -function getVisibleElements(scrollEl, views, sortByVisibility = false, horizontal = false) { - const top = scrollEl.scrollTop, - bottom = top + scrollEl.clientHeight; - const left = scrollEl.scrollLeft, - right = left + scrollEl.clientWidth; - - function isElementBottomAfterViewTop(view) { - const element = view.div; - const elementBottom = element.offsetTop + element.clientTop + element.clientHeight; - return elementBottom > top; - } - - function isElementRightAfterViewLeft(view) { - const element = view.div; - const elementRight = element.offsetLeft + element.clientLeft + element.clientWidth; - return elementRight > left; - } - - const visible = [], - numViews = views.length; - let firstVisibleElementInd = numViews === 0 ? 0 : binarySearchFirstItem(views, horizontal ? isElementRightAfterViewLeft : isElementBottomAfterViewTop); - - if (firstVisibleElementInd > 0 && firstVisibleElementInd < numViews && !horizontal) { - firstVisibleElementInd = backtrackBeforeAllVisibleElements(firstVisibleElementInd, views, top); - } - - let lastEdge = horizontal ? right : -1; - - for (let i = firstVisibleElementInd; i < numViews; i++) { - const view = views[i], - element = view.div; - const currentWidth = element.offsetLeft + element.clientLeft; - const currentHeight = element.offsetTop + element.clientTop; - const viewWidth = element.clientWidth, - viewHeight = element.clientHeight; - const viewRight = currentWidth + viewWidth; - const viewBottom = currentHeight + viewHeight; - - if (lastEdge === -1) { - if (viewBottom >= bottom) { - lastEdge = viewBottom; - } - } else if ((horizontal ? currentWidth : currentHeight) > lastEdge) { - break; - } - - if (viewBottom <= top || currentHeight >= bottom || viewRight <= left || currentWidth >= right) { - continue; - } - - const hiddenHeight = Math.max(0, top - currentHeight) + Math.max(0, viewBottom - bottom); - const hiddenWidth = Math.max(0, left - currentWidth) + Math.max(0, viewRight - right); - const percent = (viewHeight - hiddenHeight) * (viewWidth - hiddenWidth) * 100 / viewHeight / viewWidth | 0; - visible.push({ - id: view.id, - x: currentWidth, - y: currentHeight, - view, - percent - }); - } - - const first = visible[0], - last = visible[visible.length - 1]; - - if (sortByVisibility) { - visible.sort(function (a, b) { - const pc = a.percent - b.percent; - - if (Math.abs(pc) > 0.001) { - return -pc; - } - - return a.id - b.id; - }); - } - - return { - first, - last, - views: visible - }; -} - -function noContextMenuHandler(evt) { - evt.preventDefault(); -} - -function isDataSchema(url) { - let i = 0; - const ii = url.length; - - while (i < ii && url[i].trim() === "") { - i++; - } - - return url.substring(i, i + 5).toLowerCase() === "data:"; -} - -function getPDFFileNameFromURL(url, defaultFilename = "document.pdf") { - if (typeof url !== "string") { - return defaultFilename; - } - - if (isDataSchema(url)) { - console.warn("getPDFFileNameFromURL: " + 'ignoring "data:" URL for performance reasons.'); - return defaultFilename; - } - - const reURI = /^(?:(?:[^:]+:)?\/\/[^\/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/; - const reFilename = /[^\/?#=]+\.pdf\b(?!.*\.pdf\b)/i; - const splitURI = reURI.exec(url); - let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]); - - if (suggestedFilename) { - suggestedFilename = suggestedFilename[0]; - - if (suggestedFilename.includes("%")) { - try { - suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0]; - } catch (ex) {} - } - } - - return suggestedFilename || defaultFilename; -} - -function normalizeWheelEventDelta(evt) { - let delta = Math.sqrt(evt.deltaX * evt.deltaX + evt.deltaY * evt.deltaY); - const angle = Math.atan2(evt.deltaY, evt.deltaX); - - if (-0.25 * Math.PI < angle && angle < 0.75 * Math.PI) { - delta = -delta; - } - - const MOUSE_DOM_DELTA_PIXEL_MODE = 0; - const MOUSE_DOM_DELTA_LINE_MODE = 1; - const MOUSE_PIXELS_PER_LINE = 30; - const MOUSE_LINES_PER_PAGE = 30; - - if (evt.deltaMode === MOUSE_DOM_DELTA_PIXEL_MODE) { - delta /= MOUSE_PIXELS_PER_LINE * MOUSE_LINES_PER_PAGE; - } else if (evt.deltaMode === MOUSE_DOM_DELTA_LINE_MODE) { - delta /= MOUSE_LINES_PER_PAGE; - } - - return delta; -} - -function isValidRotation(angle) { - return Number.isInteger(angle) && angle % 90 === 0; -} - -function isValidScrollMode(mode) { - return Number.isInteger(mode) && Object.values(ScrollMode).includes(mode) && mode !== ScrollMode.UNKNOWN; -} - -function isValidSpreadMode(mode) { - return Number.isInteger(mode) && Object.values(SpreadMode).includes(mode) && mode !== SpreadMode.UNKNOWN; -} - -function isPortraitOrientation(size) { - return size.width <= size.height; -} - -const WaitOnType = { - EVENT: "event", - TIMEOUT: "timeout" -}; -exports.WaitOnType = WaitOnType; - -function waitOnEventOrTimeout({ - target, - name, - delay = 0 -}) { - return new Promise(function (resolve, reject) { - if (typeof target !== "object" || !(name && typeof name === "string") || !(Number.isInteger(delay) && delay >= 0)) { - throw new Error("waitOnEventOrTimeout - invalid parameters."); - } - - function handler(type) { - if (target instanceof EventBus) { - target._off(name, eventHandler); - } else { - target.removeEventListener(name, eventHandler); - } - - if (timeout) { - clearTimeout(timeout); - } - - resolve(type); - } - - const eventHandler = handler.bind(null, WaitOnType.EVENT); - - if (target instanceof EventBus) { - target._on(name, eventHandler); - } else { - target.addEventListener(name, eventHandler); - } - - const timeoutHandler = handler.bind(null, WaitOnType.TIMEOUT); - const timeout = setTimeout(timeoutHandler, delay); - }); -} - -const animationStarted = new Promise(function (resolve) { - window.requestAnimationFrame(resolve); -}); -exports.animationStarted = animationStarted; - -function dispatchDOMEvent(eventName, args = null) { - throw new Error("Not implemented: dispatchDOMEvent"); -} - -class EventBus { - constructor(options) { - this._listeners = Object.create(null); - } - - on(eventName, listener) { - this._on(eventName, listener, { - external: true - }); - } - - off(eventName, listener) { - this._off(eventName, listener, { - external: true - }); - } - - dispatch(eventName) { - const eventListeners = this._listeners[eventName]; - - if (!eventListeners || eventListeners.length === 0) { - return; - } - - const args = Array.prototype.slice.call(arguments, 1); - let externalListeners; - eventListeners.slice(0).forEach(function ({ - listener, - external - }) { - if (external) { - if (!externalListeners) { - externalListeners = []; - } - - externalListeners.push(listener); - return; - } - - listener.apply(null, args); - }); - - if (externalListeners) { - externalListeners.forEach(function (listener) { - listener.apply(null, args); - }); - externalListeners = null; - } - } - - _on(eventName, listener, options = null) { - let eventListeners = this._listeners[eventName]; - - if (!eventListeners) { - this._listeners[eventName] = eventListeners = []; - } - - eventListeners.push({ - listener, - external: (options && options.external) === true - }); - } - - _off(eventName, listener, options = null) { - const eventListeners = this._listeners[eventName]; - - if (!eventListeners) { - return; - } - - for (let i = 0, ii = eventListeners.length; i < ii; i++) { - if (eventListeners[i].listener === listener) { - eventListeners.splice(i, 1); - return; - } - } - } - -} - -exports.EventBus = EventBus; - -function clamp(v, min, max) { - return Math.min(Math.max(v, min), max); -} - -class ProgressBar { - constructor(id, { - height, - width, - units - } = {}) { - this.visible = true; - this.div = document.querySelector(id + " .progress"); - this.bar = this.div.parentNode; - this.height = height || 100; - this.width = width || 100; - this.units = units || "%"; - this.div.style.height = this.height + this.units; - this.percent = 0; - } - - _updateBar() { - if (this._indeterminate) { - this.div.classList.add("indeterminate"); - this.div.style.width = this.width + this.units; - return; - } - - this.div.classList.remove("indeterminate"); - const progressSize = this.width * this._percent / 100; - this.div.style.width = progressSize + this.units; - } - - get percent() { - return this._percent; - } - - set percent(val) { - this._indeterminate = isNaN(val); - this._percent = clamp(val, 0, 100); - - this._updateBar(); - } - - setWidth(viewer) { - if (!viewer) { - return; - } - - const container = viewer.parentNode; - const scrollbarWidth = container.offsetWidth - viewer.offsetWidth; - - if (scrollbarWidth > 0) { - this.bar.style.width = `calc(100% - ${scrollbarWidth}px)`; - } - } - - hide() { - if (!this.visible) { - return; - } - - this.visible = false; - this.bar.classList.add("hidden"); - document.body.classList.remove("loadingInProgress"); - } - - show() { - if (this.visible) { - return; - } - - this.visible = true; - document.body.classList.add("loadingInProgress"); - this.bar.classList.remove("hidden"); - } - -} - -exports.ProgressBar = ProgressBar; - -function moveToEndOfArray(arr, condition) { - const moved = [], - len = arr.length; - let write = 0; - - for (let read = 0; read < len; ++read) { - if (condition(arr[read])) { - moved.push(arr[read]); - } else { - arr[write] = arr[read]; - ++write; - } - } - - for (let read = 0; write < len; ++read, ++write) { - arr[write] = moved[read]; - } -} - -/***/ }), -/* 3 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.OptionKind = exports.AppOptions = void 0; - -var _viewer_compatibility = __webpack_require__(4); - -const OptionKind = { - VIEWER: 0x02, - API: 0x04, - WORKER: 0x08, - PREFERENCE: 0x80 -}; -exports.OptionKind = OptionKind; -const defaultOptions = { - cursorToolOnLoad: { - value: 0, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - defaultUrl: { - value: "compressed.tracemonkey-pldi-09.pdf", - kind: OptionKind.VIEWER - }, - defaultZoomValue: { - value: "", - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - disableCreateObjectURL: { - value: false, - compatibility: _viewer_compatibility.viewerCompatibilityParams.disableCreateObjectURL, - kind: OptionKind.VIEWER - }, - disableHistory: { - value: false, - kind: OptionKind.VIEWER - }, - disablePageLabels: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - enablePermissions: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - enablePrintAutoRotate: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - enableWebGL: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - externalLinkRel: { - value: "noopener noreferrer nofollow", - kind: OptionKind.VIEWER - }, - externalLinkTarget: { - value: 0, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - historyUpdateUrl: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - ignoreDestinationZoom: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - imageResourcesPath: { - value: "./images/", - kind: OptionKind.VIEWER - }, - maxCanvasPixels: { - value: 16777216, - compatibility: _viewer_compatibility.viewerCompatibilityParams.maxCanvasPixels, - kind: OptionKind.VIEWER - }, - pdfBugEnabled: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - printResolution: { - value: 150, - kind: OptionKind.VIEWER - }, - renderer: { - value: "canvas", - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - renderInteractiveForms: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - sidebarViewOnLoad: { - value: -1, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - scrollModeOnLoad: { - value: -1, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - spreadModeOnLoad: { - value: -1, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - textLayerMode: { - value: 1, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - useOnlyCssZoom: { - value: false, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - viewOnLoad: { - value: 0, - kind: OptionKind.VIEWER + OptionKind.PREFERENCE - }, - cMapPacked: { - value: true, - kind: OptionKind.API - }, - cMapUrl: { - value: "../web/cmaps/", - kind: OptionKind.API - }, - disableAutoFetch: { - value: false, - kind: OptionKind.API + OptionKind.PREFERENCE - }, - disableFontFace: { - value: false, - kind: OptionKind.API + OptionKind.PREFERENCE - }, - disableRange: { - value: false, - kind: OptionKind.API + OptionKind.PREFERENCE - }, - disableStream: { - value: false, - kind: OptionKind.API + OptionKind.PREFERENCE - }, - docBaseUrl: { - value: "", - kind: OptionKind.API - }, - fontExtraProperties: { - value: false, - kind: OptionKind.API - }, - isEvalSupported: { - value: true, - kind: OptionKind.API - }, - maxImageSize: { - value: -1, - kind: OptionKind.API - }, - pdfBug: { - value: false, - kind: OptionKind.API - }, - verbosity: { - value: 1, - kind: OptionKind.API - }, - workerPort: { - value: null, - kind: OptionKind.WORKER - }, - workerSrc: { - value: "pdf.worker.js", - kind: OptionKind.WORKER - } -}; -{ - defaultOptions.disablePreferences = { - value: false, - kind: OptionKind.VIEWER - }; - defaultOptions.locale = { - value: typeof navigator !== "undefined" ? navigator.language : "en-US", - kind: OptionKind.VIEWER - }; -} -const userOptions = Object.create(null); - -class AppOptions { - constructor() { - throw new Error("Cannot initialize AppOptions."); - } - - static get(name) { - const userOption = userOptions[name]; - - if (userOption !== undefined) { - return userOption; - } - - const defaultOption = defaultOptions[name]; - - if (defaultOption !== undefined) { - return defaultOption.compatibility || defaultOption.value; - } - - return undefined; - } - - static getAll(kind = null) { - const options = Object.create(null); - - for (const name in defaultOptions) { - const defaultOption = defaultOptions[name]; - - if (kind) { - if ((kind & defaultOption.kind) === 0) { - continue; - } - - if (kind === OptionKind.PREFERENCE) { - const value = defaultOption.value, - valueType = typeof value; - - if (valueType === "boolean" || valueType === "string" || valueType === "number" && Number.isInteger(value)) { - options[name] = value; - continue; - } - - throw new Error(`Invalid type for preference: ${name}`); - } - } - - const userOption = userOptions[name]; - options[name] = userOption !== undefined ? userOption : defaultOption.compatibility || defaultOption.value; - } - - return options; - } - - static set(name, value) { - userOptions[name] = value; - } - - static remove(name) { - delete userOptions[name]; - } - -} - -exports.AppOptions = AppOptions; - -/***/ }), -/* 4 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.viewerCompatibilityParams = void 0; -const compatibilityParams = Object.create(null); -{ - const userAgent = typeof navigator !== "undefined" && navigator.userAgent || ""; - const platform = typeof navigator !== "undefined" && navigator.platform || ""; - const maxTouchPoints = typeof navigator !== "undefined" && navigator.maxTouchPoints || 1; - const isAndroid = /Android/.test(userAgent); - const isIE = /Trident/.test(userAgent); - const isIOS = /\b(iPad|iPhone|iPod)(?=;)/.test(userAgent) || platform === "MacIntel" && maxTouchPoints > 1; - const isIOSChrome = /CriOS/.test(userAgent); - - (function checkOnBlobSupport() { - if (isIE || isIOSChrome) { - compatibilityParams.disableCreateObjectURL = true; - } - })(); - - (function checkCanvasSizeLimitation() { - if (isIOS || isAndroid) { - compatibilityParams.maxCanvasPixels = 5242880; - } - })(); -} -const viewerCompatibilityParams = Object.freeze(compatibilityParams); -exports.viewerCompatibilityParams = viewerCompatibilityParams; - -/***/ }), -/* 5 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -let pdfjsLib; - -if (typeof window !== "undefined" && window["pdfjs-dist/build/pdf"]) { - pdfjsLib = window["pdfjs-dist/build/pdf"]; -} else { - pdfjsLib = require("../build/pdf.js"); -} - -module.exports = pdfjsLib; - -/***/ }), -/* 6 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFCursorTools = exports.CursorTool = void 0; - -var _grab_to_pan = __webpack_require__(7); - -const CursorTool = { - SELECT: 0, - HAND: 1, - ZOOM: 2 -}; -exports.CursorTool = CursorTool; - -class PDFCursorTools { - constructor({ - container, - eventBus, - cursorToolOnLoad = CursorTool.SELECT - }) { - this.container = container; - this.eventBus = eventBus; - this.active = CursorTool.SELECT; - this.activeBeforePresentationMode = null; - this.handTool = new _grab_to_pan.GrabToPan({ - element: this.container - }); - - this._addEventListeners(); - - Promise.resolve().then(() => { - this.switchTool(cursorToolOnLoad); - }); - } - - get activeTool() { - return this.active; - } - - switchTool(tool) { - if (this.activeBeforePresentationMode !== null) { - return; - } - - if (tool === this.active) { - return; - } - - const disableActiveTool = () => { - switch (this.active) { - case CursorTool.SELECT: - break; - - case CursorTool.HAND: - this.handTool.deactivate(); - break; - - case CursorTool.ZOOM: - } - }; - - switch (tool) { - case CursorTool.SELECT: - disableActiveTool(); - break; - - case CursorTool.HAND: - disableActiveTool(); - this.handTool.activate(); - break; - - case CursorTool.ZOOM: - default: - console.error(`switchTool: "${tool}" is an unsupported value.`); - return; - } - - this.active = tool; - - this._dispatchEvent(); - } - - _dispatchEvent() { - this.eventBus.dispatch("cursortoolchanged", { - source: this, - tool: this.active - }); - } - - _addEventListeners() { - this.eventBus._on("switchcursortool", evt => { - this.switchTool(evt.tool); - }); - - this.eventBus._on("presentationmodechanged", evt => { - if (evt.switchInProgress) { - return; - } - - let previouslyActive; - - if (evt.active) { - previouslyActive = this.active; - this.switchTool(CursorTool.SELECT); - this.activeBeforePresentationMode = previouslyActive; - } else { - previouslyActive = this.activeBeforePresentationMode; - this.activeBeforePresentationMode = null; - this.switchTool(previouslyActive); - } - }); - } - -} - -exports.PDFCursorTools = PDFCursorTools; - -/***/ }), -/* 7 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GrabToPan = GrabToPan; - -function GrabToPan(options) { - this.element = options.element; - this.document = options.element.ownerDocument; - - if (typeof options.ignoreTarget === "function") { - this.ignoreTarget = options.ignoreTarget; - } - - this.onActiveChanged = options.onActiveChanged; - this.activate = this.activate.bind(this); - this.deactivate = this.deactivate.bind(this); - this.toggle = this.toggle.bind(this); - this._onmousedown = this._onmousedown.bind(this); - this._onmousemove = this._onmousemove.bind(this); - this._endPan = this._endPan.bind(this); - const overlay = this.overlay = document.createElement("div"); - overlay.className = "grab-to-pan-grabbing"; -} - -GrabToPan.prototype = { - CSS_CLASS_GRAB: "grab-to-pan-grab", - activate: function GrabToPan_activate() { - if (!this.active) { - this.active = true; - this.element.addEventListener("mousedown", this._onmousedown, true); - this.element.classList.add(this.CSS_CLASS_GRAB); - - if (this.onActiveChanged) { - this.onActiveChanged(true); - } - } - }, - deactivate: function GrabToPan_deactivate() { - if (this.active) { - this.active = false; - this.element.removeEventListener("mousedown", this._onmousedown, true); - - this._endPan(); - - this.element.classList.remove(this.CSS_CLASS_GRAB); - - if (this.onActiveChanged) { - this.onActiveChanged(false); - } - } - }, - toggle: function GrabToPan_toggle() { - if (this.active) { - this.deactivate(); - } else { - this.activate(); - } - }, - ignoreTarget: function GrabToPan_ignoreTarget(node) { - return node[matchesSelector]("a[href], a[href] *, input, textarea, button, button *, select, option"); - }, - _onmousedown: function GrabToPan__onmousedown(event) { - if (event.button !== 0 || this.ignoreTarget(event.target)) { - return; - } - - if (event.originalTarget) { - try { - event.originalTarget.tagName; - } catch (e) { - return; - } - } - - this.scrollLeftStart = this.element.scrollLeft; - this.scrollTopStart = this.element.scrollTop; - this.clientXStart = event.clientX; - this.clientYStart = event.clientY; - this.document.addEventListener("mousemove", this._onmousemove, true); - this.document.addEventListener("mouseup", this._endPan, true); - this.element.addEventListener("scroll", this._endPan, true); - event.preventDefault(); - event.stopPropagation(); - const focusedElement = document.activeElement; - - if (focusedElement && !focusedElement.contains(event.target)) { - focusedElement.blur(); - } - }, - _onmousemove: function GrabToPan__onmousemove(event) { - this.element.removeEventListener("scroll", this._endPan, true); - - if (isLeftMouseReleased(event)) { - this._endPan(); - - return; - } - - const xDiff = event.clientX - this.clientXStart; - const yDiff = event.clientY - this.clientYStart; - const scrollTop = this.scrollTopStart - yDiff; - const scrollLeft = this.scrollLeftStart - xDiff; - - if (this.element.scrollTo) { - this.element.scrollTo({ - top: scrollTop, - left: scrollLeft, - behavior: "instant" - }); - } else { - this.element.scrollTop = scrollTop; - this.element.scrollLeft = scrollLeft; - } - - if (!this.overlay.parentNode) { - document.body.appendChild(this.overlay); - } - }, - _endPan: function GrabToPan__endPan() { - this.element.removeEventListener("scroll", this._endPan, true); - this.document.removeEventListener("mousemove", this._onmousemove, true); - this.document.removeEventListener("mouseup", this._endPan, true); - this.overlay.remove(); - } -}; -let matchesSelector; -["webkitM", "mozM", "msM", "oM", "m"].some(function (prefix) { - let name = prefix + "atches"; - - if (name in document.documentElement) { - matchesSelector = name; - } - - name += "Selector"; - - if (name in document.documentElement) { - matchesSelector = name; - } - - return matchesSelector; -}); -const isNotIEorIsIE10plus = !document.documentMode || document.documentMode > 9; -const chrome = window.chrome; -const isChrome15OrOpera15plus = chrome && (chrome.webstore || chrome.app); -const isSafari6plus = /Apple/.test(navigator.vendor) && /Version\/([6-9]\d*|[1-5]\d+)/.test(navigator.userAgent); - -function isLeftMouseReleased(event) { - if ("buttons" in event && isNotIEorIsIE10plus) { - return !(event.buttons & 1); - } - - if (isChrome15OrOpera15plus || isSafari6plus) { - return event.which === 0; - } - - return false; -} - -/***/ }), -/* 8 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFRenderingQueue = exports.RenderingStates = void 0; -const CLEANUP_TIMEOUT = 30000; -const RenderingStates = { - INITIAL: 0, - RUNNING: 1, - PAUSED: 2, - FINISHED: 3 -}; -exports.RenderingStates = RenderingStates; - -class PDFRenderingQueue { - constructor() { - this.pdfViewer = null; - this.pdfThumbnailViewer = null; - this.onIdle = null; - this.highestPriorityPage = null; - this.idleTimeout = null; - this.printing = false; - this.isThumbnailViewEnabled = false; - } - - setViewer(pdfViewer) { - this.pdfViewer = pdfViewer; - } - - setThumbnailViewer(pdfThumbnailViewer) { - this.pdfThumbnailViewer = pdfThumbnailViewer; - } - - isHighestPriority(view) { - return this.highestPriorityPage === view.renderingId; - } - - renderHighestPriority(currentlyVisiblePages) { - if (this.idleTimeout) { - clearTimeout(this.idleTimeout); - this.idleTimeout = null; - } - - if (this.pdfViewer.forceRendering(currentlyVisiblePages)) { - return; - } - - if (this.pdfThumbnailViewer && this.isThumbnailViewEnabled) { - if (this.pdfThumbnailViewer.forceRendering()) { - return; - } - } - - if (this.printing) { - return; - } - - if (this.onIdle) { - this.idleTimeout = setTimeout(this.onIdle.bind(this), CLEANUP_TIMEOUT); - } - } - - getHighestPriority(visible, views, scrolledDown) { - const visibleViews = visible.views; - const numVisible = visibleViews.length; - - if (numVisible === 0) { - return null; - } - - for (let i = 0; i < numVisible; ++i) { - const view = visibleViews[i].view; - - if (!this.isViewFinished(view)) { - return view; - } - } - - if (scrolledDown) { - const nextPageIndex = visible.last.id; - - if (views[nextPageIndex] && !this.isViewFinished(views[nextPageIndex])) { - return views[nextPageIndex]; - } - } else { - const previousPageIndex = visible.first.id - 2; - - if (views[previousPageIndex] && !this.isViewFinished(views[previousPageIndex])) { - return views[previousPageIndex]; - } - } - - return null; - } - - isViewFinished(view) { - return view.renderingState === RenderingStates.FINISHED; - } - - renderView(view) { - switch (view.renderingState) { - case RenderingStates.FINISHED: - return false; - - case RenderingStates.PAUSED: - this.highestPriorityPage = view.renderingId; - view.resume(); - break; - - case RenderingStates.RUNNING: - this.highestPriorityPage = view.renderingId; - break; - - case RenderingStates.INITIAL: - this.highestPriorityPage = view.renderingId; - view.draw().finally(() => { - this.renderHighestPriority(); - }).catch(reason => { - console.error(`renderView: "${reason}"`); - }); - break; - } - - return true; - } - -} - -exports.PDFRenderingQueue = PDFRenderingQueue; - -/***/ }), -/* 9 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFSidebar = exports.SidebarView = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdf_rendering_queue = __webpack_require__(8); - -const UI_NOTIFICATION_CLASS = "pdfSidebarNotification"; -const SidebarView = { - UNKNOWN: -1, - NONE: 0, - THUMBS: 1, - OUTLINE: 2, - ATTACHMENTS: 3, - LAYERS: 4 -}; -exports.SidebarView = SidebarView; - -class PDFSidebar { - constructor({ - elements, - pdfViewer, - pdfThumbnailViewer, - eventBus, - l10n = _ui_utils.NullL10n, - disableNotification = false - }) { - this.isOpen = false; - this.active = SidebarView.THUMBS; - this.isInitialViewSet = false; - this.onToggled = null; - this.pdfViewer = pdfViewer; - this.pdfThumbnailViewer = pdfThumbnailViewer; - this.outerContainer = elements.outerContainer; - this.viewerContainer = elements.viewerContainer; - this.toggleButton = elements.toggleButton; - this.thumbnailButton = elements.thumbnailButton; - this.outlineButton = elements.outlineButton; - this.attachmentsButton = elements.attachmentsButton; - this.thumbnailView = elements.thumbnailView; - this.outlineView = elements.outlineView; - this.attachmentsView = elements.attachmentsView; - this.eventBus = eventBus; - this.l10n = l10n; - this._disableNotification = disableNotification; - - this._addEventListeners(); - } - - reset() { - this.isInitialViewSet = false; - - this._hideUINotification(null); - - this.switchView(SidebarView.THUMBS); - this.outlineButton.disabled = false; - this.attachmentsButton.disabled = false; - } - - get visibleView() { - return this.isOpen ? this.active : SidebarView.NONE; - } - - get isThumbnailViewVisible() { - return this.isOpen && this.active === SidebarView.THUMBS; - } - - get isOutlineViewVisible() { - return this.isOpen && this.active === SidebarView.OUTLINE; - } - - get isAttachmentsViewVisible() { - return this.isOpen && this.active === SidebarView.ATTACHMENTS; - } - - setInitialView(view = SidebarView.NONE) { - if (this.isInitialViewSet) { - return; - } - - this.isInitialViewSet = true; - - if (view === SidebarView.NONE || view === SidebarView.UNKNOWN) { - this._dispatchEvent(); - - return; - } - - if (!this._switchView(view, true)) { - this._dispatchEvent(); - } - } - - switchView(view, forceOpen = false) { - this._switchView(view, forceOpen); - } - - _switchView(view, forceOpen = false) { - const isViewChanged = view !== this.active; - let shouldForceRendering = false; - - switch (view) { - case SidebarView.NONE: - if (this.isOpen) { - this.close(); - return true; - } - - return false; - - case SidebarView.THUMBS: - if (this.isOpen && isViewChanged) { - shouldForceRendering = true; - } - - break; - - case SidebarView.OUTLINE: - if (this.outlineButton.disabled) { - return false; - } - - break; - - case SidebarView.ATTACHMENTS: - if (this.attachmentsButton.disabled) { - return false; - } - - break; - - default: - console.error(`PDFSidebar._switchView: "${view}" is not a valid view.`); - return false; - } - - this.active = view; - this.thumbnailButton.classList.toggle("toggled", view === SidebarView.THUMBS); - this.outlineButton.classList.toggle("toggled", view === SidebarView.OUTLINE); - this.attachmentsButton.classList.toggle("toggled", view === SidebarView.ATTACHMENTS); - this.thumbnailView.classList.toggle("hidden", view !== SidebarView.THUMBS); - this.outlineView.classList.toggle("hidden", view !== SidebarView.OUTLINE); - this.attachmentsView.classList.toggle("hidden", view !== SidebarView.ATTACHMENTS); - - if (forceOpen && !this.isOpen) { - this.open(); - return true; - } - - if (shouldForceRendering) { - this._updateThumbnailViewer(); - - this._forceRendering(); - } - - if (isViewChanged) { - this._dispatchEvent(); - } - - this._hideUINotification(this.active); - - return isViewChanged; - } - - open() { - if (this.isOpen) { - return; - } - - this.isOpen = true; - this.toggleButton.classList.add("toggled"); - this.outerContainer.classList.add("sidebarMoving", "sidebarOpen"); - - if (this.active === SidebarView.THUMBS) { - this._updateThumbnailViewer(); - } - - this._forceRendering(); - - this._dispatchEvent(); - - this._hideUINotification(this.active); - } - - close() { - if (!this.isOpen) { - return; - } - - this.isOpen = false; - this.toggleButton.classList.remove("toggled"); - this.outerContainer.classList.add("sidebarMoving"); - this.outerContainer.classList.remove("sidebarOpen"); - - this._forceRendering(); - - this._dispatchEvent(); - } - - toggle() { - if (this.isOpen) { - this.close(); - } else { - this.open(); - } - } - - _dispatchEvent() { - this.eventBus.dispatch("sidebarviewchanged", { - source: this, - view: this.visibleView - }); - } - - _forceRendering() { - if (this.onToggled) { - this.onToggled(); - } else { - this.pdfViewer.forceRendering(); - this.pdfThumbnailViewer.forceRendering(); - } - } - - _updateThumbnailViewer() { - const { - pdfViewer, - pdfThumbnailViewer - } = this; - const pagesCount = pdfViewer.pagesCount; - - for (let pageIndex = 0; pageIndex < pagesCount; pageIndex++) { - const pageView = pdfViewer.getPageView(pageIndex); - - if (pageView && pageView.renderingState === _pdf_rendering_queue.RenderingStates.FINISHED) { - const thumbnailView = pdfThumbnailViewer.getThumbnail(pageIndex); - thumbnailView.setImage(pageView); - } - } - - pdfThumbnailViewer.scrollThumbnailIntoView(pdfViewer.currentPageNumber); - } - - _showUINotification(view) { - if (this._disableNotification) { - return; - } - - this.l10n.get("toggle_sidebar_notification.title", null, "Toggle Sidebar (document contains outline/attachments)").then(msg => { - this.toggleButton.title = msg; - }); - - if (!this.isOpen) { - this.toggleButton.classList.add(UI_NOTIFICATION_CLASS); - } else if (view === this.active) { - return; - } - - switch (view) { - case SidebarView.OUTLINE: - this.outlineButton.classList.add(UI_NOTIFICATION_CLASS); - break; - - case SidebarView.ATTACHMENTS: - this.attachmentsButton.classList.add(UI_NOTIFICATION_CLASS); - break; - } - } - - _hideUINotification(view) { - if (this._disableNotification) { - return; - } - - const removeNotification = sidebarView => { - switch (sidebarView) { - case SidebarView.OUTLINE: - this.outlineButton.classList.remove(UI_NOTIFICATION_CLASS); - break; - - case SidebarView.ATTACHMENTS: - this.attachmentsButton.classList.remove(UI_NOTIFICATION_CLASS); - break; - } - }; - - if (!this.isOpen && view !== null) { - return; - } - - this.toggleButton.classList.remove(UI_NOTIFICATION_CLASS); - - if (view !== null) { - removeNotification(view); - return; - } - - for (view in SidebarView) { - removeNotification(SidebarView[view]); - } - - this.l10n.get("toggle_sidebar.title", null, "Toggle Sidebar").then(msg => { - this.toggleButton.title = msg; - }); - } - - _addEventListeners() { - this.viewerContainer.addEventListener("transitionend", evt => { - if (evt.target === this.viewerContainer) { - this.outerContainer.classList.remove("sidebarMoving"); - } - }); - this.toggleButton.addEventListener("click", () => { - this.toggle(); - }); - this.thumbnailButton.addEventListener("click", () => { - this.switchView(SidebarView.THUMBS); - }); - this.outlineButton.addEventListener("click", () => { - this.switchView(SidebarView.OUTLINE); - }); - this.outlineButton.addEventListener("dblclick", () => { - this.eventBus.dispatch("toggleoutlinetree", { - source: this - }); - }); - this.attachmentsButton.addEventListener("click", () => { - this.switchView(SidebarView.ATTACHMENTS); - }); - - this.eventBus._on("outlineloaded", evt => { - const outlineCount = evt.outlineCount; - this.outlineButton.disabled = !outlineCount; - - if (outlineCount) { - this._showUINotification(SidebarView.OUTLINE); - } else if (this.active === SidebarView.OUTLINE) { - this.switchView(SidebarView.THUMBS); - } - }); - - this.eventBus._on("attachmentsloaded", evt => { - if (evt.attachmentsCount) { - this.attachmentsButton.disabled = false; - - this._showUINotification(SidebarView.ATTACHMENTS); - - return; - } - - Promise.resolve().then(() => { - if (this.attachmentsView.hasChildNodes()) { - return; - } - - this.attachmentsButton.disabled = true; - - if (this.active === SidebarView.ATTACHMENTS) { - this.switchView(SidebarView.THUMBS); - } - }); - }); - - this.eventBus._on("presentationmodechanged", evt => { - if (!evt.active && !evt.switchInProgress && this.isThumbnailViewVisible) { - this._updateThumbnailViewer(); - } - }); - } - -} - -exports.PDFSidebar = PDFSidebar; - -/***/ }), -/* 10 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.OverlayManager = void 0; - -class OverlayManager { - constructor() { - this._overlays = {}; - this._active = null; - this._keyDownBound = this._keyDown.bind(this); - } - - get active() { - return this._active; - } - - async register(name, element, callerCloseMethod = null, canForceClose = false) { - let container; - - if (!name || !element || !(container = element.parentNode)) { - throw new Error("Not enough parameters."); - } else if (this._overlays[name]) { - throw new Error("The overlay is already registered."); - } - - this._overlays[name] = { - element, - container, - callerCloseMethod, - canForceClose - }; - } - - async unregister(name) { - if (!this._overlays[name]) { - throw new Error("The overlay does not exist."); - } else if (this._active === name) { - throw new Error("The overlay cannot be removed while it is active."); - } - - delete this._overlays[name]; - } - - async open(name) { - if (!this._overlays[name]) { - throw new Error("The overlay does not exist."); - } else if (this._active) { - if (this._overlays[name].canForceClose) { - this._closeThroughCaller(); - } else if (this._active === name) { - throw new Error("The overlay is already active."); - } else { - throw new Error("Another overlay is currently active."); - } - } - - this._active = name; - - this._overlays[this._active].element.classList.remove("hidden"); - - this._overlays[this._active].container.classList.remove("hidden"); - - window.addEventListener("keydown", this._keyDownBound); - } - - async close(name) { - if (!this._overlays[name]) { - throw new Error("The overlay does not exist."); - } else if (!this._active) { - throw new Error("The overlay is currently not active."); - } else if (this._active !== name) { - throw new Error("Another overlay is currently active."); - } - - this._overlays[this._active].container.classList.add("hidden"); - - this._overlays[this._active].element.classList.add("hidden"); - - this._active = null; - window.removeEventListener("keydown", this._keyDownBound); - } - - _keyDown(evt) { - if (this._active && evt.keyCode === 27) { - this._closeThroughCaller(); - - evt.preventDefault(); - } - } - - _closeThroughCaller() { - if (this._overlays[this._active].callerCloseMethod) { - this._overlays[this._active].callerCloseMethod(); - } - - if (this._active) { - this.close(this._active); - } - } - -} - -exports.OverlayManager = OverlayManager; - -/***/ }), -/* 11 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PasswordPrompt = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdfjsLib = __webpack_require__(5); - -class PasswordPrompt { - constructor(options, overlayManager, l10n = _ui_utils.NullL10n) { - this.overlayName = options.overlayName; - this.container = options.container; - this.label = options.label; - this.input = options.input; - this.submitButton = options.submitButton; - this.cancelButton = options.cancelButton; - this.overlayManager = overlayManager; - this.l10n = l10n; - this.updateCallback = null; - this.reason = null; - this.submitButton.addEventListener("click", this.verify.bind(this)); - this.cancelButton.addEventListener("click", this.close.bind(this)); - this.input.addEventListener("keydown", e => { - if (e.keyCode === 13) { - this.verify(); - } - }); - this.overlayManager.register(this.overlayName, this.container, this.close.bind(this), true); - } - - open() { - this.overlayManager.open(this.overlayName).then(() => { - this.input.focus(); - let promptString; - - if (this.reason === _pdfjsLib.PasswordResponses.INCORRECT_PASSWORD) { - promptString = this.l10n.get("password_invalid", null, "Invalid password. Please try again."); - } else { - promptString = this.l10n.get("password_label", null, "Enter the password to open this PDF file."); - } - - promptString.then(msg => { - this.label.textContent = msg; - }); - }); - } - - close() { - this.overlayManager.close(this.overlayName).then(() => { - this.input.value = ""; - }); - } - - verify() { - const password = this.input.value; - - if (password && password.length > 0) { - this.close(); - this.updateCallback(password); - } - } - - setUpdateCallback(updateCallback, reason) { - this.updateCallback = updateCallback; - this.reason = reason; - } - -} - -exports.PasswordPrompt = PasswordPrompt; - -/***/ }), -/* 12 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFAttachmentViewer = void 0; - -var _pdfjsLib = __webpack_require__(5); - -class PDFAttachmentViewer { - constructor({ - container, - eventBus, - downloadManager - }) { - this.container = container; - this.eventBus = eventBus; - this.downloadManager = downloadManager; - this.reset(); - - this.eventBus._on("fileattachmentannotation", this._appendAttachment.bind(this)); - } - - reset(keepRenderedCapability = false) { - this.attachments = null; - this.container.textContent = ""; - - if (!keepRenderedCapability) { - this._renderedCapability = (0, _pdfjsLib.createPromiseCapability)(); - } - } - - _dispatchEvent(attachmentsCount) { - this._renderedCapability.resolve(); - - this.eventBus.dispatch("attachmentsloaded", { - source: this, - attachmentsCount - }); - } - - _bindPdfLink(button, content, filename) { - let blobUrl; - - button.onclick = () => { - if (!blobUrl) { - blobUrl = URL.createObjectURL(new Blob([content], { - type: "application/pdf" - })); - } - - let viewerUrl; - viewerUrl = "?file=" + encodeURIComponent(blobUrl + "#" + filename); - - try { - window.open(viewerUrl); - } catch (ex) { - console.error(`_bindPdfLink: ${ex}`); - URL.revokeObjectURL(blobUrl); - blobUrl = null; - this.downloadManager.downloadData(content, filename, "application/pdf"); - } - - return false; - }; - } - - _bindLink(button, content, filename) { - button.onclick = () => { - this.downloadManager.downloadData(content, filename, ""); - return false; - }; - } - - render({ - attachments, - keepRenderedCapability = false - }) { - let attachmentsCount = 0; - - if (this.attachments) { - this.reset(keepRenderedCapability === true); - } - - this.attachments = attachments || null; - - if (!attachments) { - this._dispatchEvent(attachmentsCount); - - return; - } - - const names = Object.keys(attachments).sort(function (a, b) { - return a.toLowerCase().localeCompare(b.toLowerCase()); - }); - attachmentsCount = names.length; - - for (let i = 0; i < attachmentsCount; i++) { - const item = attachments[names[i]]; - const filename = (0, _pdfjsLib.removeNullCharacters)((0, _pdfjsLib.getFilenameFromUrl)(item.filename)); - const div = document.createElement("div"); - div.className = "attachmentsItem"; - const button = document.createElement("button"); - button.textContent = filename; - - if (/\.pdf$/i.test(filename) && !this.downloadManager.disableCreateObjectURL) { - this._bindPdfLink(button, item.content, filename); - } else { - this._bindLink(button, item.content, filename); - } - - div.appendChild(button); - this.container.appendChild(div); - } - - this._dispatchEvent(attachmentsCount); - } - - _appendAttachment({ - id, - filename, - content - }) { - this._renderedCapability.promise.then(() => { - let attachments = this.attachments; - - if (!attachments) { - attachments = Object.create(null); - } else { - for (const name in attachments) { - if (id === name) { - return; - } - } - } - - attachments[id] = { - filename, - content - }; - this.render({ - attachments, - keepRenderedCapability: true - }); - }); - } - -} - -exports.PDFAttachmentViewer = PDFAttachmentViewer; - -/***/ }), -/* 13 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFDocumentProperties = void 0; - -var _pdfjsLib = __webpack_require__(5); - -var _ui_utils = __webpack_require__(2); - -const DEFAULT_FIELD_CONTENT = "-"; -const NON_METRIC_LOCALES = ["en-us", "en-lr", "my"]; -const US_PAGE_NAMES = { - "8.5x11": "Letter", - "8.5x14": "Legal" -}; -const METRIC_PAGE_NAMES = { - "297x420": "A3", - "210x297": "A4" -}; - -function getPageName(size, isPortrait, pageNames) { - const width = isPortrait ? size.width : size.height; - const height = isPortrait ? size.height : size.width; - return pageNames[`${width}x${height}`]; -} - -class PDFDocumentProperties { - constructor({ - overlayName, - fields, - container, - closeButton - }, overlayManager, eventBus, l10n = _ui_utils.NullL10n) { - this.overlayName = overlayName; - this.fields = fields; - this.container = container; - this.overlayManager = overlayManager; - this.l10n = l10n; - - this._reset(); - - closeButton.addEventListener("click", this.close.bind(this)); - this.overlayManager.register(this.overlayName, this.container, this.close.bind(this)); - - eventBus._on("pagechanging", evt => { - this._currentPageNumber = evt.pageNumber; - }); - - eventBus._on("rotationchanging", evt => { - this._pagesRotation = evt.pagesRotation; - }); - - this._isNonMetricLocale = true; - l10n.getLanguage().then(locale => { - this._isNonMetricLocale = NON_METRIC_LOCALES.includes(locale); - }); - } - - open() { - const freezeFieldData = data => { - Object.defineProperty(this, "fieldData", { - value: Object.freeze(data), - writable: false, - enumerable: true, - configurable: true - }); - }; - - Promise.all([this.overlayManager.open(this.overlayName), this._dataAvailableCapability.promise]).then(() => { - const currentPageNumber = this._currentPageNumber; - const pagesRotation = this._pagesRotation; - - if (this.fieldData && currentPageNumber === this.fieldData._currentPageNumber && pagesRotation === this.fieldData._pagesRotation) { - this._updateUI(); - - return; - } - - this.pdfDocument.getMetadata().then(({ - info, - metadata, - contentDispositionFilename - }) => { - return Promise.all([info, metadata, contentDispositionFilename || (0, _ui_utils.getPDFFileNameFromURL)(this.url), this._parseFileSize(this.maybeFileSize), this._parseDate(info.CreationDate), this._parseDate(info.ModDate), this.pdfDocument.getPage(currentPageNumber).then(pdfPage => { - return this._parsePageSize((0, _ui_utils.getPageSizeInches)(pdfPage), pagesRotation); - }), this._parseLinearization(info.IsLinearized)]); - }).then(([info, metadata, fileName, fileSize, creationDate, modDate, pageSize, isLinearized]) => { - freezeFieldData({ - fileName, - fileSize, - title: info.Title, - author: info.Author, - subject: info.Subject, - keywords: info.Keywords, - creationDate, - modificationDate: modDate, - creator: info.Creator, - producer: info.Producer, - version: info.PDFFormatVersion, - pageCount: this.pdfDocument.numPages, - pageSize, - linearized: isLinearized, - _currentPageNumber: currentPageNumber, - _pagesRotation: pagesRotation - }); - - this._updateUI(); - - return this.pdfDocument.getDownloadInfo(); - }).then(({ - length - }) => { - this.maybeFileSize = length; - return this._parseFileSize(length); - }).then(fileSize => { - if (fileSize === this.fieldData.fileSize) { - return; - } - - const data = Object.assign(Object.create(null), this.fieldData); - data.fileSize = fileSize; - freezeFieldData(data); - - this._updateUI(); - }); - }); - } - - close() { - this.overlayManager.close(this.overlayName); - } - - setDocument(pdfDocument, url = null) { - if (this.pdfDocument) { - this._reset(); - - this._updateUI(true); - } - - if (!pdfDocument) { - return; - } - - this.pdfDocument = pdfDocument; - this.url = url; - - this._dataAvailableCapability.resolve(); - } - - setFileSize(fileSize) { - if (Number.isInteger(fileSize) && fileSize > 0) { - this.maybeFileSize = fileSize; - } - } - - _reset() { - this.pdfDocument = null; - this.url = null; - this.maybeFileSize = 0; - delete this.fieldData; - this._dataAvailableCapability = (0, _pdfjsLib.createPromiseCapability)(); - this._currentPageNumber = 1; - this._pagesRotation = 0; - } - - _updateUI(reset = false) { - if (reset || !this.fieldData) { - for (const id in this.fields) { - this.fields[id].textContent = DEFAULT_FIELD_CONTENT; - } - - return; - } - - if (this.overlayManager.active !== this.overlayName) { - return; - } - - for (const id in this.fields) { - const content = this.fieldData[id]; - this.fields[id].textContent = content || content === 0 ? content : DEFAULT_FIELD_CONTENT; - } - } - - async _parseFileSize(fileSize = 0) { - const kb = fileSize / 1024; - - if (!kb) { - return undefined; - } else if (kb < 1024) { - return this.l10n.get("document_properties_kb", { - size_kb: (+kb.toPrecision(3)).toLocaleString(), - size_b: fileSize.toLocaleString() - }, "{{size_kb}} KB ({{size_b}} bytes)"); - } - - return this.l10n.get("document_properties_mb", { - size_mb: (+(kb / 1024).toPrecision(3)).toLocaleString(), - size_b: fileSize.toLocaleString() - }, "{{size_mb}} MB ({{size_b}} bytes)"); - } - - async _parsePageSize(pageSizeInches, pagesRotation) { - if (!pageSizeInches) { - return undefined; - } - - if (pagesRotation % 180 !== 0) { - pageSizeInches = { - width: pageSizeInches.height, - height: pageSizeInches.width - }; - } - - const isPortrait = (0, _ui_utils.isPortraitOrientation)(pageSizeInches); - let sizeInches = { - width: Math.round(pageSizeInches.width * 100) / 100, - height: Math.round(pageSizeInches.height * 100) / 100 - }; - let sizeMillimeters = { - width: Math.round(pageSizeInches.width * 25.4 * 10) / 10, - height: Math.round(pageSizeInches.height * 25.4 * 10) / 10 - }; - let pageName = null; - let rawName = getPageName(sizeInches, isPortrait, US_PAGE_NAMES) || getPageName(sizeMillimeters, isPortrait, METRIC_PAGE_NAMES); - - if (!rawName && !(Number.isInteger(sizeMillimeters.width) && Number.isInteger(sizeMillimeters.height))) { - const exactMillimeters = { - width: pageSizeInches.width * 25.4, - height: pageSizeInches.height * 25.4 - }; - const intMillimeters = { - width: Math.round(sizeMillimeters.width), - height: Math.round(sizeMillimeters.height) - }; - - if (Math.abs(exactMillimeters.width - intMillimeters.width) < 0.1 && Math.abs(exactMillimeters.height - intMillimeters.height) < 0.1) { - rawName = getPageName(intMillimeters, isPortrait, METRIC_PAGE_NAMES); - - if (rawName) { - sizeInches = { - width: Math.round(intMillimeters.width / 25.4 * 100) / 100, - height: Math.round(intMillimeters.height / 25.4 * 100) / 100 - }; - sizeMillimeters = intMillimeters; - } - } - } - - if (rawName) { - pageName = this.l10n.get("document_properties_page_size_name_" + rawName.toLowerCase(), null, rawName); - } - - return Promise.all([this._isNonMetricLocale ? sizeInches : sizeMillimeters, this.l10n.get("document_properties_page_size_unit_" + (this._isNonMetricLocale ? "inches" : "millimeters"), null, this._isNonMetricLocale ? "in" : "mm"), pageName, this.l10n.get("document_properties_page_size_orientation_" + (isPortrait ? "portrait" : "landscape"), null, isPortrait ? "portrait" : "landscape")]).then(([{ - width, - height - }, unit, name, orientation]) => { - return this.l10n.get("document_properties_page_size_dimension_" + (name ? "name_" : "") + "string", { - width: width.toLocaleString(), - height: height.toLocaleString(), - unit, - name, - orientation - }, "{{width}} × {{height}} {{unit}} (" + (name ? "{{name}}, " : "") + "{{orientation}})"); - }); - } - - async _parseDate(inputDate) { - const dateObject = _pdfjsLib.PDFDateString.toDateObject(inputDate); - - if (!dateObject) { - return undefined; - } - - return this.l10n.get("document_properties_date_string", { - date: dateObject.toLocaleDateString(), - time: dateObject.toLocaleTimeString() - }, "{{date}}, {{time}}"); - } - - _parseLinearization(isLinearized) { - return this.l10n.get("document_properties_linearized_" + (isLinearized ? "yes" : "no"), null, isLinearized ? "Yes" : "No"); - } - -} - -exports.PDFDocumentProperties = PDFDocumentProperties; - -/***/ }), -/* 14 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFFindBar = void 0; - -var _pdf_find_controller = __webpack_require__(15); - -var _ui_utils = __webpack_require__(2); - -const MATCHES_COUNT_LIMIT = 1000; - -class PDFFindBar { - constructor(options, eventBus, l10n = _ui_utils.NullL10n) { - this.opened = false; - this.bar = options.bar || null; - this.toggleButton = options.toggleButton || null; - this.findField = options.findField || null; - this.highlightAll = options.highlightAllCheckbox || null; - this.caseSensitive = options.caseSensitiveCheckbox || null; - this.entireWord = options.entireWordCheckbox || null; - this.findMsg = options.findMsg || null; - this.findResultsCount = options.findResultsCount || null; - this.findPreviousButton = options.findPreviousButton || null; - this.findNextButton = options.findNextButton || null; - this.eventBus = eventBus; - this.l10n = l10n; - this.toggleButton.addEventListener("click", () => { - this.toggle(); - }); - this.findField.addEventListener("input", () => { - this.dispatchEvent(""); - }); - this.bar.addEventListener("keydown", e => { - switch (e.keyCode) { - case 13: - if (e.target === this.findField) { - this.dispatchEvent("again", e.shiftKey); - } - - break; - - case 27: - this.close(); - break; - } - }); - this.findPreviousButton.addEventListener("click", () => { - this.dispatchEvent("again", true); - }); - this.findNextButton.addEventListener("click", () => { - this.dispatchEvent("again", false); - }); - this.highlightAll.addEventListener("click", () => { - this.dispatchEvent("highlightallchange"); - }); - this.caseSensitive.addEventListener("click", () => { - this.dispatchEvent("casesensitivitychange"); - }); - this.entireWord.addEventListener("click", () => { - this.dispatchEvent("entirewordchange"); - }); - - this.eventBus._on("resize", this._adjustWidth.bind(this)); - } - - reset() { - this.updateUIState(); - } - - dispatchEvent(type, findPrev) { - this.eventBus.dispatch("find", { - source: this, - type, - query: this.findField.value, - phraseSearch: true, - caseSensitive: this.caseSensitive.checked, - entireWord: this.entireWord.checked, - highlightAll: this.highlightAll.checked, - findPrevious: findPrev - }); - } - - updateUIState(state, previous, matchesCount) { - let notFound = false; - let findMsg = ""; - let status = ""; - - switch (state) { - case _pdf_find_controller.FindState.FOUND: - break; - - case _pdf_find_controller.FindState.PENDING: - status = "pending"; - break; - - case _pdf_find_controller.FindState.NOT_FOUND: - findMsg = this.l10n.get("find_not_found", null, "Phrase not found"); - notFound = true; - break; - - case _pdf_find_controller.FindState.WRAPPED: - if (previous) { - findMsg = this.l10n.get("find_reached_top", null, "Reached top of document, continued from bottom"); - } else { - findMsg = this.l10n.get("find_reached_bottom", null, "Reached end of document, continued from top"); - } - - break; - } - - this.findField.classList.toggle("notFound", notFound); - this.findField.setAttribute("data-status", status); - Promise.resolve(findMsg).then(msg => { - this.findMsg.textContent = msg; - - this._adjustWidth(); - }); - this.updateResultsCount(matchesCount); - } - - updateResultsCount({ - current = 0, - total = 0 - } = {}) { - if (!this.findResultsCount) { - return; - } - - const limit = MATCHES_COUNT_LIMIT; - let matchesCountMsg = ""; - - if (total > 0) { - if (total > limit) { - matchesCountMsg = this.l10n.get("find_match_count_limit", { - limit - }, "More than {{limit}} match" + (limit !== 1 ? "es" : "")); - } else { - matchesCountMsg = this.l10n.get("find_match_count", { - current, - total - }, "{{current}} of {{total}} match" + (total !== 1 ? "es" : "")); - } - } - - Promise.resolve(matchesCountMsg).then(msg => { - this.findResultsCount.textContent = msg; - this.findResultsCount.classList.toggle("hidden", !total); - - this._adjustWidth(); - }); - } - - open() { - if (!this.opened) { - this.opened = true; - this.toggleButton.classList.add("toggled"); - this.bar.classList.remove("hidden"); - } - - this.findField.select(); - this.findField.focus(); - - this._adjustWidth(); - } - - close() { - if (!this.opened) { - return; - } - - this.opened = false; - this.toggleButton.classList.remove("toggled"); - this.bar.classList.add("hidden"); - this.eventBus.dispatch("findbarclose", { - source: this - }); - } - - toggle() { - if (this.opened) { - this.close(); - } else { - this.open(); - } - } - - _adjustWidth() { - if (!this.opened) { - return; - } - - this.bar.classList.remove("wrapContainers"); - const findbarHeight = this.bar.clientHeight; - const inputContainerHeight = this.bar.firstElementChild.clientHeight; - - if (findbarHeight > inputContainerHeight) { - this.bar.classList.add("wrapContainers"); - } - } - -} - -exports.PDFFindBar = PDFFindBar; - -/***/ }), -/* 15 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFFindController = exports.FindState = void 0; - -var _pdfjsLib = __webpack_require__(5); - -var _pdf_find_utils = __webpack_require__(16); - -var _ui_utils = __webpack_require__(2); - -const FindState = { - FOUND: 0, - NOT_FOUND: 1, - WRAPPED: 2, - PENDING: 3 -}; -exports.FindState = FindState; -const FIND_TIMEOUT = 250; -const MATCH_SCROLL_OFFSET_TOP = -50; -const MATCH_SCROLL_OFFSET_LEFT = -400; -const CHARACTERS_TO_NORMALIZE = { - "\u2018": "'", - "\u2019": "'", - "\u201A": "'", - "\u201B": "'", - "\u201C": '"', - "\u201D": '"', - "\u201E": '"', - "\u201F": '"', - "\u00BC": "1/4", - "\u00BD": "1/2", - "\u00BE": "3/4" -}; -let normalizationRegex = null; - -function normalize(text) { - if (!normalizationRegex) { - const replace = Object.keys(CHARACTERS_TO_NORMALIZE).join(""); - normalizationRegex = new RegExp(`[${replace}]`, "g"); - } - - return text.replace(normalizationRegex, function (ch) { - return CHARACTERS_TO_NORMALIZE[ch]; - }); -} - -class PDFFindController { - constructor({ - linkService, - eventBus - }) { - this._linkService = linkService; - this._eventBus = eventBus; - - this._reset(); - - eventBus._on("findbarclose", this._onFindBarClose.bind(this)); - } - - get highlightMatches() { - return this._highlightMatches; - } - - get pageMatches() { - return this._pageMatches; - } - - get pageMatchesLength() { - return this._pageMatchesLength; - } - - get selected() { - return this._selected; - } - - get state() { - return this._state; - } - - setDocument(pdfDocument) { - if (this._pdfDocument) { - this._reset(); - } - - if (!pdfDocument) { - return; - } - - this._pdfDocument = pdfDocument; - - this._firstPageCapability.resolve(); - } - - executeCommand(cmd, state) { - if (!state) { - return; - } - - const pdfDocument = this._pdfDocument; - - if (this._state === null || this._shouldDirtyMatch(cmd, state)) { - this._dirtyMatch = true; - } - - this._state = state; - - if (cmd !== "findhighlightallchange") { - this._updateUIState(FindState.PENDING); - } - - this._firstPageCapability.promise.then(() => { - if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) { - return; - } - - this._extractText(); - - const findbarClosed = !this._highlightMatches; - const pendingTimeout = !!this._findTimeout; - - if (this._findTimeout) { - clearTimeout(this._findTimeout); - this._findTimeout = null; - } - - if (cmd === "find") { - this._findTimeout = setTimeout(() => { - this._nextMatch(); - - this._findTimeout = null; - }, FIND_TIMEOUT); - } else if (this._dirtyMatch) { - this._nextMatch(); - } else if (cmd === "findagain") { - this._nextMatch(); - - if (findbarClosed && this._state.highlightAll) { - this._updateAllPages(); - } - } else if (cmd === "findhighlightallchange") { - if (pendingTimeout) { - this._nextMatch(); - } else { - this._highlightMatches = true; - } - - this._updateAllPages(); - } else { - this._nextMatch(); - } - }); - } - - scrollMatchIntoView({ - element = null, - pageIndex = -1, - matchIndex = -1 - }) { - if (!this._scrollMatches || !element) { - return; - } else if (matchIndex === -1 || matchIndex !== this._selected.matchIdx) { - return; - } else if (pageIndex === -1 || pageIndex !== this._selected.pageIdx) { - return; - } - - this._scrollMatches = false; - const spot = { - top: MATCH_SCROLL_OFFSET_TOP, - left: MATCH_SCROLL_OFFSET_LEFT - }; - (0, _ui_utils.scrollIntoView)(element, spot, true); - } - - _reset() { - this._highlightMatches = false; - this._scrollMatches = false; - this._pdfDocument = null; - this._pageMatches = []; - this._pageMatchesLength = []; - this._state = null; - this._selected = { - pageIdx: -1, - matchIdx: -1 - }; - this._offset = { - pageIdx: null, - matchIdx: null, - wrapped: false - }; - this._extractTextPromises = []; - this._pageContents = []; - this._matchesCountTotal = 0; - this._pagesToSearch = null; - this._pendingFindMatches = Object.create(null); - this._resumePageIdx = null; - this._dirtyMatch = false; - clearTimeout(this._findTimeout); - this._findTimeout = null; - this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)(); - } - - get _query() { - if (this._state.query !== this._rawQuery) { - this._rawQuery = this._state.query; - this._normalizedQuery = normalize(this._state.query); - } - - return this._normalizedQuery; - } - - _shouldDirtyMatch(cmd, state) { - if (state.query !== this._state.query) { - return true; - } - - switch (cmd) { - case "findagain": - const pageNumber = this._selected.pageIdx + 1; - const linkService = this._linkService; - - if (pageNumber >= 1 && pageNumber <= linkService.pagesCount && pageNumber !== linkService.page && !linkService.isPageVisible(pageNumber)) { - return true; - } - - return false; - - case "findhighlightallchange": - return false; - } - - return true; - } - - _prepareMatches(matchesWithLength, matches, matchesLength) { - function isSubTerm(currentIndex) { - const currentElem = matchesWithLength[currentIndex]; - const nextElem = matchesWithLength[currentIndex + 1]; - - if (currentIndex < matchesWithLength.length - 1 && currentElem.match === nextElem.match) { - currentElem.skipped = true; - return true; - } - - for (let i = currentIndex - 1; i >= 0; i--) { - const prevElem = matchesWithLength[i]; - - if (prevElem.skipped) { - continue; - } - - if (prevElem.match + prevElem.matchLength < currentElem.match) { - break; - } - - if (prevElem.match + prevElem.matchLength >= currentElem.match + currentElem.matchLength) { - currentElem.skipped = true; - return true; - } - } - - return false; - } - - matchesWithLength.sort(function (a, b) { - return a.match === b.match ? a.matchLength - b.matchLength : a.match - b.match; - }); - - for (let i = 0, len = matchesWithLength.length; i < len; i++) { - if (isSubTerm(i)) { - continue; - } - - matches.push(matchesWithLength[i].match); - matchesLength.push(matchesWithLength[i].matchLength); - } - } - - _isEntireWord(content, startIdx, length) { - if (startIdx > 0) { - const first = content.charCodeAt(startIdx); - const limit = content.charCodeAt(startIdx - 1); - - if ((0, _pdf_find_utils.getCharacterType)(first) === (0, _pdf_find_utils.getCharacterType)(limit)) { - return false; - } - } - - const endIdx = startIdx + length - 1; - - if (endIdx < content.length - 1) { - const last = content.charCodeAt(endIdx); - const limit = content.charCodeAt(endIdx + 1); - - if ((0, _pdf_find_utils.getCharacterType)(last) === (0, _pdf_find_utils.getCharacterType)(limit)) { - return false; - } - } - - return true; - } - - _calculatePhraseMatch(query, pageIndex, pageContent, entireWord) { - const matches = []; - const queryLen = query.length; - let matchIdx = -queryLen; - - while (true) { - matchIdx = pageContent.indexOf(query, matchIdx + queryLen); - - if (matchIdx === -1) { - break; - } - - if (entireWord && !this._isEntireWord(pageContent, matchIdx, queryLen)) { - continue; - } - - matches.push(matchIdx); - } - - this._pageMatches[pageIndex] = matches; - } - - _calculateWordMatch(query, pageIndex, pageContent, entireWord) { - const matchesWithLength = []; - const queryArray = query.match(/\S+/g); - - for (let i = 0, len = queryArray.length; i < len; i++) { - const subquery = queryArray[i]; - const subqueryLen = subquery.length; - let matchIdx = -subqueryLen; - - while (true) { - matchIdx = pageContent.indexOf(subquery, matchIdx + subqueryLen); - - if (matchIdx === -1) { - break; - } - - if (entireWord && !this._isEntireWord(pageContent, matchIdx, subqueryLen)) { - continue; - } - - matchesWithLength.push({ - match: matchIdx, - matchLength: subqueryLen, - skipped: false - }); - } - } - - this._pageMatchesLength[pageIndex] = []; - this._pageMatches[pageIndex] = []; - - this._prepareMatches(matchesWithLength, this._pageMatches[pageIndex], this._pageMatchesLength[pageIndex]); - } - - _calculateMatch(pageIndex) { - let pageContent = this._pageContents[pageIndex]; - let query = this._query; - const { - caseSensitive, - entireWord, - phraseSearch - } = this._state; - - if (query.length === 0) { - return; - } - - if (!caseSensitive) { - pageContent = pageContent.toLowerCase(); - query = query.toLowerCase(); - } - - if (phraseSearch) { - this._calculatePhraseMatch(query, pageIndex, pageContent, entireWord); - } else { - this._calculateWordMatch(query, pageIndex, pageContent, entireWord); - } - - if (this._state.highlightAll) { - this._updatePage(pageIndex); - } - - if (this._resumePageIdx === pageIndex) { - this._resumePageIdx = null; - - this._nextPageMatch(); - } - - const pageMatchesCount = this._pageMatches[pageIndex].length; - - if (pageMatchesCount > 0) { - this._matchesCountTotal += pageMatchesCount; - - this._updateUIResultsCount(); - } - } - - _extractText() { - if (this._extractTextPromises.length > 0) { - return; - } - - let promise = Promise.resolve(); - - for (let i = 0, ii = this._linkService.pagesCount; i < ii; i++) { - const extractTextCapability = (0, _pdfjsLib.createPromiseCapability)(); - this._extractTextPromises[i] = extractTextCapability.promise; - promise = promise.then(() => { - return this._pdfDocument.getPage(i + 1).then(pdfPage => { - return pdfPage.getTextContent({ - normalizeWhitespace: true - }); - }).then(textContent => { - const textItems = textContent.items; - const strBuf = []; - - for (let j = 0, jj = textItems.length; j < jj; j++) { - strBuf.push(textItems[j].str); - } - - this._pageContents[i] = normalize(strBuf.join("")); - extractTextCapability.resolve(i); - }, reason => { - console.error(`Unable to get text content for page ${i + 1}`, reason); - this._pageContents[i] = ""; - extractTextCapability.resolve(i); - }); - }); - } - } - - _updatePage(index) { - if (this._scrollMatches && this._selected.pageIdx === index) { - this._linkService.page = index + 1; - } - - this._eventBus.dispatch("updatetextlayermatches", { - source: this, - pageIndex: index - }); - } - - _updateAllPages() { - this._eventBus.dispatch("updatetextlayermatches", { - source: this, - pageIndex: -1 - }); - } - - _nextMatch() { - const previous = this._state.findPrevious; - const currentPageIndex = this._linkService.page - 1; - const numPages = this._linkService.pagesCount; - this._highlightMatches = true; - - if (this._dirtyMatch) { - this._dirtyMatch = false; - this._selected.pageIdx = this._selected.matchIdx = -1; - this._offset.pageIdx = currentPageIndex; - this._offset.matchIdx = null; - this._offset.wrapped = false; - this._resumePageIdx = null; - this._pageMatches.length = 0; - this._pageMatchesLength.length = 0; - this._matchesCountTotal = 0; - - this._updateAllPages(); - - for (let i = 0; i < numPages; i++) { - if (this._pendingFindMatches[i] === true) { - continue; - } - - this._pendingFindMatches[i] = true; - - this._extractTextPromises[i].then(pageIdx => { - delete this._pendingFindMatches[pageIdx]; - - this._calculateMatch(pageIdx); - }); - } - } - - if (this._query === "") { - this._updateUIState(FindState.FOUND); - - return; - } - - if (this._resumePageIdx) { - return; - } - - const offset = this._offset; - this._pagesToSearch = numPages; - - if (offset.matchIdx !== null) { - const numPageMatches = this._pageMatches[offset.pageIdx].length; - - if (!previous && offset.matchIdx + 1 < numPageMatches || previous && offset.matchIdx > 0) { - offset.matchIdx = previous ? offset.matchIdx - 1 : offset.matchIdx + 1; - - this._updateMatch(true); - - return; - } - - this._advanceOffsetPage(previous); - } - - this._nextPageMatch(); - } - - _matchesReady(matches) { - const offset = this._offset; - const numMatches = matches.length; - const previous = this._state.findPrevious; - - if (numMatches) { - offset.matchIdx = previous ? numMatches - 1 : 0; - - this._updateMatch(true); - - return true; - } - - this._advanceOffsetPage(previous); - - if (offset.wrapped) { - offset.matchIdx = null; - - if (this._pagesToSearch < 0) { - this._updateMatch(false); - - return true; - } - } - - return false; - } - - _nextPageMatch() { - if (this._resumePageIdx !== null) { - console.error("There can only be one pending page."); - } - - let matches = null; - - do { - const pageIdx = this._offset.pageIdx; - matches = this._pageMatches[pageIdx]; - - if (!matches) { - this._resumePageIdx = pageIdx; - break; - } - } while (!this._matchesReady(matches)); - } - - _advanceOffsetPage(previous) { - const offset = this._offset; - const numPages = this._linkService.pagesCount; - offset.pageIdx = previous ? offset.pageIdx - 1 : offset.pageIdx + 1; - offset.matchIdx = null; - this._pagesToSearch--; - - if (offset.pageIdx >= numPages || offset.pageIdx < 0) { - offset.pageIdx = previous ? numPages - 1 : 0; - offset.wrapped = true; - } - } - - _updateMatch(found = false) { - let state = FindState.NOT_FOUND; - const wrapped = this._offset.wrapped; - this._offset.wrapped = false; - - if (found) { - const previousPage = this._selected.pageIdx; - this._selected.pageIdx = this._offset.pageIdx; - this._selected.matchIdx = this._offset.matchIdx; - state = wrapped ? FindState.WRAPPED : FindState.FOUND; - - if (previousPage !== -1 && previousPage !== this._selected.pageIdx) { - this._updatePage(previousPage); - } - } - - this._updateUIState(state, this._state.findPrevious); - - if (this._selected.pageIdx !== -1) { - this._scrollMatches = true; - - this._updatePage(this._selected.pageIdx); - } - } - - _onFindBarClose(evt) { - const pdfDocument = this._pdfDocument; - - this._firstPageCapability.promise.then(() => { - if (!this._pdfDocument || pdfDocument && this._pdfDocument !== pdfDocument) { - return; - } - - if (this._findTimeout) { - clearTimeout(this._findTimeout); - this._findTimeout = null; - } - - if (this._resumePageIdx) { - this._resumePageIdx = null; - this._dirtyMatch = true; - } - - this._updateUIState(FindState.FOUND); - - this._highlightMatches = false; - - this._updateAllPages(); - }); - } - - _requestMatchesCount() { - const { - pageIdx, - matchIdx - } = this._selected; - let current = 0, - total = this._matchesCountTotal; - - if (matchIdx !== -1) { - for (let i = 0; i < pageIdx; i++) { - current += this._pageMatches[i] && this._pageMatches[i].length || 0; - } - - current += matchIdx + 1; - } - - if (current < 1 || current > total) { - current = total = 0; - } - - return { - current, - total - }; - } - - _updateUIResultsCount() { - this._eventBus.dispatch("updatefindmatchescount", { - source: this, - matchesCount: this._requestMatchesCount() - }); - } - - _updateUIState(state, previous) { - this._eventBus.dispatch("updatefindcontrolstate", { - source: this, - state, - previous, - matchesCount: this._requestMatchesCount() - }); - } - -} - -exports.PDFFindController = PDFFindController; - -/***/ }), -/* 16 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.getCharacterType = getCharacterType; -exports.CharacterType = void 0; -const CharacterType = { - SPACE: 0, - ALPHA_LETTER: 1, - PUNCT: 2, - HAN_LETTER: 3, - KATAKANA_LETTER: 4, - HIRAGANA_LETTER: 5, - HALFWIDTH_KATAKANA_LETTER: 6, - THAI_LETTER: 7 -}; -exports.CharacterType = CharacterType; - -function isAlphabeticalScript(charCode) { - return charCode < 0x2e80; -} - -function isAscii(charCode) { - return (charCode & 0xff80) === 0; -} - -function isAsciiAlpha(charCode) { - return charCode >= 0x61 && charCode <= 0x7a || charCode >= 0x41 && charCode <= 0x5a; -} - -function isAsciiDigit(charCode) { - return charCode >= 0x30 && charCode <= 0x39; -} - -function isAsciiSpace(charCode) { - return charCode === 0x20 || charCode === 0x09 || charCode === 0x0d || charCode === 0x0a; -} - -function isHan(charCode) { - return charCode >= 0x3400 && charCode <= 0x9fff || charCode >= 0xf900 && charCode <= 0xfaff; -} - -function isKatakana(charCode) { - return charCode >= 0x30a0 && charCode <= 0x30ff; -} - -function isHiragana(charCode) { - return charCode >= 0x3040 && charCode <= 0x309f; -} - -function isHalfwidthKatakana(charCode) { - return charCode >= 0xff60 && charCode <= 0xff9f; -} - -function isThai(charCode) { - return (charCode & 0xff80) === 0x0e00; -} - -function getCharacterType(charCode) { - if (isAlphabeticalScript(charCode)) { - if (isAscii(charCode)) { - if (isAsciiSpace(charCode)) { - return CharacterType.SPACE; - } else if (isAsciiAlpha(charCode) || isAsciiDigit(charCode) || charCode === 0x5f) { - return CharacterType.ALPHA_LETTER; - } - - return CharacterType.PUNCT; - } else if (isThai(charCode)) { - return CharacterType.THAI_LETTER; - } else if (charCode === 0xa0) { - return CharacterType.SPACE; - } - - return CharacterType.ALPHA_LETTER; - } - - if (isHan(charCode)) { - return CharacterType.HAN_LETTER; - } else if (isKatakana(charCode)) { - return CharacterType.KATAKANA_LETTER; - } else if (isHiragana(charCode)) { - return CharacterType.HIRAGANA_LETTER; - } else if (isHalfwidthKatakana(charCode)) { - return CharacterType.HALFWIDTH_KATAKANA_LETTER; - } - - return CharacterType.ALPHA_LETTER; -} - -/***/ }), -/* 17 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.isDestHashesEqual = isDestHashesEqual; -exports.isDestArraysEqual = isDestArraysEqual; -exports.PDFHistory = void 0; - -var _ui_utils = __webpack_require__(2); - -const HASH_CHANGE_TIMEOUT = 1000; -const POSITION_UPDATED_THRESHOLD = 50; -const UPDATE_VIEWAREA_TIMEOUT = 1000; - -function getCurrentHash() { - return document.location.hash; -} - -class PDFHistory { - constructor({ - linkService, - eventBus - }) { - this.linkService = linkService; - this.eventBus = eventBus; - this._initialized = false; - this._fingerprint = ""; - this.reset(); - this._boundEvents = null; - this._isViewerInPresentationMode = false; - - this.eventBus._on("presentationmodechanged", evt => { - this._isViewerInPresentationMode = evt.active || evt.switchInProgress; - }); - - this.eventBus._on("pagesinit", () => { - this._isPagesLoaded = false; - - const onPagesLoaded = evt => { - this.eventBus._off("pagesloaded", onPagesLoaded); - - this._isPagesLoaded = !!evt.pagesCount; - }; - - this.eventBus._on("pagesloaded", onPagesLoaded); - }); - } - - initialize({ - fingerprint, - resetHistory = false, - updateUrl = false - }) { - if (!fingerprint || typeof fingerprint !== "string") { - console.error('PDFHistory.initialize: The "fingerprint" must be a non-empty string.'); - return; - } - - if (this._initialized) { - this.reset(); - } - - const reInitialized = this._fingerprint !== "" && this._fingerprint !== fingerprint; - this._fingerprint = fingerprint; - this._updateUrl = updateUrl === true; - this._initialized = true; - - this._bindEvents(); - - const state = window.history.state; - this._popStateInProgress = false; - this._blockHashChange = 0; - this._currentHash = getCurrentHash(); - this._numPositionUpdates = 0; - this._uid = this._maxUid = 0; - this._destination = null; - this._position = null; - - if (!this._isValidState(state, true) || resetHistory) { - const { - hash, - page, - rotation - } = this._parseCurrentHash(true); - - if (!hash || reInitialized || resetHistory) { - this._pushOrReplaceState(null, true); - - return; - } - - this._pushOrReplaceState({ - hash, - page, - rotation - }, true); - - return; - } - - const destination = state.destination; - - this._updateInternalState(destination, state.uid, true); - - if (this._uid > this._maxUid) { - this._maxUid = this._uid; - } - - if (destination.rotation !== undefined) { - this._initialRotation = destination.rotation; - } - - if (destination.dest) { - this._initialBookmark = JSON.stringify(destination.dest); - this._destination.page = null; - } else if (destination.hash) { - this._initialBookmark = destination.hash; - } else if (destination.page) { - this._initialBookmark = `page=${destination.page}`; - } - } - - reset() { - if (this._initialized) { - this._pageHide(); - - this._initialized = false; - - this._unbindEvents(); - } - - if (this._updateViewareaTimeout) { - clearTimeout(this._updateViewareaTimeout); - this._updateViewareaTimeout = null; - } - - this._initialBookmark = null; - this._initialRotation = null; - } - - push({ - namedDest = null, - explicitDest, - pageNumber - }) { - if (!this._initialized) { - return; - } - - if (namedDest && typeof namedDest !== "string") { - console.error("PDFHistory.push: " + `"${namedDest}" is not a valid namedDest parameter.`); - return; - } else if (!Array.isArray(explicitDest)) { - console.error("PDFHistory.push: " + `"${explicitDest}" is not a valid explicitDest parameter.`); - return; - } else if (!(Number.isInteger(pageNumber) && pageNumber > 0 && pageNumber <= this.linkService.pagesCount)) { - if (pageNumber !== null || this._destination) { - console.error("PDFHistory.push: " + `"${pageNumber}" is not a valid pageNumber parameter.`); - return; - } - } - - const hash = namedDest || JSON.stringify(explicitDest); - - if (!hash) { - return; - } - - let forceReplace = false; - - if (this._destination && (isDestHashesEqual(this._destination.hash, hash) || isDestArraysEqual(this._destination.dest, explicitDest))) { - if (this._destination.page) { - return; - } - - forceReplace = true; - } - - if (this._popStateInProgress && !forceReplace) { - return; - } - - this._pushOrReplaceState({ - dest: explicitDest, - hash, - page: pageNumber, - rotation: this.linkService.rotation - }, forceReplace); - - if (!this._popStateInProgress) { - this._popStateInProgress = true; - Promise.resolve().then(() => { - this._popStateInProgress = false; - }); - } - } - - pushCurrentPosition() { - if (!this._initialized || this._popStateInProgress) { - return; - } - - this._tryPushCurrentPosition(); - } - - back() { - if (!this._initialized || this._popStateInProgress) { - return; - } - - const state = window.history.state; - - if (this._isValidState(state) && state.uid > 0) { - window.history.back(); - } - } - - forward() { - if (!this._initialized || this._popStateInProgress) { - return; - } - - const state = window.history.state; - - if (this._isValidState(state) && state.uid < this._maxUid) { - window.history.forward(); - } - } - - get popStateInProgress() { - return this._initialized && (this._popStateInProgress || this._blockHashChange > 0); - } - - get initialBookmark() { - return this._initialized ? this._initialBookmark : null; - } - - get initialRotation() { - return this._initialized ? this._initialRotation : null; - } - - _pushOrReplaceState(destination, forceReplace = false) { - const shouldReplace = forceReplace || !this._destination; - const newState = { - fingerprint: this._fingerprint, - uid: shouldReplace ? this._uid : this._uid + 1, - destination - }; - - this._updateInternalState(destination, newState.uid); - - let newUrl; - - if (this._updateUrl && destination && destination.hash) { - const baseUrl = document.location.href.split("#")[0]; - - if (!baseUrl.startsWith("file://")) { - newUrl = `${baseUrl}#${destination.hash}`; - } - } - - if (shouldReplace) { - window.history.replaceState(newState, "", newUrl); - } else { - this._maxUid = this._uid; - window.history.pushState(newState, "", newUrl); - } - } - - _tryPushCurrentPosition(temporary = false) { - if (!this._position) { - return; - } - - let position = this._position; - - if (temporary) { - position = Object.assign(Object.create(null), this._position); - position.temporary = true; - } - - if (!this._destination) { - this._pushOrReplaceState(position); - - return; - } - - if (this._destination.temporary) { - this._pushOrReplaceState(position, true); - - return; - } - - if (this._destination.hash === position.hash) { - return; - } - - if (!this._destination.page && (POSITION_UPDATED_THRESHOLD <= 0 || this._numPositionUpdates <= POSITION_UPDATED_THRESHOLD)) { - return; - } - - let forceReplace = false; - - if (this._destination.page >= position.first && this._destination.page <= position.page) { - if (this._destination.dest || !this._destination.first) { - return; - } - - forceReplace = true; - } - - this._pushOrReplaceState(position, forceReplace); - } - - _isValidState(state, checkReload = false) { - if (!state) { - return false; - } - - if (state.fingerprint !== this._fingerprint) { - if (checkReload) { - if (typeof state.fingerprint !== "string" || state.fingerprint.length !== this._fingerprint.length) { - return false; - } - - const [perfEntry] = performance.getEntriesByType("navigation"); - - if (!perfEntry || perfEntry.type !== "reload") { - return false; - } - } else { - return false; - } - } - - if (!Number.isInteger(state.uid) || state.uid < 0) { - return false; - } - - if (state.destination === null || typeof state.destination !== "object") { - return false; - } - - return true; - } - - _updateInternalState(destination, uid, removeTemporary = false) { - if (this._updateViewareaTimeout) { - clearTimeout(this._updateViewareaTimeout); - this._updateViewareaTimeout = null; - } - - if (removeTemporary && destination && destination.temporary) { - delete destination.temporary; - } - - this._destination = destination; - this._uid = uid; - this._numPositionUpdates = 0; - } - - _parseCurrentHash(checkNameddest = false) { - const hash = unescape(getCurrentHash()).substring(1); - const params = (0, _ui_utils.parseQueryString)(hash); - const nameddest = params.nameddest || ""; - let page = params.page | 0; - - if (!(Number.isInteger(page) && page > 0 && page <= this.linkService.pagesCount) || checkNameddest && nameddest.length > 0) { - page = null; - } - - return { - hash, - page, - rotation: this.linkService.rotation - }; - } - - _updateViewarea({ - location - }) { - if (this._updateViewareaTimeout) { - clearTimeout(this._updateViewareaTimeout); - this._updateViewareaTimeout = null; - } - - this._position = { - hash: this._isViewerInPresentationMode ? `page=${location.pageNumber}` : location.pdfOpenParams.substring(1), - page: this.linkService.page, - first: location.pageNumber, - rotation: location.rotation - }; - - if (this._popStateInProgress) { - return; - } - - if (POSITION_UPDATED_THRESHOLD > 0 && this._isPagesLoaded && this._destination && !this._destination.page) { - this._numPositionUpdates++; - } - - if (UPDATE_VIEWAREA_TIMEOUT > 0) { - this._updateViewareaTimeout = setTimeout(() => { - if (!this._popStateInProgress) { - this._tryPushCurrentPosition(true); - } - - this._updateViewareaTimeout = null; - }, UPDATE_VIEWAREA_TIMEOUT); - } - } - - _popState({ - state - }) { - const newHash = getCurrentHash(), - hashChanged = this._currentHash !== newHash; - this._currentHash = newHash; - - if (!state) { - this._uid++; - - const { - hash, - page, - rotation - } = this._parseCurrentHash(); - - this._pushOrReplaceState({ - hash, - page, - rotation - }, true); - - return; - } - - if (!this._isValidState(state)) { - return; - } - - this._popStateInProgress = true; - - if (hashChanged) { - this._blockHashChange++; - (0, _ui_utils.waitOnEventOrTimeout)({ - target: window, - name: "hashchange", - delay: HASH_CHANGE_TIMEOUT - }).then(() => { - this._blockHashChange--; - }); - } - - const destination = state.destination; - - this._updateInternalState(destination, state.uid, true); - - if (this._uid > this._maxUid) { - this._maxUid = this._uid; - } - - if ((0, _ui_utils.isValidRotation)(destination.rotation)) { - this.linkService.rotation = destination.rotation; - } - - if (destination.dest) { - this.linkService.navigateTo(destination.dest); - } else if (destination.hash) { - this.linkService.setHash(destination.hash); - } else if (destination.page) { - this.linkService.page = destination.page; - } - - Promise.resolve().then(() => { - this._popStateInProgress = false; - }); - } - - _pageHide() { - if (!this._destination || this._destination.temporary) { - this._tryPushCurrentPosition(); - } - } - - _bindEvents() { - if (this._boundEvents) { - return; - } - - this._boundEvents = { - updateViewarea: this._updateViewarea.bind(this), - popState: this._popState.bind(this), - pageHide: this._pageHide.bind(this) - }; - - this.eventBus._on("updateviewarea", this._boundEvents.updateViewarea); - - window.addEventListener("popstate", this._boundEvents.popState); - window.addEventListener("pagehide", this._boundEvents.pageHide); - } - - _unbindEvents() { - if (!this._boundEvents) { - return; - } - - this.eventBus._off("updateviewarea", this._boundEvents.updateViewarea); - - window.removeEventListener("popstate", this._boundEvents.popState); - window.removeEventListener("pagehide", this._boundEvents.pageHide); - this._boundEvents = null; - } - -} - -exports.PDFHistory = PDFHistory; - -function isDestHashesEqual(destHash, pushHash) { - if (typeof destHash !== "string" || typeof pushHash !== "string") { - return false; - } - - if (destHash === pushHash) { - return true; - } - - const { - nameddest - } = (0, _ui_utils.parseQueryString)(destHash); - - if (nameddest === pushHash) { - return true; - } - - return false; -} - -function isDestArraysEqual(firstDest, secondDest) { - function isEntryEqual(first, second) { - if (typeof first !== typeof second) { - return false; - } - - if (Array.isArray(first) || Array.isArray(second)) { - return false; - } - - if (first !== null && typeof first === "object" && second !== null) { - if (Object.keys(first).length !== Object.keys(second).length) { - return false; - } - - for (const key in first) { - if (!isEntryEqual(first[key], second[key])) { - return false; - } - } - - return true; - } - - return first === second || Number.isNaN(first) && Number.isNaN(second); - } - - if (!(Array.isArray(firstDest) && Array.isArray(secondDest))) { - return false; - } - - if (firstDest.length !== secondDest.length) { - return false; - } - - for (let i = 0, ii = firstDest.length; i < ii; i++) { - if (!isEntryEqual(firstDest[i], secondDest[i])) { - return false; - } - } - - return true; -} - -/***/ }), -/* 18 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.SimpleLinkService = exports.PDFLinkService = void 0; - -var _ui_utils = __webpack_require__(2); - -class PDFLinkService { - constructor({ - eventBus, - externalLinkTarget = null, - externalLinkRel = null, - externalLinkEnabled = true, - ignoreDestinationZoom = false - } = {}) { - this.eventBus = eventBus; - this.externalLinkTarget = externalLinkTarget; - this.externalLinkRel = externalLinkRel; - this.externalLinkEnabled = externalLinkEnabled; - this._ignoreDestinationZoom = ignoreDestinationZoom; - this.baseUrl = null; - this.pdfDocument = null; - this.pdfViewer = null; - this.pdfHistory = null; - this._pagesRefCache = null; - } - - setDocument(pdfDocument, baseUrl = null) { - this.baseUrl = baseUrl; - this.pdfDocument = pdfDocument; - this._pagesRefCache = Object.create(null); - } - - setViewer(pdfViewer) { - this.pdfViewer = pdfViewer; - } - - setHistory(pdfHistory) { - this.pdfHistory = pdfHistory; - } - - get pagesCount() { - return this.pdfDocument ? this.pdfDocument.numPages : 0; - } - - get page() { - return this.pdfViewer.currentPageNumber; - } - - set page(value) { - this.pdfViewer.currentPageNumber = value; - } - - get rotation() { - return this.pdfViewer.pagesRotation; - } - - set rotation(value) { - this.pdfViewer.pagesRotation = value; - } - - navigateTo(dest) { - const goToDestination = ({ - namedDest, - explicitDest - }) => { - const destRef = explicitDest[0]; - let pageNumber; - - if (destRef instanceof Object) { - pageNumber = this._cachedPageNumber(destRef); - - if (pageNumber === null) { - this.pdfDocument.getPageIndex(destRef).then(pageIndex => { - this.cachePageRef(pageIndex + 1, destRef); - goToDestination({ - namedDest, - explicitDest - }); - }).catch(() => { - console.error(`PDFLinkService.navigateTo: "${destRef}" is not ` + `a valid page reference, for dest="${dest}".`); - }); - return; - } - } else if (Number.isInteger(destRef)) { - pageNumber = destRef + 1; - } else { - console.error(`PDFLinkService.navigateTo: "${destRef}" is not ` + `a valid destination reference, for dest="${dest}".`); - return; - } - - if (!pageNumber || pageNumber < 1 || pageNumber > this.pagesCount) { - console.error(`PDFLinkService.navigateTo: "${pageNumber}" is not ` + `a valid page number, for dest="${dest}".`); - return; - } - - if (this.pdfHistory) { - this.pdfHistory.pushCurrentPosition(); - this.pdfHistory.push({ - namedDest, - explicitDest, - pageNumber - }); - } - - this.pdfViewer.scrollPageIntoView({ - pageNumber, - destArray: explicitDest, - ignoreDestinationZoom: this._ignoreDestinationZoom - }); - }; - - new Promise((resolve, reject) => { - if (typeof dest === "string") { - this.pdfDocument.getDestination(dest).then(destArray => { - resolve({ - namedDest: dest, - explicitDest: destArray - }); - }); - return; - } - - resolve({ - namedDest: "", - explicitDest: dest - }); - }).then(data => { - if (!Array.isArray(data.explicitDest)) { - console.error(`PDFLinkService.navigateTo: "${data.explicitDest}" is` + ` not a valid destination array, for dest="${dest}".`); - return; - } - - goToDestination(data); - }); - } - - getDestinationHash(dest) { - if (typeof dest === "string") { - return this.getAnchorUrl("#" + escape(dest)); - } - - if (Array.isArray(dest)) { - const str = JSON.stringify(dest); - return this.getAnchorUrl("#" + escape(str)); - } - - return this.getAnchorUrl(""); - } - - getAnchorUrl(anchor) { - return (this.baseUrl || "") + anchor; - } - - setHash(hash) { - let pageNumber, dest; - - if (hash.includes("=")) { - const params = (0, _ui_utils.parseQueryString)(hash); - - if ("search" in params) { - this.eventBus.dispatch("findfromurlhash", { - source: this, - query: params.search.replace(/"/g, ""), - phraseSearch: params.phrase === "true" - }); - } - - if ("page" in params) { - pageNumber = params.page | 0 || 1; - } - - if ("zoom" in params) { - const zoomArgs = params.zoom.split(","); - const zoomArg = zoomArgs[0]; - const zoomArgNumber = parseFloat(zoomArg); - - if (!zoomArg.includes("Fit")) { - dest = [null, { - name: "XYZ" - }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null, zoomArgs.length > 2 ? zoomArgs[2] | 0 : null, zoomArgNumber ? zoomArgNumber / 100 : zoomArg]; - } else { - if (zoomArg === "Fit" || zoomArg === "FitB") { - dest = [null, { - name: zoomArg - }]; - } else if (zoomArg === "FitH" || zoomArg === "FitBH" || zoomArg === "FitV" || zoomArg === "FitBV") { - dest = [null, { - name: zoomArg - }, zoomArgs.length > 1 ? zoomArgs[1] | 0 : null]; - } else if (zoomArg === "FitR") { - if (zoomArgs.length !== 5) { - console.error('PDFLinkService.setHash: Not enough parameters for "FitR".'); - } else { - dest = [null, { - name: zoomArg - }, zoomArgs[1] | 0, zoomArgs[2] | 0, zoomArgs[3] | 0, zoomArgs[4] | 0]; - } - } else { - console.error(`PDFLinkService.setHash: "${zoomArg}" is not ` + "a valid zoom value."); - } - } - } - - if (dest) { - this.pdfViewer.scrollPageIntoView({ - pageNumber: pageNumber || this.page, - destArray: dest, - allowNegativeOffset: true - }); - } else if (pageNumber) { - this.page = pageNumber; - } - - if ("pagemode" in params) { - this.eventBus.dispatch("pagemode", { - source: this, - mode: params.pagemode - }); - } - - if ("nameddest" in params) { - this.navigateTo(params.nameddest); - } - } else { - dest = unescape(hash); - - try { - dest = JSON.parse(dest); - - if (!Array.isArray(dest)) { - dest = dest.toString(); - } - } catch (ex) {} - - if (typeof dest === "string" || isValidExplicitDestination(dest)) { - this.navigateTo(dest); - return; - } - - console.error(`PDFLinkService.setHash: "${unescape(hash)}" is not ` + "a valid destination."); - } - } - - executeNamedAction(action) { - switch (action) { - case "GoBack": - if (this.pdfHistory) { - this.pdfHistory.back(); - } - - break; - - case "GoForward": - if (this.pdfHistory) { - this.pdfHistory.forward(); - } - - break; - - case "NextPage": - if (this.page < this.pagesCount) { - this.page++; - } - - break; - - case "PrevPage": - if (this.page > 1) { - this.page--; - } - - break; - - case "LastPage": - this.page = this.pagesCount; - break; - - case "FirstPage": - this.page = 1; - break; - - default: - break; - } - - this.eventBus.dispatch("namedaction", { - source: this, - action - }); - } - - cachePageRef(pageNum, pageRef) { - if (!pageRef) { - return; - } - - const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`; - this._pagesRefCache[refStr] = pageNum; - } - - _cachedPageNumber(pageRef) { - const refStr = pageRef.gen === 0 ? `${pageRef.num}R` : `${pageRef.num}R${pageRef.gen}`; - return this._pagesRefCache && this._pagesRefCache[refStr] || null; - } - - isPageVisible(pageNumber) { - return this.pdfViewer.isPageVisible(pageNumber); - } - -} - -exports.PDFLinkService = PDFLinkService; - -function isValidExplicitDestination(dest) { - if (!Array.isArray(dest)) { - return false; - } - - const destLength = dest.length; - - if (destLength < 2) { - return false; - } - - const page = dest[0]; - - if (!(typeof page === "object" && Number.isInteger(page.num) && Number.isInteger(page.gen)) && !(Number.isInteger(page) && page >= 0)) { - return false; - } - - const zoom = dest[1]; - - if (!(typeof zoom === "object" && typeof zoom.name === "string")) { - return false; - } - - let allowNull = true; - - switch (zoom.name) { - case "XYZ": - if (destLength !== 5) { - return false; - } - - break; - - case "Fit": - case "FitB": - return destLength === 2; - - case "FitH": - case "FitBH": - case "FitV": - case "FitBV": - if (destLength !== 3) { - return false; - } - - break; - - case "FitR": - if (destLength !== 6) { - return false; - } - - allowNull = false; - break; - - default: - return false; - } - - for (let i = 2; i < destLength; i++) { - const param = dest[i]; - - if (!(typeof param === "number" || allowNull && param === null)) { - return false; - } - } - - return true; -} - -class SimpleLinkService { - constructor() { - this.externalLinkTarget = null; - this.externalLinkRel = null; - this.externalLinkEnabled = true; - this._ignoreDestinationZoom = false; - } - - get pagesCount() { - return 0; - } - - get page() { - return 0; - } - - set page(value) {} - - get rotation() { - return 0; - } - - set rotation(value) {} - - navigateTo(dest) {} - - getDestinationHash(dest) { - return "#"; - } - - getAnchorUrl(hash) { - return "#"; - } - - setHash(hash) {} - - executeNamedAction(action) {} - - cachePageRef(pageNum, pageRef) {} - - isPageVisible(pageNumber) { - return true; - } - -} - -exports.SimpleLinkService = SimpleLinkService; - -/***/ }), -/* 19 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFOutlineViewer = void 0; - -var _pdfjsLib = __webpack_require__(5); - -const DEFAULT_TITLE = "\u2013"; - -class PDFOutlineViewer { - constructor({ - container, - linkService, - eventBus - }) { - this.container = container; - this.linkService = linkService; - this.eventBus = eventBus; - this.reset(); - - eventBus._on("toggleoutlinetree", this.toggleOutlineTree.bind(this)); - } - - reset() { - this.outline = null; - this.lastToggleIsShow = true; - this.container.textContent = ""; - this.container.classList.remove("outlineWithDeepNesting"); - } - - _dispatchEvent(outlineCount) { - this.eventBus.dispatch("outlineloaded", { - source: this, - outlineCount - }); - } - - _bindLink(element, { - url, - newWindow, - dest - }) { - const { - linkService - } = this; - - if (url) { - (0, _pdfjsLib.addLinkAttributes)(element, { - url, - target: newWindow ? _pdfjsLib.LinkTarget.BLANK : linkService.externalLinkTarget, - rel: linkService.externalLinkRel, - enabled: linkService.externalLinkEnabled - }); - return; - } - - element.href = linkService.getDestinationHash(dest); - - element.onclick = () => { - if (dest) { - linkService.navigateTo(dest); - } - - return false; - }; - } - - _setStyles(element, { - bold, - italic - }) { - if (bold) { - element.style.fontWeight = "bold"; - } - - if (italic) { - element.style.fontStyle = "italic"; - } - } - - _addToggleButton(div, { - count, - items - }) { - const toggler = document.createElement("div"); - toggler.className = "outlineItemToggler"; - - if (count < 0 && Math.abs(count) === items.length) { - toggler.classList.add("outlineItemsHidden"); - } - - toggler.onclick = evt => { - evt.stopPropagation(); - toggler.classList.toggle("outlineItemsHidden"); - - if (evt.shiftKey) { - const shouldShowAll = !toggler.classList.contains("outlineItemsHidden"); - - this._toggleOutlineItem(div, shouldShowAll); - } - }; - - div.insertBefore(toggler, div.firstChild); - } - - _toggleOutlineItem(root, show = false) { - this.lastToggleIsShow = show; - - for (const toggler of root.querySelectorAll(".outlineItemToggler")) { - toggler.classList.toggle("outlineItemsHidden", !show); - } - } - - toggleOutlineTree() { - if (!this.outline) { - return; - } - - this._toggleOutlineItem(this.container, !this.lastToggleIsShow); - } - - render({ - outline - }) { - let outlineCount = 0; - - if (this.outline) { - this.reset(); - } - - this.outline = outline || null; - - if (!outline) { - this._dispatchEvent(outlineCount); - - return; - } - - const fragment = document.createDocumentFragment(); - const queue = [{ - parent: fragment, - items: this.outline - }]; - let hasAnyNesting = false; - - while (queue.length > 0) { - const levelData = queue.shift(); - - for (const item of levelData.items) { - const div = document.createElement("div"); - div.className = "outlineItem"; - const element = document.createElement("a"); - - this._bindLink(element, item); - - this._setStyles(element, item); - - element.textContent = (0, _pdfjsLib.removeNullCharacters)(item.title) || DEFAULT_TITLE; - div.appendChild(element); - - if (item.items.length > 0) { - hasAnyNesting = true; - - this._addToggleButton(div, item); - - const itemsDiv = document.createElement("div"); - itemsDiv.className = "outlineItems"; - div.appendChild(itemsDiv); - queue.push({ - parent: itemsDiv, - items: item.items - }); - } - - levelData.parent.appendChild(div); - outlineCount++; - } - } - - if (hasAnyNesting) { - this.container.classList.add("outlineWithDeepNesting"); - this.lastToggleIsShow = fragment.querySelectorAll(".outlineItemsHidden").length === 0; - } - - this.container.appendChild(fragment); - - this._dispatchEvent(outlineCount); - } - -} - -exports.PDFOutlineViewer = PDFOutlineViewer; - -/***/ }), -/* 20 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFPresentationMode = void 0; - -var _ui_utils = __webpack_require__(2); - -const DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS = 1500; -const DELAY_BEFORE_HIDING_CONTROLS = 3000; -const ACTIVE_SELECTOR = "pdfPresentationMode"; -const CONTROLS_SELECTOR = "pdfPresentationModeControls"; -const MOUSE_SCROLL_COOLDOWN_TIME = 50; -const PAGE_SWITCH_THRESHOLD = 0.1; -const SWIPE_MIN_DISTANCE_THRESHOLD = 50; -const SWIPE_ANGLE_THRESHOLD = Math.PI / 6; - -class PDFPresentationMode { - constructor({ - container, - pdfViewer, - eventBus, - contextMenuItems = null - }) { - this.container = container; - this.pdfViewer = pdfViewer; - this.eventBus = eventBus; - this.active = false; - this.args = null; - this.contextMenuOpen = false; - this.mouseScrollTimeStamp = 0; - this.mouseScrollDelta = 0; - this.touchSwipeState = null; - - if (contextMenuItems) { - contextMenuItems.contextFirstPage.addEventListener("click", () => { - this.contextMenuOpen = false; - this.eventBus.dispatch("firstpage", { - source: this - }); - }); - contextMenuItems.contextLastPage.addEventListener("click", () => { - this.contextMenuOpen = false; - this.eventBus.dispatch("lastpage", { - source: this - }); - }); - contextMenuItems.contextPageRotateCw.addEventListener("click", () => { - this.contextMenuOpen = false; - this.eventBus.dispatch("rotatecw", { - source: this - }); - }); - contextMenuItems.contextPageRotateCcw.addEventListener("click", () => { - this.contextMenuOpen = false; - this.eventBus.dispatch("rotateccw", { - source: this - }); - }); - } - } - - request() { - if (this.switchInProgress || this.active || !this.pdfViewer.pagesCount) { - return false; - } - - this._addFullscreenChangeListeners(); - - this._setSwitchInProgress(); - - this._notifyStateChange(); - - if (this.container.requestFullscreen) { - this.container.requestFullscreen(); - } else if (this.container.mozRequestFullScreen) { - this.container.mozRequestFullScreen(); - } else if (this.container.webkitRequestFullscreen) { - this.container.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); - } else if (this.container.msRequestFullscreen) { - this.container.msRequestFullscreen(); - } else { - return false; - } - - this.args = { - page: this.pdfViewer.currentPageNumber, - previousScale: this.pdfViewer.currentScaleValue - }; - return true; - } - - _mouseWheel(evt) { - if (!this.active) { - return; - } - - evt.preventDefault(); - const delta = (0, _ui_utils.normalizeWheelEventDelta)(evt); - const currentTime = new Date().getTime(); - const storedTime = this.mouseScrollTimeStamp; - - if (currentTime > storedTime && currentTime - storedTime < MOUSE_SCROLL_COOLDOWN_TIME) { - return; - } - - if (this.mouseScrollDelta > 0 && delta < 0 || this.mouseScrollDelta < 0 && delta > 0) { - this._resetMouseScrollState(); - } - - this.mouseScrollDelta += delta; - - if (Math.abs(this.mouseScrollDelta) >= PAGE_SWITCH_THRESHOLD) { - const totalDelta = this.mouseScrollDelta; - - this._resetMouseScrollState(); - - const success = totalDelta > 0 ? this._goToPreviousPage() : this._goToNextPage(); - - if (success) { - this.mouseScrollTimeStamp = currentTime; - } - } - } - - get isFullscreen() { - return !!(document.fullscreenElement || document.mozFullScreen || document.webkitIsFullScreen || document.msFullscreenElement); - } - - _goToPreviousPage() { - const page = this.pdfViewer.currentPageNumber; - - if (page <= 1) { - return false; - } - - this.pdfViewer.currentPageNumber = page - 1; - return true; - } - - _goToNextPage() { - const page = this.pdfViewer.currentPageNumber; - - if (page >= this.pdfViewer.pagesCount) { - return false; - } - - this.pdfViewer.currentPageNumber = page + 1; - return true; - } - - _notifyStateChange() { - this.eventBus.dispatch("presentationmodechanged", { - source: this, - active: this.active, - switchInProgress: !!this.switchInProgress - }); - } - - _setSwitchInProgress() { - if (this.switchInProgress) { - clearTimeout(this.switchInProgress); - } - - this.switchInProgress = setTimeout(() => { - this._removeFullscreenChangeListeners(); - - delete this.switchInProgress; - - this._notifyStateChange(); - }, DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS); - } - - _resetSwitchInProgress() { - if (this.switchInProgress) { - clearTimeout(this.switchInProgress); - delete this.switchInProgress; - } - } - - _enter() { - this.active = true; - - this._resetSwitchInProgress(); - - this._notifyStateChange(); - - this.container.classList.add(ACTIVE_SELECTOR); - setTimeout(() => { - this.pdfViewer.currentPageNumber = this.args.page; - this.pdfViewer.currentScaleValue = "page-fit"; - }, 0); - - this._addWindowListeners(); - - this._showControls(); - - this.contextMenuOpen = false; - this.container.setAttribute("contextmenu", "viewerContextMenu"); - window.getSelection().removeAllRanges(); - } - - _exit() { - const page = this.pdfViewer.currentPageNumber; - this.container.classList.remove(ACTIVE_SELECTOR); - setTimeout(() => { - this.active = false; - - this._removeFullscreenChangeListeners(); - - this._notifyStateChange(); - - this.pdfViewer.currentScaleValue = this.args.previousScale; - this.pdfViewer.currentPageNumber = page; - this.args = null; - }, 0); - - this._removeWindowListeners(); - - this._hideControls(); - - this._resetMouseScrollState(); - - this.container.removeAttribute("contextmenu"); - this.contextMenuOpen = false; - } - - _mouseDown(evt) { - if (this.contextMenuOpen) { - this.contextMenuOpen = false; - evt.preventDefault(); - return; - } - - if (evt.button === 0) { - const isInternalLink = evt.target.href && evt.target.classList.contains("internalLink"); - - if (!isInternalLink) { - evt.preventDefault(); - - if (evt.shiftKey) { - this._goToPreviousPage(); - } else { - this._goToNextPage(); - } - } - } - } - - _contextMenu() { - this.contextMenuOpen = true; - } - - _showControls() { - if (this.controlsTimeout) { - clearTimeout(this.controlsTimeout); - } else { - this.container.classList.add(CONTROLS_SELECTOR); - } - - this.controlsTimeout = setTimeout(() => { - this.container.classList.remove(CONTROLS_SELECTOR); - delete this.controlsTimeout; - }, DELAY_BEFORE_HIDING_CONTROLS); - } - - _hideControls() { - if (!this.controlsTimeout) { - return; - } - - clearTimeout(this.controlsTimeout); - this.container.classList.remove(CONTROLS_SELECTOR); - delete this.controlsTimeout; - } - - _resetMouseScrollState() { - this.mouseScrollTimeStamp = 0; - this.mouseScrollDelta = 0; - } - - _touchSwipe(evt) { - if (!this.active) { - return; - } - - if (evt.touches.length > 1) { - this.touchSwipeState = null; - return; - } - - switch (evt.type) { - case "touchstart": - this.touchSwipeState = { - startX: evt.touches[0].pageX, - startY: evt.touches[0].pageY, - endX: evt.touches[0].pageX, - endY: evt.touches[0].pageY - }; - break; - - case "touchmove": - if (this.touchSwipeState === null) { - return; - } - - this.touchSwipeState.endX = evt.touches[0].pageX; - this.touchSwipeState.endY = evt.touches[0].pageY; - evt.preventDefault(); - break; - - case "touchend": - if (this.touchSwipeState === null) { - return; - } - - let delta = 0; - const dx = this.touchSwipeState.endX - this.touchSwipeState.startX; - const dy = this.touchSwipeState.endY - this.touchSwipeState.startY; - const absAngle = Math.abs(Math.atan2(dy, dx)); - - if (Math.abs(dx) > SWIPE_MIN_DISTANCE_THRESHOLD && (absAngle <= SWIPE_ANGLE_THRESHOLD || absAngle >= Math.PI - SWIPE_ANGLE_THRESHOLD)) { - delta = dx; - } else if (Math.abs(dy) > SWIPE_MIN_DISTANCE_THRESHOLD && Math.abs(absAngle - Math.PI / 2) <= SWIPE_ANGLE_THRESHOLD) { - delta = dy; - } - - if (delta > 0) { - this._goToPreviousPage(); - } else if (delta < 0) { - this._goToNextPage(); - } - - break; - } - } - - _addWindowListeners() { - this.showControlsBind = this._showControls.bind(this); - this.mouseDownBind = this._mouseDown.bind(this); - this.mouseWheelBind = this._mouseWheel.bind(this); - this.resetMouseScrollStateBind = this._resetMouseScrollState.bind(this); - this.contextMenuBind = this._contextMenu.bind(this); - this.touchSwipeBind = this._touchSwipe.bind(this); - window.addEventListener("mousemove", this.showControlsBind); - window.addEventListener("mousedown", this.mouseDownBind); - window.addEventListener("wheel", this.mouseWheelBind, { - passive: false - }); - window.addEventListener("keydown", this.resetMouseScrollStateBind); - window.addEventListener("contextmenu", this.contextMenuBind); - window.addEventListener("touchstart", this.touchSwipeBind); - window.addEventListener("touchmove", this.touchSwipeBind); - window.addEventListener("touchend", this.touchSwipeBind); - } - - _removeWindowListeners() { - window.removeEventListener("mousemove", this.showControlsBind); - window.removeEventListener("mousedown", this.mouseDownBind); - window.removeEventListener("wheel", this.mouseWheelBind, { - passive: false - }); - window.removeEventListener("keydown", this.resetMouseScrollStateBind); - window.removeEventListener("contextmenu", this.contextMenuBind); - window.removeEventListener("touchstart", this.touchSwipeBind); - window.removeEventListener("touchmove", this.touchSwipeBind); - window.removeEventListener("touchend", this.touchSwipeBind); - delete this.showControlsBind; - delete this.mouseDownBind; - delete this.mouseWheelBind; - delete this.resetMouseScrollStateBind; - delete this.contextMenuBind; - delete this.touchSwipeBind; - } - - _fullscreenChange() { - if (this.isFullscreen) { - this._enter(); - } else { - this._exit(); - } - } - - _addFullscreenChangeListeners() { - this.fullscreenChangeBind = this._fullscreenChange.bind(this); - window.addEventListener("fullscreenchange", this.fullscreenChangeBind); - window.addEventListener("mozfullscreenchange", this.fullscreenChangeBind); - window.addEventListener("webkitfullscreenchange", this.fullscreenChangeBind); - window.addEventListener("MSFullscreenChange", this.fullscreenChangeBind); - } - - _removeFullscreenChangeListeners() { - window.removeEventListener("fullscreenchange", this.fullscreenChangeBind); - window.removeEventListener("mozfullscreenchange", this.fullscreenChangeBind); - window.removeEventListener("webkitfullscreenchange", this.fullscreenChangeBind); - window.removeEventListener("MSFullscreenChange", this.fullscreenChangeBind); - delete this.fullscreenChangeBind; - } - -} - -exports.PDFPresentationMode = PDFPresentationMode; - -/***/ }), -/* 21 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFSidebarResizer = void 0; - -var _ui_utils = __webpack_require__(2); - -const SIDEBAR_WIDTH_VAR = "--sidebar-width"; -const SIDEBAR_MIN_WIDTH = 200; -const SIDEBAR_RESIZING_CLASS = "sidebarResizing"; - -class PDFSidebarResizer { - constructor(options, eventBus, l10n = _ui_utils.NullL10n) { - this.enabled = false; - this.isRTL = false; - this.sidebarOpen = false; - this.doc = document.documentElement; - this._width = null; - this._outerContainerWidth = null; - this._boundEvents = Object.create(null); - this.outerContainer = options.outerContainer; - this.resizer = options.resizer; - this.eventBus = eventBus; - this.l10n = l10n; - - if (typeof CSS === "undefined" || typeof CSS.supports !== "function" || !CSS.supports(SIDEBAR_WIDTH_VAR, `calc(-1 * ${SIDEBAR_MIN_WIDTH}px)`)) { - console.warn("PDFSidebarResizer: " + "The browser does not support resizing of the sidebar."); - return; - } - - this.enabled = true; - this.resizer.classList.remove("hidden"); - this.l10n.getDirection().then(dir => { - this.isRTL = dir === "rtl"; - }); - - this._addEventListeners(); - } - - get outerContainerWidth() { - if (!this._outerContainerWidth) { - this._outerContainerWidth = this.outerContainer.clientWidth; - } - - return this._outerContainerWidth; - } - - _updateWidth(width = 0) { - if (!this.enabled) { - return false; - } - - const newWidth = (0, _ui_utils.clamp)(width, SIDEBAR_MIN_WIDTH, Math.floor(this.outerContainerWidth / 2)); - - if (newWidth === this._width) { - return false; - } - - this._width = newWidth; - this.doc.style.setProperty(SIDEBAR_WIDTH_VAR, `${newWidth}px`); - return true; - } - - _mouseMove(evt) { - let width = evt.clientX; - - if (this.isRTL) { - width = this.outerContainerWidth - width; - } - - this._updateWidth(width); - } - - _mouseUp(evt) { - this.outerContainer.classList.remove(SIDEBAR_RESIZING_CLASS); - this.eventBus.dispatch("resize", { - source: this - }); - const _boundEvents = this._boundEvents; - window.removeEventListener("mousemove", _boundEvents.mouseMove); - window.removeEventListener("mouseup", _boundEvents.mouseUp); - } - - _addEventListeners() { - if (!this.enabled) { - return; - } - - const _boundEvents = this._boundEvents; - _boundEvents.mouseMove = this._mouseMove.bind(this); - _boundEvents.mouseUp = this._mouseUp.bind(this); - this.resizer.addEventListener("mousedown", evt => { - if (evt.button !== 0) { - return; - } - - this.outerContainer.classList.add(SIDEBAR_RESIZING_CLASS); - window.addEventListener("mousemove", _boundEvents.mouseMove); - window.addEventListener("mouseup", _boundEvents.mouseUp); - }); - - this.eventBus._on("sidebarviewchanged", evt => { - this.sidebarOpen = !!(evt && evt.view); - }); - - this.eventBus._on("resize", evt => { - if (!evt || evt.source !== window) { - return; - } - - this._outerContainerWidth = null; - - if (!this._width) { - return; - } - - if (!this.sidebarOpen) { - this._updateWidth(this._width); - - return; - } - - this.outerContainer.classList.add(SIDEBAR_RESIZING_CLASS); - - const updated = this._updateWidth(this._width); - - Promise.resolve().then(() => { - this.outerContainer.classList.remove(SIDEBAR_RESIZING_CLASS); - - if (updated) { - this.eventBus.dispatch("resize", { - source: this - }); - } - }); - }); - } - -} - -exports.PDFSidebarResizer = PDFSidebarResizer; - -/***/ }), -/* 22 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFThumbnailViewer = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdf_thumbnail_view = __webpack_require__(23); - -const THUMBNAIL_SCROLL_MARGIN = -19; -const THUMBNAIL_SELECTED_CLASS = "selected"; - -class PDFThumbnailViewer { - constructor({ - container, - linkService, - renderingQueue, - l10n = _ui_utils.NullL10n - }) { - this.container = container; - this.linkService = linkService; - this.renderingQueue = renderingQueue; - this.l10n = l10n; - this.scroll = (0, _ui_utils.watchScroll)(this.container, this._scrollUpdated.bind(this)); - - this._resetView(); - } - - _scrollUpdated() { - this.renderingQueue.renderHighestPriority(); - } - - getThumbnail(index) { - return this._thumbnails[index]; - } - - _getVisibleThumbs() { - return (0, _ui_utils.getVisibleElements)(this.container, this._thumbnails); - } - - scrollThumbnailIntoView(pageNumber) { - if (!this.pdfDocument) { - return; - } - - const thumbnailView = this._thumbnails[pageNumber - 1]; - - if (!thumbnailView) { - console.error('scrollThumbnailIntoView: Invalid "pageNumber" parameter.'); - return; - } - - if (pageNumber !== this._currentPageNumber) { - const prevThumbnailView = this._thumbnails[this._currentPageNumber - 1]; - prevThumbnailView.div.classList.remove(THUMBNAIL_SELECTED_CLASS); - thumbnailView.div.classList.add(THUMBNAIL_SELECTED_CLASS); - } - - const visibleThumbs = this._getVisibleThumbs(); - - const numVisibleThumbs = visibleThumbs.views.length; - - if (numVisibleThumbs > 0) { - const first = visibleThumbs.first.id; - const last = numVisibleThumbs > 1 ? visibleThumbs.last.id : first; - let shouldScroll = false; - - if (pageNumber <= first || pageNumber >= last) { - shouldScroll = true; - } else { - visibleThumbs.views.some(function (view) { - if (view.id !== pageNumber) { - return false; - } - - shouldScroll = view.percent < 100; - return true; - }); - } - - if (shouldScroll) { - (0, _ui_utils.scrollIntoView)(thumbnailView.div, { - top: THUMBNAIL_SCROLL_MARGIN - }); - } - } - - this._currentPageNumber = pageNumber; - } - - get pagesRotation() { - return this._pagesRotation; - } - - set pagesRotation(rotation) { - if (!(0, _ui_utils.isValidRotation)(rotation)) { - throw new Error("Invalid thumbnails rotation angle."); - } - - if (!this.pdfDocument) { - return; - } - - if (this._pagesRotation === rotation) { - return; - } - - this._pagesRotation = rotation; - - for (let i = 0, ii = this._thumbnails.length; i < ii; i++) { - this._thumbnails[i].update(rotation); - } - } - - cleanup() { - _pdf_thumbnail_view.PDFThumbnailView.cleanup(); - } - - _resetView() { - this._thumbnails = []; - this._currentPageNumber = 1; - this._pageLabels = null; - this._pagesRotation = 0; - this._pagesRequests = new WeakMap(); - this.container.textContent = ""; - } - - setDocument(pdfDocument) { - if (this.pdfDocument) { - this._cancelRendering(); - - this._resetView(); - } - - this.pdfDocument = pdfDocument; - - if (!pdfDocument) { - return; - } - - pdfDocument.getPage(1).then(firstPdfPage => { - const pagesCount = pdfDocument.numPages; - const viewport = firstPdfPage.getViewport({ - scale: 1 - }); - - for (let pageNum = 1; pageNum <= pagesCount; ++pageNum) { - const thumbnail = new _pdf_thumbnail_view.PDFThumbnailView({ - container: this.container, - id: pageNum, - defaultViewport: viewport.clone(), - linkService: this.linkService, - renderingQueue: this.renderingQueue, - disableCanvasToImageConversion: false, - l10n: this.l10n - }); - - this._thumbnails.push(thumbnail); - } - - const firstThumbnailView = this._thumbnails[0]; - - if (firstThumbnailView) { - firstThumbnailView.setPdfPage(firstPdfPage); - } - - const thumbnailView = this._thumbnails[this._currentPageNumber - 1]; - thumbnailView.div.classList.add(THUMBNAIL_SELECTED_CLASS); - }).catch(reason => { - console.error("Unable to initialize thumbnail viewer", reason); - }); - } - - _cancelRendering() { - for (let i = 0, ii = this._thumbnails.length; i < ii; i++) { - if (this._thumbnails[i]) { - this._thumbnails[i].cancelRendering(); - } - } - } - - setPageLabels(labels) { - if (!this.pdfDocument) { - return; - } - - if (!labels) { - this._pageLabels = null; - } else if (!(Array.isArray(labels) && this.pdfDocument.numPages === labels.length)) { - this._pageLabels = null; - console.error("PDFThumbnailViewer_setPageLabels: Invalid page labels."); - } else { - this._pageLabels = labels; - } - - for (let i = 0, ii = this._thumbnails.length; i < ii; i++) { - const label = this._pageLabels && this._pageLabels[i]; - - this._thumbnails[i].setPageLabel(label); - } - } - - _ensurePdfPageLoaded(thumbView) { - if (thumbView.pdfPage) { - return Promise.resolve(thumbView.pdfPage); - } - - if (this._pagesRequests.has(thumbView)) { - return this._pagesRequests.get(thumbView); - } - - const promise = this.pdfDocument.getPage(thumbView.id).then(pdfPage => { - if (!thumbView.pdfPage) { - thumbView.setPdfPage(pdfPage); - } - - this._pagesRequests.delete(thumbView); - - return pdfPage; - }).catch(reason => { - console.error("Unable to get page for thumb view", reason); - - this._pagesRequests.delete(thumbView); - }); - - this._pagesRequests.set(thumbView, promise); - - return promise; - } - - forceRendering() { - const visibleThumbs = this._getVisibleThumbs(); - - const thumbView = this.renderingQueue.getHighestPriority(visibleThumbs, this._thumbnails, this.scroll.down); - - if (thumbView) { - this._ensurePdfPageLoaded(thumbView).then(() => { - this.renderingQueue.renderView(thumbView); - }); - - return true; - } - - return false; - } - -} - -exports.PDFThumbnailViewer = PDFThumbnailViewer; - -/***/ }), -/* 23 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFThumbnailView = void 0; - -var _pdfjsLib = __webpack_require__(5); - -var _ui_utils = __webpack_require__(2); - -var _pdf_rendering_queue = __webpack_require__(8); - -const MAX_NUM_SCALING_STEPS = 3; -const THUMBNAIL_CANVAS_BORDER_WIDTH = 1; -const THUMBNAIL_WIDTH = 98; - -const TempImageFactory = function TempImageFactoryClosure() { - let tempCanvasCache = null; - return { - getCanvas(width, height) { - let tempCanvas = tempCanvasCache; - - if (!tempCanvas) { - tempCanvas = document.createElement("canvas"); - tempCanvasCache = tempCanvas; - } - - tempCanvas.width = width; - tempCanvas.height = height; - tempCanvas.mozOpaque = true; - const ctx = tempCanvas.getContext("2d", { - alpha: false - }); - ctx.save(); - ctx.fillStyle = "rgb(255, 255, 255)"; - ctx.fillRect(0, 0, width, height); - ctx.restore(); - return tempCanvas; - }, - - destroyCanvas() { - const tempCanvas = tempCanvasCache; - - if (tempCanvas) { - tempCanvas.width = 0; - tempCanvas.height = 0; - } - - tempCanvasCache = null; - } - - }; -}(); - -class PDFThumbnailView { - constructor({ - container, - id, - defaultViewport, - linkService, - renderingQueue, - disableCanvasToImageConversion = false, - l10n = _ui_utils.NullL10n - }) { - this.id = id; - this.renderingId = "thumbnail" + id; - this.pageLabel = null; - this.pdfPage = null; - this.rotation = 0; - this.viewport = defaultViewport; - this.pdfPageRotate = defaultViewport.rotation; - this.linkService = linkService; - this.renderingQueue = renderingQueue; - this.renderTask = null; - this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL; - this.resume = null; - this.disableCanvasToImageConversion = disableCanvasToImageConversion; - this.pageWidth = this.viewport.width; - this.pageHeight = this.viewport.height; - this.pageRatio = this.pageWidth / this.pageHeight; - this.canvasWidth = THUMBNAIL_WIDTH; - this.canvasHeight = this.canvasWidth / this.pageRatio | 0; - this.scale = this.canvasWidth / this.pageWidth; - this.l10n = l10n; - const anchor = document.createElement("a"); - anchor.href = linkService.getAnchorUrl("#page=" + id); - - this._thumbPageTitle.then(msg => { - anchor.title = msg; - }); - - anchor.onclick = function () { - linkService.page = id; - return false; - }; - - this.anchor = anchor; - const div = document.createElement("div"); - div.className = "thumbnail"; - div.setAttribute("data-page-number", this.id); - this.div = div; - const ring = document.createElement("div"); - ring.className = "thumbnailSelectionRing"; - const borderAdjustment = 2 * THUMBNAIL_CANVAS_BORDER_WIDTH; - ring.style.width = this.canvasWidth + borderAdjustment + "px"; - ring.style.height = this.canvasHeight + borderAdjustment + "px"; - this.ring = ring; - div.appendChild(ring); - anchor.appendChild(div); - container.appendChild(anchor); - } - - setPdfPage(pdfPage) { - this.pdfPage = pdfPage; - this.pdfPageRotate = pdfPage.rotate; - const totalRotation = (this.rotation + this.pdfPageRotate) % 360; - this.viewport = pdfPage.getViewport({ - scale: 1, - rotation: totalRotation - }); - this.reset(); - } - - reset() { - this.cancelRendering(); - this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL; - this.pageWidth = this.viewport.width; - this.pageHeight = this.viewport.height; - this.pageRatio = this.pageWidth / this.pageHeight; - this.canvasHeight = this.canvasWidth / this.pageRatio | 0; - this.scale = this.canvasWidth / this.pageWidth; - this.div.removeAttribute("data-loaded"); - const ring = this.ring; - const childNodes = ring.childNodes; - - for (let i = childNodes.length - 1; i >= 0; i--) { - ring.removeChild(childNodes[i]); - } - - const borderAdjustment = 2 * THUMBNAIL_CANVAS_BORDER_WIDTH; - ring.style.width = this.canvasWidth + borderAdjustment + "px"; - ring.style.height = this.canvasHeight + borderAdjustment + "px"; - - if (this.canvas) { - this.canvas.width = 0; - this.canvas.height = 0; - delete this.canvas; - } - - if (this.image) { - this.image.removeAttribute("src"); - delete this.image; - } - } - - update(rotation) { - if (typeof rotation !== "undefined") { - this.rotation = rotation; - } - - const totalRotation = (this.rotation + this.pdfPageRotate) % 360; - this.viewport = this.viewport.clone({ - scale: 1, - rotation: totalRotation - }); - this.reset(); - } - - cancelRendering() { - if (this.renderTask) { - this.renderTask.cancel(); - this.renderTask = null; - } - - this.resume = null; - } - - _getPageDrawContext(noCtxScale = false) { - const canvas = document.createElement("canvas"); - this.canvas = canvas; - canvas.mozOpaque = true; - const ctx = canvas.getContext("2d", { - alpha: false - }); - const outputScale = (0, _ui_utils.getOutputScale)(ctx); - canvas.width = this.canvasWidth * outputScale.sx | 0; - canvas.height = this.canvasHeight * outputScale.sy | 0; - canvas.style.width = this.canvasWidth + "px"; - canvas.style.height = this.canvasHeight + "px"; - - if (!noCtxScale && outputScale.scaled) { - ctx.scale(outputScale.sx, outputScale.sy); - } - - return ctx; - } - - _convertCanvasToImage() { - if (!this.canvas) { - return; - } - - if (this.renderingState !== _pdf_rendering_queue.RenderingStates.FINISHED) { - return; - } - - const className = "thumbnailImage"; - - if (this.disableCanvasToImageConversion) { - this.canvas.className = className; - - this._thumbPageCanvas.then(msg => { - this.canvas.setAttribute("aria-label", msg); - }); - - this.div.setAttribute("data-loaded", true); - this.ring.appendChild(this.canvas); - return; - } - - const image = document.createElement("img"); - image.className = className; - - this._thumbPageCanvas.then(msg => { - image.setAttribute("aria-label", msg); - }); - - image.style.width = this.canvasWidth + "px"; - image.style.height = this.canvasHeight + "px"; - image.src = this.canvas.toDataURL(); - this.image = image; - this.div.setAttribute("data-loaded", true); - this.ring.appendChild(image); - this.canvas.width = 0; - this.canvas.height = 0; - delete this.canvas; - } - - draw() { - if (this.renderingState !== _pdf_rendering_queue.RenderingStates.INITIAL) { - console.error("Must be in new state before drawing"); - return Promise.resolve(undefined); - } - - const { - pdfPage - } = this; - - if (!pdfPage) { - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - return Promise.reject(new Error("pdfPage is not loaded")); - } - - this.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING; - const renderCapability = (0, _pdfjsLib.createPromiseCapability)(); - - const finishRenderTask = error => { - if (renderTask === this.renderTask) { - this.renderTask = null; - } - - if (error instanceof _pdfjsLib.RenderingCancelledException) { - renderCapability.resolve(undefined); - return; - } - - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - - this._convertCanvasToImage(); - - if (!error) { - renderCapability.resolve(undefined); - } else { - renderCapability.reject(error); - } - }; - - const ctx = this._getPageDrawContext(); - - const drawViewport = this.viewport.clone({ - scale: this.scale - }); - - const renderContinueCallback = cont => { - if (!this.renderingQueue.isHighestPriority(this)) { - this.renderingState = _pdf_rendering_queue.RenderingStates.PAUSED; - - this.resume = () => { - this.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING; - cont(); - }; - - return; - } - - cont(); - }; - - const renderContext = { - canvasContext: ctx, - viewport: drawViewport - }; - const renderTask = this.renderTask = pdfPage.render(renderContext); - renderTask.onContinue = renderContinueCallback; - renderTask.promise.then(function () { - finishRenderTask(null); - }, function (error) { - finishRenderTask(error); - }); - return renderCapability.promise; - } - - setImage(pageView) { - if (this.renderingState !== _pdf_rendering_queue.RenderingStates.INITIAL) { - return; - } - - const img = pageView.canvas; - - if (!img) { - return; - } - - if (!this.pdfPage) { - this.setPdfPage(pageView.pdfPage); - } - - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - - const ctx = this._getPageDrawContext(true); - - const canvas = ctx.canvas; - - if (img.width <= 2 * canvas.width) { - ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, canvas.width, canvas.height); - - this._convertCanvasToImage(); - - return; - } - - let reducedWidth = canvas.width << MAX_NUM_SCALING_STEPS; - let reducedHeight = canvas.height << MAX_NUM_SCALING_STEPS; - const reducedImage = TempImageFactory.getCanvas(reducedWidth, reducedHeight); - const reducedImageCtx = reducedImage.getContext("2d"); - - while (reducedWidth > img.width || reducedHeight > img.height) { - reducedWidth >>= 1; - reducedHeight >>= 1; - } - - reducedImageCtx.drawImage(img, 0, 0, img.width, img.height, 0, 0, reducedWidth, reducedHeight); - - while (reducedWidth > 2 * canvas.width) { - reducedImageCtx.drawImage(reducedImage, 0, 0, reducedWidth, reducedHeight, 0, 0, reducedWidth >> 1, reducedHeight >> 1); - reducedWidth >>= 1; - reducedHeight >>= 1; - } - - ctx.drawImage(reducedImage, 0, 0, reducedWidth, reducedHeight, 0, 0, canvas.width, canvas.height); - - this._convertCanvasToImage(); - } - - get _thumbPageTitle() { - return this.l10n.get("thumb_page_title", { - page: this.pageLabel !== null ? this.pageLabel : this.id - }, "Page {{page}}"); - } - - get _thumbPageCanvas() { - return this.l10n.get("thumb_page_canvas", { - page: this.pageLabel !== null ? this.pageLabel : this.id - }, "Thumbnail of Page {{page}}"); - } - - setPageLabel(label) { - this.pageLabel = typeof label === "string" ? label : null; - - this._thumbPageTitle.then(msg => { - this.anchor.title = msg; - }); - - if (this.renderingState !== _pdf_rendering_queue.RenderingStates.FINISHED) { - return; - } - - this._thumbPageCanvas.then(msg => { - if (this.image) { - this.image.setAttribute("aria-label", msg); - } else if (this.disableCanvasToImageConversion && this.canvas) { - this.canvas.setAttribute("aria-label", msg); - } - }); - } - - static cleanup() { - TempImageFactory.destroyCanvas(); - } - -} - -exports.PDFThumbnailView = PDFThumbnailView; - -/***/ }), -/* 24 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFViewer = void 0; - -var _base_viewer = __webpack_require__(25); - -var _pdfjsLib = __webpack_require__(5); - -class PDFViewer extends _base_viewer.BaseViewer { - get _viewerElement() { - return (0, _pdfjsLib.shadow)(this, "_viewerElement", this.viewer); - } - - _scrollIntoView({ - pageDiv, - pageSpot = null, - pageNumber = null - }) { - if (!pageSpot && !this.isInPresentationMode) { - const left = pageDiv.offsetLeft + pageDiv.clientLeft; - const right = left + pageDiv.clientWidth; - const { - scrollLeft, - clientWidth - } = this.container; - - if (this._isScrollModeHorizontal || left < scrollLeft || right > scrollLeft + clientWidth) { - pageSpot = { - left: 0, - top: 0 - }; - } - } - - super._scrollIntoView({ - pageDiv, - pageSpot, - pageNumber - }); - } - - _getVisiblePages() { - if (this.isInPresentationMode) { - return this._getCurrentVisiblePage(); - } - - return super._getVisiblePages(); - } - - _updateHelper(visiblePages) { - if (this.isInPresentationMode) { - return; - } - - let currentId = this._currentPageNumber; - let stillFullyVisible = false; - - for (const page of visiblePages) { - if (page.percent < 100) { - break; - } - - if (page.id === currentId) { - stillFullyVisible = true; - break; - } - } - - if (!stillFullyVisible) { - currentId = visiblePages[0].id; - } - - this._setCurrentPageNumber(currentId); - } - -} - -exports.PDFViewer = PDFViewer; - -/***/ }), -/* 25 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.BaseViewer = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdf_rendering_queue = __webpack_require__(8); - -var _annotation_layer_builder = __webpack_require__(26); - -var _pdfjsLib = __webpack_require__(5); - -var _pdf_page_view = __webpack_require__(27); - -var _pdf_link_service = __webpack_require__(18); - -var _text_layer_builder = __webpack_require__(28); - -const DEFAULT_CACHE_SIZE = 10; - -function PDFPageViewBuffer(size) { - const data = []; - - this.push = function (view) { - const i = data.indexOf(view); - - if (i >= 0) { - data.splice(i, 1); - } - - data.push(view); - - if (data.length > size) { - data.shift().destroy(); - } - }; - - this.resize = function (newSize, pagesToKeep) { - size = newSize; - - if (pagesToKeep) { - const pageIdsToKeep = new Set(); - - for (let i = 0, iMax = pagesToKeep.length; i < iMax; ++i) { - pageIdsToKeep.add(pagesToKeep[i].id); - } - - (0, _ui_utils.moveToEndOfArray)(data, function (page) { - return pageIdsToKeep.has(page.id); - }); - } - - while (data.length > size) { - data.shift().destroy(); - } - }; -} - -function isSameScale(oldScale, newScale) { - if (newScale === oldScale) { - return true; - } - - if (Math.abs(newScale - oldScale) < 1e-15) { - return true; - } - - return false; -} - -class BaseViewer { - constructor(options) { - if (this.constructor === BaseViewer) { - throw new Error("Cannot initialize BaseViewer."); - } - - this._name = this.constructor.name; - this.container = options.container; - this.viewer = options.viewer || options.container.firstElementChild; - this.eventBus = options.eventBus; - this.linkService = options.linkService || new _pdf_link_service.SimpleLinkService(); - this.downloadManager = options.downloadManager || null; - this.findController = options.findController || null; - this.removePageBorders = options.removePageBorders || false; - this.textLayerMode = Number.isInteger(options.textLayerMode) ? options.textLayerMode : _ui_utils.TextLayerMode.ENABLE; - this.imageResourcesPath = options.imageResourcesPath || ""; - this.renderInteractiveForms = options.renderInteractiveForms || false; - this.enablePrintAutoRotate = options.enablePrintAutoRotate || false; - this.renderer = options.renderer || _ui_utils.RendererType.CANVAS; - this.enableWebGL = options.enableWebGL || false; - this.useOnlyCssZoom = options.useOnlyCssZoom || false; - this.maxCanvasPixels = options.maxCanvasPixels; - this.l10n = options.l10n || _ui_utils.NullL10n; - this.defaultRenderingQueue = !options.renderingQueue; - - if (this.defaultRenderingQueue) { - this.renderingQueue = new _pdf_rendering_queue.PDFRenderingQueue(); - this.renderingQueue.setViewer(this); - } else { - this.renderingQueue = options.renderingQueue; - } - - this.scroll = (0, _ui_utils.watchScroll)(this.container, this._scrollUpdate.bind(this)); - this.presentationModeState = _ui_utils.PresentationModeState.UNKNOWN; - this._onBeforeDraw = this._onAfterDraw = null; - - this._resetView(); - - if (this.removePageBorders) { - this.viewer.classList.add("removePageBorders"); - } - - Promise.resolve().then(() => { - this.eventBus.dispatch("baseviewerinit", { - source: this - }); - }); - } - - get pagesCount() { - return this._pages.length; - } - - getPageView(index) { - return this._pages[index]; - } - - get pageViewsReady() { - if (!this._pagesCapability.settled) { - return false; - } - - return this._pages.every(function (pageView) { - return pageView && pageView.pdfPage; - }); - } - - get currentPageNumber() { - return this._currentPageNumber; - } - - set currentPageNumber(val) { - if (!Number.isInteger(val)) { - throw new Error("Invalid page number."); - } - - if (!this.pdfDocument) { - return; - } - - if (!this._setCurrentPageNumber(val, true)) { - console.error(`${this._name}.currentPageNumber: "${val}" is not a valid page.`); - } - } - - _setCurrentPageNumber(val, resetCurrentPageView = false) { - if (this._currentPageNumber === val) { - if (resetCurrentPageView) { - this._resetCurrentPageView(); - } - - return true; - } - - if (!(0 < val && val <= this.pagesCount)) { - return false; - } - - this._currentPageNumber = val; - this.eventBus.dispatch("pagechanging", { - source: this, - pageNumber: val, - pageLabel: this._pageLabels && this._pageLabels[val - 1] - }); - - if (resetCurrentPageView) { - this._resetCurrentPageView(); - } - - return true; - } - - get currentPageLabel() { - return this._pageLabels && this._pageLabels[this._currentPageNumber - 1]; - } - - set currentPageLabel(val) { - if (!this.pdfDocument) { - return; - } - - let page = val | 0; - - if (this._pageLabels) { - const i = this._pageLabels.indexOf(val); - - if (i >= 0) { - page = i + 1; - } - } - - if (!this._setCurrentPageNumber(page, true)) { - console.error(`${this._name}.currentPageLabel: "${val}" is not a valid page.`); - } - } - - get currentScale() { - return this._currentScale !== _ui_utils.UNKNOWN_SCALE ? this._currentScale : _ui_utils.DEFAULT_SCALE; - } - - set currentScale(val) { - if (isNaN(val)) { - throw new Error("Invalid numeric scale."); - } - - if (!this.pdfDocument) { - return; - } - - this._setScale(val, false); - } - - get currentScaleValue() { - return this._currentScaleValue; - } - - set currentScaleValue(val) { - if (!this.pdfDocument) { - return; - } - - this._setScale(val, false); - } - - get pagesRotation() { - return this._pagesRotation; - } - - set pagesRotation(rotation) { - if (!(0, _ui_utils.isValidRotation)(rotation)) { - throw new Error("Invalid pages rotation angle."); - } - - if (!this.pdfDocument) { - return; - } - - if (this._pagesRotation === rotation) { - return; - } - - this._pagesRotation = rotation; - const pageNumber = this._currentPageNumber; - - for (let i = 0, ii = this._pages.length; i < ii; i++) { - const pageView = this._pages[i]; - pageView.update(pageView.scale, rotation); - } - - if (this._currentScaleValue) { - this._setScale(this._currentScaleValue, true); - } - - this.eventBus.dispatch("rotationchanging", { - source: this, - pagesRotation: rotation, - pageNumber - }); - - if (this.defaultRenderingQueue) { - this.update(); - } - } - - get firstPagePromise() { - return this.pdfDocument ? this._firstPageCapability.promise : null; - } - - get onePageRendered() { - return this.pdfDocument ? this._onePageRenderedCapability.promise : null; - } - - get pagesPromise() { - return this.pdfDocument ? this._pagesCapability.promise : null; - } - - get _viewerElement() { - throw new Error("Not implemented: _viewerElement"); - } - - _onePageRenderedOrForceFetch() { - if (!this.container.offsetParent || this._getVisiblePages().views.length === 0) { - return Promise.resolve(); - } - - return this._onePageRenderedCapability.promise; - } - - setDocument(pdfDocument) { - if (this.pdfDocument) { - this._cancelRendering(); - - this._resetView(); - - if (this.findController) { - this.findController.setDocument(null); - } - } - - this.pdfDocument = pdfDocument; - - if (!pdfDocument) { - return; - } - - const pagesCount = pdfDocument.numPages; - const firstPagePromise = pdfDocument.getPage(1); - - this._pagesCapability.promise.then(() => { - this.eventBus.dispatch("pagesloaded", { - source: this, - pagesCount - }); - }); - - this._onBeforeDraw = evt => { - const pageView = this._pages[evt.pageNumber - 1]; - - if (!pageView) { - return; - } - - this._buffer.push(pageView); - }; - - this.eventBus._on("pagerender", this._onBeforeDraw); - - this._onAfterDraw = evt => { - if (evt.cssTransform || this._onePageRenderedCapability.settled) { - return; - } - - this._onePageRenderedCapability.resolve(); - - this.eventBus._off("pagerendered", this._onAfterDraw); - - this._onAfterDraw = null; - }; - - this.eventBus._on("pagerendered", this._onAfterDraw); - - firstPagePromise.then(firstPdfPage => { - this._firstPageCapability.resolve(firstPdfPage); - - const scale = this.currentScale; - const viewport = firstPdfPage.getViewport({ - scale: scale * _ui_utils.CSS_UNITS - }); - const textLayerFactory = this.textLayerMode !== _ui_utils.TextLayerMode.DISABLE ? this : null; - - for (let pageNum = 1; pageNum <= pagesCount; ++pageNum) { - const pageView = new _pdf_page_view.PDFPageView({ - container: this._viewerElement, - eventBus: this.eventBus, - id: pageNum, - scale, - defaultViewport: viewport.clone(), - renderingQueue: this.renderingQueue, - textLayerFactory, - textLayerMode: this.textLayerMode, - annotationLayerFactory: this, - imageResourcesPath: this.imageResourcesPath, - renderInteractiveForms: this.renderInteractiveForms, - renderer: this.renderer, - enableWebGL: this.enableWebGL, - useOnlyCssZoom: this.useOnlyCssZoom, - maxCanvasPixels: this.maxCanvasPixels, - l10n: this.l10n - }); - - this._pages.push(pageView); - } - - const firstPageView = this._pages[0]; - - if (firstPageView) { - firstPageView.setPdfPage(firstPdfPage); - this.linkService.cachePageRef(1, firstPdfPage.ref); - } - - if (this._spreadMode !== _ui_utils.SpreadMode.NONE) { - this._updateSpreadMode(); - } - - this._onePageRenderedOrForceFetch().then(() => { - if (this.findController) { - this.findController.setDocument(pdfDocument); - } - - if (pdfDocument.loadingParams.disableAutoFetch || pagesCount > 7500) { - this._pagesCapability.resolve(); - - return; - } - - let getPagesLeft = pagesCount - 1; - - if (getPagesLeft <= 0) { - this._pagesCapability.resolve(); - - return; - } - - for (let pageNum = 2; pageNum <= pagesCount; ++pageNum) { - pdfDocument.getPage(pageNum).then(pdfPage => { - const pageView = this._pages[pageNum - 1]; - - if (!pageView.pdfPage) { - pageView.setPdfPage(pdfPage); - } - - this.linkService.cachePageRef(pageNum, pdfPage.ref); - - if (--getPagesLeft === 0) { - this._pagesCapability.resolve(); - } - }, reason => { - console.error(`Unable to get page ${pageNum} to initialize viewer`, reason); - - if (--getPagesLeft === 0) { - this._pagesCapability.resolve(); - } - }); - } - }); - - this.eventBus.dispatch("pagesinit", { - source: this - }); - - if (this.defaultRenderingQueue) { - this.update(); - } - }).catch(reason => { - console.error("Unable to initialize viewer", reason); - }); - } - - setPageLabels(labels) { - if (!this.pdfDocument) { - return; - } - - if (!labels) { - this._pageLabels = null; - } else if (!(Array.isArray(labels) && this.pdfDocument.numPages === labels.length)) { - this._pageLabels = null; - console.error(`${this._name}.setPageLabels: Invalid page labels.`); - } else { - this._pageLabels = labels; - } - - for (let i = 0, ii = this._pages.length; i < ii; i++) { - const pageView = this._pages[i]; - const label = this._pageLabels && this._pageLabels[i]; - pageView.setPageLabel(label); - } - } - - _resetView() { - this._pages = []; - this._currentPageNumber = 1; - this._currentScale = _ui_utils.UNKNOWN_SCALE; - this._currentScaleValue = null; - this._pageLabels = null; - this._buffer = new PDFPageViewBuffer(DEFAULT_CACHE_SIZE); - this._location = null; - this._pagesRotation = 0; - this._pagesRequests = new WeakMap(); - this._firstPageCapability = (0, _pdfjsLib.createPromiseCapability)(); - this._onePageRenderedCapability = (0, _pdfjsLib.createPromiseCapability)(); - this._pagesCapability = (0, _pdfjsLib.createPromiseCapability)(); - this._scrollMode = _ui_utils.ScrollMode.VERTICAL; - this._spreadMode = _ui_utils.SpreadMode.NONE; - - if (this._onBeforeDraw) { - this.eventBus._off("pagerender", this._onBeforeDraw); - - this._onBeforeDraw = null; - } - - if (this._onAfterDraw) { - this.eventBus._off("pagerendered", this._onAfterDraw); - - this._onAfterDraw = null; - } - - this.viewer.textContent = ""; - - this._updateScrollMode(); - } - - _scrollUpdate() { - if (this.pagesCount === 0) { - return; - } - - this.update(); - } - - _scrollIntoView({ - pageDiv, - pageSpot = null, - pageNumber = null - }) { - (0, _ui_utils.scrollIntoView)(pageDiv, pageSpot); - } - - _setScaleUpdatePages(newScale, newValue, noScroll = false, preset = false) { - this._currentScaleValue = newValue.toString(); - - if (isSameScale(this._currentScale, newScale)) { - if (preset) { - this.eventBus.dispatch("scalechanging", { - source: this, - scale: newScale, - presetValue: newValue - }); - } - - return; - } - - for (let i = 0, ii = this._pages.length; i < ii; i++) { - this._pages[i].update(newScale); - } - - this._currentScale = newScale; - - if (!noScroll) { - let page = this._currentPageNumber, - dest; - - if (this._location && !(this.isInPresentationMode || this.isChangingPresentationMode)) { - page = this._location.pageNumber; - dest = [null, { - name: "XYZ" - }, this._location.left, this._location.top, null]; - } - - this.scrollPageIntoView({ - pageNumber: page, - destArray: dest, - allowNegativeOffset: true - }); - } - - this.eventBus.dispatch("scalechanging", { - source: this, - scale: newScale, - presetValue: preset ? newValue : undefined - }); - - if (this.defaultRenderingQueue) { - this.update(); - } - } - - _setScale(value, noScroll = false) { - let scale = parseFloat(value); - - if (scale > 0) { - this._setScaleUpdatePages(scale, value, noScroll, false); - } else { - const currentPage = this._pages[this._currentPageNumber - 1]; - - if (!currentPage) { - return; - } - - const noPadding = this.isInPresentationMode || this.removePageBorders; - let hPadding = noPadding ? 0 : _ui_utils.SCROLLBAR_PADDING; - let vPadding = noPadding ? 0 : _ui_utils.VERTICAL_PADDING; - - if (!noPadding && this._isScrollModeHorizontal) { - [hPadding, vPadding] = [vPadding, hPadding]; - } - - const pageWidthScale = (this.container.clientWidth - hPadding) / currentPage.width * currentPage.scale; - const pageHeightScale = (this.container.clientHeight - vPadding) / currentPage.height * currentPage.scale; - - switch (value) { - case "page-actual": - scale = 1; - break; - - case "page-width": - scale = pageWidthScale; - break; - - case "page-height": - scale = pageHeightScale; - break; - - case "page-fit": - scale = Math.min(pageWidthScale, pageHeightScale); - break; - - case "auto": - const horizontalScale = (0, _ui_utils.isPortraitOrientation)(currentPage) ? pageWidthScale : Math.min(pageHeightScale, pageWidthScale); - scale = Math.min(_ui_utils.MAX_AUTO_SCALE, horizontalScale); - break; - - default: - console.error(`${this._name}._setScale: "${value}" is an unknown zoom value.`); - return; - } - - this._setScaleUpdatePages(scale, value, noScroll, true); - } - } - - _resetCurrentPageView() { - if (this.isInPresentationMode) { - this._setScale(this._currentScaleValue, true); - } - - const pageView = this._pages[this._currentPageNumber - 1]; - - this._scrollIntoView({ - pageDiv: pageView.div - }); - } - - scrollPageIntoView({ - pageNumber, - destArray = null, - allowNegativeOffset = false, - ignoreDestinationZoom = false - }) { - if (!this.pdfDocument) { - return; - } - - const pageView = Number.isInteger(pageNumber) && this._pages[pageNumber - 1]; - - if (!pageView) { - console.error(`${this._name}.scrollPageIntoView: ` + `"${pageNumber}" is not a valid pageNumber parameter.`); - return; - } - - if (this.isInPresentationMode || !destArray) { - this._setCurrentPageNumber(pageNumber, true); - - return; - } - - let x = 0, - y = 0; - let width = 0, - height = 0, - widthScale, - heightScale; - const changeOrientation = pageView.rotation % 180 !== 0; - const pageWidth = (changeOrientation ? pageView.height : pageView.width) / pageView.scale / _ui_utils.CSS_UNITS; - const pageHeight = (changeOrientation ? pageView.width : pageView.height) / pageView.scale / _ui_utils.CSS_UNITS; - let scale = 0; - - switch (destArray[1].name) { - case "XYZ": - x = destArray[2]; - y = destArray[3]; - scale = destArray[4]; - x = x !== null ? x : 0; - y = y !== null ? y : pageHeight; - break; - - case "Fit": - case "FitB": - scale = "page-fit"; - break; - - case "FitH": - case "FitBH": - y = destArray[2]; - scale = "page-width"; - - if (y === null && this._location) { - x = this._location.left; - y = this._location.top; - } - - break; - - case "FitV": - case "FitBV": - x = destArray[2]; - width = pageWidth; - height = pageHeight; - scale = "page-height"; - break; - - case "FitR": - x = destArray[2]; - y = destArray[3]; - width = destArray[4] - x; - height = destArray[5] - y; - const hPadding = this.removePageBorders ? 0 : _ui_utils.SCROLLBAR_PADDING; - const vPadding = this.removePageBorders ? 0 : _ui_utils.VERTICAL_PADDING; - widthScale = (this.container.clientWidth - hPadding) / width / _ui_utils.CSS_UNITS; - heightScale = (this.container.clientHeight - vPadding) / height / _ui_utils.CSS_UNITS; - scale = Math.min(Math.abs(widthScale), Math.abs(heightScale)); - break; - - default: - console.error(`${this._name}.scrollPageIntoView: ` + `"${destArray[1].name}" is not a valid destination type.`); - return; - } - - if (!ignoreDestinationZoom) { - if (scale && scale !== this._currentScale) { - this.currentScaleValue = scale; - } else if (this._currentScale === _ui_utils.UNKNOWN_SCALE) { - this.currentScaleValue = _ui_utils.DEFAULT_SCALE_VALUE; - } - } - - if (scale === "page-fit" && !destArray[4]) { - this._scrollIntoView({ - pageDiv: pageView.div, - pageNumber - }); - - return; - } - - const boundingRect = [pageView.viewport.convertToViewportPoint(x, y), pageView.viewport.convertToViewportPoint(x + width, y + height)]; - let left = Math.min(boundingRect[0][0], boundingRect[1][0]); - let top = Math.min(boundingRect[0][1], boundingRect[1][1]); - - if (!allowNegativeOffset) { - left = Math.max(left, 0); - top = Math.max(top, 0); - } - - this._scrollIntoView({ - pageDiv: pageView.div, - pageSpot: { - left, - top - }, - pageNumber - }); - } - - _updateLocation(firstPage) { - const currentScale = this._currentScale; - const currentScaleValue = this._currentScaleValue; - const normalizedScaleValue = parseFloat(currentScaleValue) === currentScale ? Math.round(currentScale * 10000) / 100 : currentScaleValue; - const pageNumber = firstPage.id; - let pdfOpenParams = "#page=" + pageNumber; - pdfOpenParams += "&zoom=" + normalizedScaleValue; - const currentPageView = this._pages[pageNumber - 1]; - const container = this.container; - const topLeft = currentPageView.getPagePoint(container.scrollLeft - firstPage.x, container.scrollTop - firstPage.y); - const intLeft = Math.round(topLeft[0]); - const intTop = Math.round(topLeft[1]); - pdfOpenParams += "," + intLeft + "," + intTop; - this._location = { - pageNumber, - scale: normalizedScaleValue, - top: intTop, - left: intLeft, - rotation: this._pagesRotation, - pdfOpenParams - }; - } - - _updateHelper(visiblePages) { - throw new Error("Not implemented: _updateHelper"); - } - - update() { - const visible = this._getVisiblePages(); - - const visiblePages = visible.views, - numVisiblePages = visiblePages.length; - - if (numVisiblePages === 0) { - return; - } - - const newCacheSize = Math.max(DEFAULT_CACHE_SIZE, 2 * numVisiblePages + 1); - - this._buffer.resize(newCacheSize, visiblePages); - - this.renderingQueue.renderHighestPriority(visible); - - this._updateHelper(visiblePages); - - this._updateLocation(visible.first); - - this.eventBus.dispatch("updateviewarea", { - source: this, - location: this._location - }); - } - - containsElement(element) { - return this.container.contains(element); - } - - focus() { - this.container.focus(); - } - - get _isScrollModeHorizontal() { - return this.isInPresentationMode ? false : this._scrollMode === _ui_utils.ScrollMode.HORIZONTAL; - } - - get isInPresentationMode() { - return this.presentationModeState === _ui_utils.PresentationModeState.FULLSCREEN; - } - - get isChangingPresentationMode() { - return this.presentationModeState === _ui_utils.PresentationModeState.CHANGING; - } - - get isHorizontalScrollbarEnabled() { - return this.isInPresentationMode ? false : this.container.scrollWidth > this.container.clientWidth; - } - - get isVerticalScrollbarEnabled() { - return this.isInPresentationMode ? false : this.container.scrollHeight > this.container.clientHeight; - } - - _getCurrentVisiblePage() { - if (!this.pagesCount) { - return { - views: [] - }; - } - - const pageView = this._pages[this._currentPageNumber - 1]; - const element = pageView.div; - const view = { - id: pageView.id, - x: element.offsetLeft + element.clientLeft, - y: element.offsetTop + element.clientTop, - view: pageView - }; - return { - first: view, - last: view, - views: [view] - }; - } - - _getVisiblePages() { - return (0, _ui_utils.getVisibleElements)(this.container, this._pages, true, this._isScrollModeHorizontal); - } - - isPageVisible(pageNumber) { - if (!this.pdfDocument) { - return false; - } - - if (pageNumber < 1 || pageNumber > this.pagesCount) { - console.error(`${this._name}.isPageVisible: "${pageNumber}" is out of bounds.`); - return false; - } - - return this._getVisiblePages().views.some(function (view) { - return view.id === pageNumber; - }); - } - - cleanup() { - for (let i = 0, ii = this._pages.length; i < ii; i++) { - if (this._pages[i] && this._pages[i].renderingState !== _pdf_rendering_queue.RenderingStates.FINISHED) { - this._pages[i].reset(); - } - } - } - - _cancelRendering() { - for (let i = 0, ii = this._pages.length; i < ii; i++) { - if (this._pages[i]) { - this._pages[i].cancelRendering(); - } - } - } - - _ensurePdfPageLoaded(pageView) { - if (pageView.pdfPage) { - return Promise.resolve(pageView.pdfPage); - } - - if (this._pagesRequests.has(pageView)) { - return this._pagesRequests.get(pageView); - } - - const promise = this.pdfDocument.getPage(pageView.id).then(pdfPage => { - if (!pageView.pdfPage) { - pageView.setPdfPage(pdfPage); - } - - this._pagesRequests.delete(pageView); - - return pdfPage; - }).catch(reason => { - console.error("Unable to get page for page view", reason); - - this._pagesRequests.delete(pageView); - }); - - this._pagesRequests.set(pageView, promise); - - return promise; - } - - forceRendering(currentlyVisiblePages) { - const visiblePages = currentlyVisiblePages || this._getVisiblePages(); - - const scrollAhead = this._isScrollModeHorizontal ? this.scroll.right : this.scroll.down; - const pageView = this.renderingQueue.getHighestPriority(visiblePages, this._pages, scrollAhead); - - if (pageView) { - this._ensurePdfPageLoaded(pageView).then(() => { - this.renderingQueue.renderView(pageView); - }); - - return true; - } - - return false; - } - - createTextLayerBuilder(textLayerDiv, pageIndex, viewport, enhanceTextSelection = false, eventBus) { - return new _text_layer_builder.TextLayerBuilder({ - textLayerDiv, - eventBus, - pageIndex, - viewport, - findController: this.isInPresentationMode ? null : this.findController, - enhanceTextSelection: this.isInPresentationMode ? false : enhanceTextSelection - }); - } - - createAnnotationLayerBuilder(pageDiv, pdfPage, imageResourcesPath = "", renderInteractiveForms = false, l10n = _ui_utils.NullL10n) { - return new _annotation_layer_builder.AnnotationLayerBuilder({ - pageDiv, - pdfPage, - imageResourcesPath, - renderInteractiveForms, - linkService: this.linkService, - downloadManager: this.downloadManager, - l10n - }); - } - - get hasEqualPageSizes() { - const firstPageView = this._pages[0]; - - for (let i = 1, ii = this._pages.length; i < ii; ++i) { - const pageView = this._pages[i]; - - if (pageView.width !== firstPageView.width || pageView.height !== firstPageView.height) { - return false; - } - } - - return true; - } - - getPagesOverview() { - const pagesOverview = this._pages.map(function (pageView) { - const viewport = pageView.pdfPage.getViewport({ - scale: 1 - }); - return { - width: viewport.width, - height: viewport.height, - rotation: viewport.rotation - }; - }); - - if (!this.enablePrintAutoRotate) { - return pagesOverview; - } - - const isFirstPagePortrait = (0, _ui_utils.isPortraitOrientation)(pagesOverview[0]); - return pagesOverview.map(function (size) { - if (isFirstPagePortrait === (0, _ui_utils.isPortraitOrientation)(size)) { - return size; - } - - return { - width: size.height, - height: size.width, - rotation: (size.rotation + 90) % 360 - }; - }); - } - - get scrollMode() { - return this._scrollMode; - } - - set scrollMode(mode) { - if (this._scrollMode === mode) { - return; - } - - if (!(0, _ui_utils.isValidScrollMode)(mode)) { - throw new Error(`Invalid scroll mode: ${mode}`); - } - - this._scrollMode = mode; - this.eventBus.dispatch("scrollmodechanged", { - source: this, - mode - }); - - this._updateScrollMode(this._currentPageNumber); - } - - _updateScrollMode(pageNumber = null) { - const scrollMode = this._scrollMode, - viewer = this.viewer; - viewer.classList.toggle("scrollHorizontal", scrollMode === _ui_utils.ScrollMode.HORIZONTAL); - viewer.classList.toggle("scrollWrapped", scrollMode === _ui_utils.ScrollMode.WRAPPED); - - if (!this.pdfDocument || !pageNumber) { - return; - } - - if (this._currentScaleValue && isNaN(this._currentScaleValue)) { - this._setScale(this._currentScaleValue, true); - } - - this._setCurrentPageNumber(pageNumber, true); - - this.update(); - } - - get spreadMode() { - return this._spreadMode; - } - - set spreadMode(mode) { - if (this._spreadMode === mode) { - return; - } - - if (!(0, _ui_utils.isValidSpreadMode)(mode)) { - throw new Error(`Invalid spread mode: ${mode}`); - } - - this._spreadMode = mode; - this.eventBus.dispatch("spreadmodechanged", { - source: this, - mode - }); - - this._updateSpreadMode(this._currentPageNumber); - } - - _updateSpreadMode(pageNumber = null) { - if (!this.pdfDocument) { - return; - } - - const viewer = this.viewer, - pages = this._pages; - viewer.textContent = ""; - - if (this._spreadMode === _ui_utils.SpreadMode.NONE) { - for (let i = 0, iMax = pages.length; i < iMax; ++i) { - viewer.appendChild(pages[i].div); - } - } else { - const parity = this._spreadMode - 1; - let spread = null; - - for (let i = 0, iMax = pages.length; i < iMax; ++i) { - if (spread === null) { - spread = document.createElement("div"); - spread.className = "spread"; - viewer.appendChild(spread); - } else if (i % 2 === parity) { - spread = spread.cloneNode(false); - viewer.appendChild(spread); - } - - spread.appendChild(pages[i].div); - } - } - - if (!pageNumber) { - return; - } - - this._setCurrentPageNumber(pageNumber, true); - - this.update(); - } - -} - -exports.BaseViewer = BaseViewer; - -/***/ }), -/* 26 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.DefaultAnnotationLayerFactory = exports.AnnotationLayerBuilder = void 0; - -var _pdfjsLib = __webpack_require__(5); - -var _ui_utils = __webpack_require__(2); - -var _pdf_link_service = __webpack_require__(18); - -class AnnotationLayerBuilder { - constructor({ - pageDiv, - pdfPage, - linkService, - downloadManager, - imageResourcesPath = "", - renderInteractiveForms = false, - l10n = _ui_utils.NullL10n - }) { - this.pageDiv = pageDiv; - this.pdfPage = pdfPage; - this.linkService = linkService; - this.downloadManager = downloadManager; - this.imageResourcesPath = imageResourcesPath; - this.renderInteractiveForms = renderInteractiveForms; - this.l10n = l10n; - this.div = null; - this._cancelled = false; - } - - render(viewport, intent = "display") { - this.pdfPage.getAnnotations({ - intent - }).then(annotations => { - if (this._cancelled) { - return; - } - - const parameters = { - viewport: viewport.clone({ - dontFlip: true - }), - div: this.div, - annotations, - page: this.pdfPage, - imageResourcesPath: this.imageResourcesPath, - renderInteractiveForms: this.renderInteractiveForms, - linkService: this.linkService, - downloadManager: this.downloadManager - }; - - if (this.div) { - _pdfjsLib.AnnotationLayer.update(parameters); - } else { - if (annotations.length === 0) { - return; - } - - this.div = document.createElement("div"); - this.div.className = "annotationLayer"; - this.pageDiv.appendChild(this.div); - parameters.div = this.div; - - _pdfjsLib.AnnotationLayer.render(parameters); - - this.l10n.translate(this.div); - } - }); - } - - cancel() { - this._cancelled = true; - } - - hide() { - if (!this.div) { - return; - } - - this.div.setAttribute("hidden", "true"); - } - -} - -exports.AnnotationLayerBuilder = AnnotationLayerBuilder; - -class DefaultAnnotationLayerFactory { - createAnnotationLayerBuilder(pageDiv, pdfPage, imageResourcesPath = "", renderInteractiveForms = false, l10n = _ui_utils.NullL10n) { - return new AnnotationLayerBuilder({ - pageDiv, - pdfPage, - imageResourcesPath, - renderInteractiveForms, - linkService: new _pdf_link_service.SimpleLinkService(), - l10n - }); - } - -} - -exports.DefaultAnnotationLayerFactory = DefaultAnnotationLayerFactory; - -/***/ }), -/* 27 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFPageView = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdfjsLib = __webpack_require__(5); - -var _pdf_rendering_queue = __webpack_require__(8); - -var _viewer_compatibility = __webpack_require__(4); - -const MAX_CANVAS_PIXELS = _viewer_compatibility.viewerCompatibilityParams.maxCanvasPixels || 16777216; - -class PDFPageView { - constructor(options) { - const container = options.container; - const defaultViewport = options.defaultViewport; - this.id = options.id; - this.renderingId = "page" + this.id; - this.pdfPage = null; - this.pageLabel = null; - this.rotation = 0; - this.scale = options.scale || _ui_utils.DEFAULT_SCALE; - this.viewport = defaultViewport; - this.pdfPageRotate = defaultViewport.rotation; - this.hasRestrictedScaling = false; - this.textLayerMode = Number.isInteger(options.textLayerMode) ? options.textLayerMode : _ui_utils.TextLayerMode.ENABLE; - this.imageResourcesPath = options.imageResourcesPath || ""; - this.renderInteractiveForms = options.renderInteractiveForms || false; - this.useOnlyCssZoom = options.useOnlyCssZoom || false; - this.maxCanvasPixels = options.maxCanvasPixels || MAX_CANVAS_PIXELS; - this.eventBus = options.eventBus; - this.renderingQueue = options.renderingQueue; - this.textLayerFactory = options.textLayerFactory; - this.annotationLayerFactory = options.annotationLayerFactory; - this.renderer = options.renderer || _ui_utils.RendererType.CANVAS; - this.enableWebGL = options.enableWebGL || false; - this.l10n = options.l10n || _ui_utils.NullL10n; - this.paintTask = null; - this.paintedViewportMap = new WeakMap(); - this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL; - this.resume = null; - this.error = null; - this.annotationLayer = null; - this.textLayer = null; - this.zoomLayer = null; - const div = document.createElement("div"); - div.className = "page"; - div.style.width = Math.floor(this.viewport.width) + "px"; - div.style.height = Math.floor(this.viewport.height) + "px"; - div.setAttribute("data-page-number", this.id); - this.div = div; - container.appendChild(div); - } - - setPdfPage(pdfPage) { - this.pdfPage = pdfPage; - this.pdfPageRotate = pdfPage.rotate; - const totalRotation = (this.rotation + this.pdfPageRotate) % 360; - this.viewport = pdfPage.getViewport({ - scale: this.scale * _ui_utils.CSS_UNITS, - rotation: totalRotation - }); - this.stats = pdfPage.stats; - this.reset(); - } - - destroy() { - this.reset(); - - if (this.pdfPage) { - this.pdfPage.cleanup(); - } - } - - _resetZoomLayer(removeFromDOM = false) { - if (!this.zoomLayer) { - return; - } - - const zoomLayerCanvas = this.zoomLayer.firstChild; - this.paintedViewportMap.delete(zoomLayerCanvas); - zoomLayerCanvas.width = 0; - zoomLayerCanvas.height = 0; - - if (removeFromDOM) { - this.zoomLayer.remove(); - } - - this.zoomLayer = null; - } - - reset(keepZoomLayer = false, keepAnnotations = false) { - this.cancelRendering(keepAnnotations); - this.renderingState = _pdf_rendering_queue.RenderingStates.INITIAL; - const div = this.div; - div.style.width = Math.floor(this.viewport.width) + "px"; - div.style.height = Math.floor(this.viewport.height) + "px"; - const childNodes = div.childNodes; - const currentZoomLayerNode = keepZoomLayer && this.zoomLayer || null; - const currentAnnotationNode = keepAnnotations && this.annotationLayer && this.annotationLayer.div || null; - - for (let i = childNodes.length - 1; i >= 0; i--) { - const node = childNodes[i]; - - if (currentZoomLayerNode === node || currentAnnotationNode === node) { - continue; - } - - div.removeChild(node); - } - - div.removeAttribute("data-loaded"); - - if (currentAnnotationNode) { - this.annotationLayer.hide(); - } else if (this.annotationLayer) { - this.annotationLayer.cancel(); - this.annotationLayer = null; - } - - if (!currentZoomLayerNode) { - if (this.canvas) { - this.paintedViewportMap.delete(this.canvas); - this.canvas.width = 0; - this.canvas.height = 0; - delete this.canvas; - } - - this._resetZoomLayer(); - } - - if (this.svg) { - this.paintedViewportMap.delete(this.svg); - delete this.svg; - } - - this.loadingIconDiv = document.createElement("div"); - this.loadingIconDiv.className = "loadingIcon"; - div.appendChild(this.loadingIconDiv); - } - - update(scale, rotation) { - this.scale = scale || this.scale; - - if (typeof rotation !== "undefined") { - this.rotation = rotation; - } - - const totalRotation = (this.rotation + this.pdfPageRotate) % 360; - this.viewport = this.viewport.clone({ - scale: this.scale * _ui_utils.CSS_UNITS, - rotation: totalRotation - }); - - if (this.svg) { - this.cssTransform(this.svg, true); - this.eventBus.dispatch("pagerendered", { - source: this, - pageNumber: this.id, - cssTransform: true, - timestamp: performance.now() - }); - return; - } - - let isScalingRestricted = false; - - if (this.canvas && this.maxCanvasPixels > 0) { - const outputScale = this.outputScale; - - if ((Math.floor(this.viewport.width) * outputScale.sx | 0) * (Math.floor(this.viewport.height) * outputScale.sy | 0) > this.maxCanvasPixels) { - isScalingRestricted = true; - } - } - - if (this.canvas) { - if (this.useOnlyCssZoom || this.hasRestrictedScaling && isScalingRestricted) { - this.cssTransform(this.canvas, true); - this.eventBus.dispatch("pagerendered", { - source: this, - pageNumber: this.id, - cssTransform: true, - timestamp: performance.now() - }); - return; - } - - if (!this.zoomLayer && !this.canvas.hasAttribute("hidden")) { - this.zoomLayer = this.canvas.parentNode; - this.zoomLayer.style.position = "absolute"; - } - } - - if (this.zoomLayer) { - this.cssTransform(this.zoomLayer.firstChild); - } - - this.reset(true, true); - } - - cancelRendering(keepAnnotations = false) { - if (this.paintTask) { - this.paintTask.cancel(); - this.paintTask = null; - } - - this.resume = null; - - if (this.textLayer) { - this.textLayer.cancel(); - this.textLayer = null; - } - - if (!keepAnnotations && this.annotationLayer) { - this.annotationLayer.cancel(); - this.annotationLayer = null; - } - } - - cssTransform(target, redrawAnnotations = false) { - const width = this.viewport.width; - const height = this.viewport.height; - const div = this.div; - target.style.width = target.parentNode.style.width = div.style.width = Math.floor(width) + "px"; - target.style.height = target.parentNode.style.height = div.style.height = Math.floor(height) + "px"; - const relativeRotation = this.viewport.rotation - this.paintedViewportMap.get(target).rotation; - const absRotation = Math.abs(relativeRotation); - let scaleX = 1, - scaleY = 1; - - if (absRotation === 90 || absRotation === 270) { - scaleX = height / width; - scaleY = width / height; - } - - const cssTransform = "rotate(" + relativeRotation + "deg) " + "scale(" + scaleX + "," + scaleY + ")"; - target.style.transform = cssTransform; - - if (this.textLayer) { - const textLayerViewport = this.textLayer.viewport; - const textRelativeRotation = this.viewport.rotation - textLayerViewport.rotation; - const textAbsRotation = Math.abs(textRelativeRotation); - let scale = width / textLayerViewport.width; - - if (textAbsRotation === 90 || textAbsRotation === 270) { - scale = width / textLayerViewport.height; - } - - const textLayerDiv = this.textLayer.textLayerDiv; - let transX, transY; - - switch (textAbsRotation) { - case 0: - transX = transY = 0; - break; - - case 90: - transX = 0; - transY = "-" + textLayerDiv.style.height; - break; - - case 180: - transX = "-" + textLayerDiv.style.width; - transY = "-" + textLayerDiv.style.height; - break; - - case 270: - transX = "-" + textLayerDiv.style.width; - transY = 0; - break; - - default: - console.error("Bad rotation value."); - break; - } - - textLayerDiv.style.transform = "rotate(" + textAbsRotation + "deg) " + "scale(" + scale + ", " + scale + ") " + "translate(" + transX + ", " + transY + ")"; - textLayerDiv.style.transformOrigin = "0% 0%"; - } - - if (redrawAnnotations && this.annotationLayer) { - this.annotationLayer.render(this.viewport, "display"); - } - } - - get width() { - return this.viewport.width; - } - - get height() { - return this.viewport.height; - } - - getPagePoint(x, y) { - return this.viewport.convertToPdfPoint(x, y); - } - - draw() { - if (this.renderingState !== _pdf_rendering_queue.RenderingStates.INITIAL) { - console.error("Must be in new state before drawing"); - this.reset(); - } - - const { - div, - pdfPage - } = this; - - if (!pdfPage) { - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - - if (this.loadingIconDiv) { - div.removeChild(this.loadingIconDiv); - delete this.loadingIconDiv; - } - - return Promise.reject(new Error("pdfPage is not loaded")); - } - - this.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING; - const canvasWrapper = document.createElement("div"); - canvasWrapper.style.width = div.style.width; - canvasWrapper.style.height = div.style.height; - canvasWrapper.classList.add("canvasWrapper"); - - if (this.annotationLayer && this.annotationLayer.div) { - div.insertBefore(canvasWrapper, this.annotationLayer.div); - } else { - div.appendChild(canvasWrapper); - } - - let textLayer = null; - - if (this.textLayerMode !== _ui_utils.TextLayerMode.DISABLE && this.textLayerFactory) { - const textLayerDiv = document.createElement("div"); - textLayerDiv.className = "textLayer"; - textLayerDiv.style.width = canvasWrapper.style.width; - textLayerDiv.style.height = canvasWrapper.style.height; - - if (this.annotationLayer && this.annotationLayer.div) { - div.insertBefore(textLayerDiv, this.annotationLayer.div); - } else { - div.appendChild(textLayerDiv); - } - - textLayer = this.textLayerFactory.createTextLayerBuilder(textLayerDiv, this.id - 1, this.viewport, this.textLayerMode === _ui_utils.TextLayerMode.ENABLE_ENHANCE, this.eventBus); - } - - this.textLayer = textLayer; - let renderContinueCallback = null; - - if (this.renderingQueue) { - renderContinueCallback = cont => { - if (!this.renderingQueue.isHighestPriority(this)) { - this.renderingState = _pdf_rendering_queue.RenderingStates.PAUSED; - - this.resume = () => { - this.renderingState = _pdf_rendering_queue.RenderingStates.RUNNING; - cont(); - }; - - return; - } - - cont(); - }; - } - - const finishPaintTask = async error => { - if (paintTask === this.paintTask) { - this.paintTask = null; - } - - if (error instanceof _pdfjsLib.RenderingCancelledException) { - this.error = null; - return; - } - - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - - if (this.loadingIconDiv) { - div.removeChild(this.loadingIconDiv); - delete this.loadingIconDiv; - } - - this._resetZoomLayer(true); - - this.error = error; - this.stats = pdfPage.stats; - this.eventBus.dispatch("pagerendered", { - source: this, - pageNumber: this.id, - cssTransform: false, - timestamp: performance.now() - }); - - if (error) { - throw error; - } - }; - - const paintTask = this.renderer === _ui_utils.RendererType.SVG ? this.paintOnSvg(canvasWrapper) : this.paintOnCanvas(canvasWrapper); - paintTask.onRenderContinue = renderContinueCallback; - this.paintTask = paintTask; - const resultPromise = paintTask.promise.then(function () { - return finishPaintTask(null).then(function () { - if (textLayer) { - const readableStream = pdfPage.streamTextContent({ - normalizeWhitespace: true - }); - textLayer.setTextContentStream(readableStream); - textLayer.render(); - } - }); - }, function (reason) { - return finishPaintTask(reason); - }); - - if (this.annotationLayerFactory) { - if (!this.annotationLayer) { - this.annotationLayer = this.annotationLayerFactory.createAnnotationLayerBuilder(div, pdfPage, this.imageResourcesPath, this.renderInteractiveForms, this.l10n); - } - - this.annotationLayer.render(this.viewport, "display"); - } - - div.setAttribute("data-loaded", true); - this.eventBus.dispatch("pagerender", { - source: this, - pageNumber: this.id - }); - return resultPromise; - } - - paintOnCanvas(canvasWrapper) { - const renderCapability = (0, _pdfjsLib.createPromiseCapability)(); - const result = { - promise: renderCapability.promise, - - onRenderContinue(cont) { - cont(); - }, - - cancel() { - renderTask.cancel(); - } - - }; - const viewport = this.viewport; - const canvas = document.createElement("canvas"); - this.l10n.get("page_canvas", { - page: this.id - }, "Page {{page}}").then(msg => { - canvas.setAttribute("aria-label", msg); - }); - canvas.setAttribute("hidden", "hidden"); - let isCanvasHidden = true; - - const showCanvas = function () { - if (isCanvasHidden) { - canvas.removeAttribute("hidden"); - isCanvasHidden = false; - } - }; - - canvasWrapper.appendChild(canvas); - this.canvas = canvas; - canvas.mozOpaque = true; - const ctx = canvas.getContext("2d", { - alpha: false - }); - const outputScale = (0, _ui_utils.getOutputScale)(ctx); - this.outputScale = outputScale; - - if (this.useOnlyCssZoom) { - const actualSizeViewport = viewport.clone({ - scale: _ui_utils.CSS_UNITS - }); - outputScale.sx *= actualSizeViewport.width / viewport.width; - outputScale.sy *= actualSizeViewport.height / viewport.height; - outputScale.scaled = true; - } - - if (this.maxCanvasPixels > 0) { - const pixelsInViewport = viewport.width * viewport.height; - const maxScale = Math.sqrt(this.maxCanvasPixels / pixelsInViewport); - - if (outputScale.sx > maxScale || outputScale.sy > maxScale) { - outputScale.sx = maxScale; - outputScale.sy = maxScale; - outputScale.scaled = true; - this.hasRestrictedScaling = true; - } else { - this.hasRestrictedScaling = false; - } - } - - const sfx = (0, _ui_utils.approximateFraction)(outputScale.sx); - const sfy = (0, _ui_utils.approximateFraction)(outputScale.sy); - canvas.width = (0, _ui_utils.roundToDivide)(viewport.width * outputScale.sx, sfx[0]); - canvas.height = (0, _ui_utils.roundToDivide)(viewport.height * outputScale.sy, sfy[0]); - canvas.style.width = (0, _ui_utils.roundToDivide)(viewport.width, sfx[1]) + "px"; - canvas.style.height = (0, _ui_utils.roundToDivide)(viewport.height, sfy[1]) + "px"; - this.paintedViewportMap.set(canvas, viewport); - const transform = !outputScale.scaled ? null : [outputScale.sx, 0, 0, outputScale.sy, 0, 0]; - const renderContext = { - canvasContext: ctx, - transform, - viewport: this.viewport, - enableWebGL: this.enableWebGL, - renderInteractiveForms: this.renderInteractiveForms - }; - const renderTask = this.pdfPage.render(renderContext); - - renderTask.onContinue = function (cont) { - showCanvas(); - - if (result.onRenderContinue) { - result.onRenderContinue(cont); - } else { - cont(); - } - }; - - renderTask.promise.then(function () { - showCanvas(); - renderCapability.resolve(undefined); - }, function (error) { - showCanvas(); - renderCapability.reject(error); - }); - return result; - } - - paintOnSvg(wrapper) { - let cancelled = false; - - const ensureNotCancelled = () => { - if (cancelled) { - throw new _pdfjsLib.RenderingCancelledException(`Rendering cancelled, page ${this.id}`, "svg"); - } - }; - - const pdfPage = this.pdfPage; - const actualSizeViewport = this.viewport.clone({ - scale: _ui_utils.CSS_UNITS - }); - const promise = pdfPage.getOperatorList().then(opList => { - ensureNotCancelled(); - const svgGfx = new _pdfjsLib.SVGGraphics(pdfPage.commonObjs, pdfPage.objs); - return svgGfx.getSVG(opList, actualSizeViewport).then(svg => { - ensureNotCancelled(); - this.svg = svg; - this.paintedViewportMap.set(svg, actualSizeViewport); - svg.style.width = wrapper.style.width; - svg.style.height = wrapper.style.height; - this.renderingState = _pdf_rendering_queue.RenderingStates.FINISHED; - wrapper.appendChild(svg); - }); - }); - return { - promise, - - onRenderContinue(cont) { - cont(); - }, - - cancel() { - cancelled = true; - } - - }; - } - - setPageLabel(label) { - this.pageLabel = typeof label === "string" ? label : null; - - if (this.pageLabel !== null) { - this.div.setAttribute("data-page-label", this.pageLabel); - } else { - this.div.removeAttribute("data-page-label"); - } - } - -} - -exports.PDFPageView = PDFPageView; - -/***/ }), -/* 28 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.DefaultTextLayerFactory = exports.TextLayerBuilder = void 0; - -var _pdfjsLib = __webpack_require__(5); - -const EXPAND_DIVS_TIMEOUT = 300; - -class TextLayerBuilder { - constructor({ - textLayerDiv, - eventBus, - pageIndex, - viewport, - findController = null, - enhanceTextSelection = false - }) { - this.textLayerDiv = textLayerDiv; - this.eventBus = eventBus; - this.textContent = null; - this.textContentItemsStr = []; - this.textContentStream = null; - this.renderingDone = false; - this.pageIdx = pageIndex; - this.pageNumber = this.pageIdx + 1; - this.matches = []; - this.viewport = viewport; - this.textDivs = []; - this.findController = findController; - this.textLayerRenderTask = null; - this.enhanceTextSelection = enhanceTextSelection; - this._onUpdateTextLayerMatches = null; - - this._bindMouse(); - } - - _finishRendering() { - this.renderingDone = true; - - if (!this.enhanceTextSelection) { - const endOfContent = document.createElement("div"); - endOfContent.className = "endOfContent"; - this.textLayerDiv.appendChild(endOfContent); - } - - this.eventBus.dispatch("textlayerrendered", { - source: this, - pageNumber: this.pageNumber, - numTextDivs: this.textDivs.length - }); - } - - render(timeout = 0) { - if (!(this.textContent || this.textContentStream) || this.renderingDone) { - return; - } - - this.cancel(); - this.textDivs = []; - const textLayerFrag = document.createDocumentFragment(); - this.textLayerRenderTask = (0, _pdfjsLib.renderTextLayer)({ - textContent: this.textContent, - textContentStream: this.textContentStream, - container: textLayerFrag, - viewport: this.viewport, - textDivs: this.textDivs, - textContentItemsStr: this.textContentItemsStr, - timeout, - enhanceTextSelection: this.enhanceTextSelection - }); - this.textLayerRenderTask.promise.then(() => { - this.textLayerDiv.appendChild(textLayerFrag); - - this._finishRendering(); - - this._updateMatches(); - }, function (reason) {}); - - if (!this._onUpdateTextLayerMatches) { - this._onUpdateTextLayerMatches = evt => { - if (evt.pageIndex === this.pageIdx || evt.pageIndex === -1) { - this._updateMatches(); - } - }; - - this.eventBus._on("updatetextlayermatches", this._onUpdateTextLayerMatches); - } - } - - cancel() { - if (this.textLayerRenderTask) { - this.textLayerRenderTask.cancel(); - this.textLayerRenderTask = null; - } - - if (this._onUpdateTextLayerMatches) { - this.eventBus._off("updatetextlayermatches", this._onUpdateTextLayerMatches); - - this._onUpdateTextLayerMatches = null; - } - } - - setTextContentStream(readableStream) { - this.cancel(); - this.textContentStream = readableStream; - } - - setTextContent(textContent) { - this.cancel(); - this.textContent = textContent; - } - - _convertMatches(matches, matchesLength) { - if (!matches) { - return []; - } - - const { - findController, - textContentItemsStr - } = this; - let i = 0, - iIndex = 0; - const end = textContentItemsStr.length - 1; - const queryLen = findController.state.query.length; - const result = []; - - for (let m = 0, mm = matches.length; m < mm; m++) { - let matchIdx = matches[m]; - - while (i !== end && matchIdx >= iIndex + textContentItemsStr[i].length) { - iIndex += textContentItemsStr[i].length; - i++; - } - - if (i === textContentItemsStr.length) { - console.error("Could not find a matching mapping"); - } - - const match = { - begin: { - divIdx: i, - offset: matchIdx - iIndex - } - }; - - if (matchesLength) { - matchIdx += matchesLength[m]; - } else { - matchIdx += queryLen; - } - - while (i !== end && matchIdx > iIndex + textContentItemsStr[i].length) { - iIndex += textContentItemsStr[i].length; - i++; - } - - match.end = { - divIdx: i, - offset: matchIdx - iIndex - }; - result.push(match); - } - - return result; - } - - _renderMatches(matches) { - if (matches.length === 0) { - return; - } - - const { - findController, - pageIdx, - textContentItemsStr, - textDivs - } = this; - const isSelectedPage = pageIdx === findController.selected.pageIdx; - const selectedMatchIdx = findController.selected.matchIdx; - const highlightAll = findController.state.highlightAll; - let prevEnd = null; - const infinity = { - divIdx: -1, - offset: undefined - }; - - function beginText(begin, className) { - const divIdx = begin.divIdx; - textDivs[divIdx].textContent = ""; - appendTextToDiv(divIdx, 0, begin.offset, className); - } - - function appendTextToDiv(divIdx, fromOffset, toOffset, className) { - const div = textDivs[divIdx]; - const content = textContentItemsStr[divIdx].substring(fromOffset, toOffset); - const node = document.createTextNode(content); - - if (className) { - const span = document.createElement("span"); - span.className = className; - span.appendChild(node); - div.appendChild(span); - return; - } - - div.appendChild(node); - } - - let i0 = selectedMatchIdx, - i1 = i0 + 1; - - if (highlightAll) { - i0 = 0; - i1 = matches.length; - } else if (!isSelectedPage) { - return; - } - - for (let i = i0; i < i1; i++) { - const match = matches[i]; - const begin = match.begin; - const end = match.end; - const isSelected = isSelectedPage && i === selectedMatchIdx; - const highlightSuffix = isSelected ? " selected" : ""; - - if (isSelected) { - findController.scrollMatchIntoView({ - element: textDivs[begin.divIdx], - pageIndex: pageIdx, - matchIndex: selectedMatchIdx - }); - } - - if (!prevEnd || begin.divIdx !== prevEnd.divIdx) { - if (prevEnd !== null) { - appendTextToDiv(prevEnd.divIdx, prevEnd.offset, infinity.offset); - } - - beginText(begin); - } else { - appendTextToDiv(prevEnd.divIdx, prevEnd.offset, begin.offset); - } - - if (begin.divIdx === end.divIdx) { - appendTextToDiv(begin.divIdx, begin.offset, end.offset, "highlight" + highlightSuffix); - } else { - appendTextToDiv(begin.divIdx, begin.offset, infinity.offset, "highlight begin" + highlightSuffix); - - for (let n0 = begin.divIdx + 1, n1 = end.divIdx; n0 < n1; n0++) { - textDivs[n0].className = "highlight middle" + highlightSuffix; - } - - beginText(end, "highlight end" + highlightSuffix); - } - - prevEnd = end; - } - - if (prevEnd) { - appendTextToDiv(prevEnd.divIdx, prevEnd.offset, infinity.offset); - } - } - - _updateMatches() { - if (!this.renderingDone) { - return; - } - - const { - findController, - matches, - pageIdx, - textContentItemsStr, - textDivs - } = this; - let clearedUntilDivIdx = -1; - - for (let i = 0, ii = matches.length; i < ii; i++) { - const match = matches[i]; - const begin = Math.max(clearedUntilDivIdx, match.begin.divIdx); - - for (let n = begin, end = match.end.divIdx; n <= end; n++) { - const div = textDivs[n]; - div.textContent = textContentItemsStr[n]; - div.className = ""; - } - - clearedUntilDivIdx = match.end.divIdx + 1; - } - - if (!findController || !findController.highlightMatches) { - return; - } - - const pageMatches = findController.pageMatches[pageIdx] || null; - const pageMatchesLength = findController.pageMatchesLength[pageIdx] || null; - this.matches = this._convertMatches(pageMatches, pageMatchesLength); - - this._renderMatches(this.matches); - } - - _bindMouse() { - const div = this.textLayerDiv; - let expandDivsTimer = null; - div.addEventListener("mousedown", evt => { - if (this.enhanceTextSelection && this.textLayerRenderTask) { - this.textLayerRenderTask.expandTextDivs(true); - - if (expandDivsTimer) { - clearTimeout(expandDivsTimer); - expandDivsTimer = null; - } - - return; - } - - const end = div.querySelector(".endOfContent"); - - if (!end) { - return; - } - - let adjustTop = evt.target !== div; - adjustTop = adjustTop && window.getComputedStyle(end).getPropertyValue("-moz-user-select") !== "none"; - - if (adjustTop) { - const divBounds = div.getBoundingClientRect(); - const r = Math.max(0, (evt.pageY - divBounds.top) / divBounds.height); - end.style.top = (r * 100).toFixed(2) + "%"; - } - - end.classList.add("active"); - }); - div.addEventListener("mouseup", () => { - if (this.enhanceTextSelection && this.textLayerRenderTask) { - expandDivsTimer = setTimeout(() => { - if (this.textLayerRenderTask) { - this.textLayerRenderTask.expandTextDivs(false); - } - - expandDivsTimer = null; - }, EXPAND_DIVS_TIMEOUT); - return; - } - - const end = div.querySelector(".endOfContent"); - - if (!end) { - return; - } - - end.style.top = ""; - end.classList.remove("active"); - }); - } - -} - -exports.TextLayerBuilder = TextLayerBuilder; - -class DefaultTextLayerFactory { - createTextLayerBuilder(textLayerDiv, pageIndex, viewport, enhanceTextSelection = false, eventBus) { - return new TextLayerBuilder({ - textLayerDiv, - pageIndex, - viewport, - enhanceTextSelection, - eventBus - }); - } - -} - -exports.DefaultTextLayerFactory = DefaultTextLayerFactory; - -/***/ }), -/* 29 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.SecondaryToolbar = void 0; - -var _ui_utils = __webpack_require__(2); - -var _pdf_cursor_tools = __webpack_require__(6); - -var _pdf_single_page_viewer = __webpack_require__(30); - -class SecondaryToolbar { - constructor(options, mainContainer, eventBus) { - this.toolbar = options.toolbar; - this.toggleButton = options.toggleButton; - this.toolbarButtonContainer = options.toolbarButtonContainer; - this.buttons = [{ - element: options.presentationModeButton, - eventName: "presentationmode", - close: true - }, { - element: options.openFileButton, - eventName: "openfile", - close: true - }, { - element: options.printButton, - eventName: "print", - close: true - }, { - element: options.downloadButton, - eventName: "download", - close: true - }, { - element: options.viewBookmarkButton, - eventName: null, - close: true - }, { - element: options.firstPageButton, - eventName: "firstpage", - close: true - }, { - element: options.lastPageButton, - eventName: "lastpage", - close: true - }, { - element: options.pageRotateCwButton, - eventName: "rotatecw", - close: false - }, { - element: options.pageRotateCcwButton, - eventName: "rotateccw", - close: false - }, { - element: options.cursorSelectToolButton, - eventName: "switchcursortool", - eventDetails: { - tool: _pdf_cursor_tools.CursorTool.SELECT - }, - close: true - }, { - element: options.cursorHandToolButton, - eventName: "switchcursortool", - eventDetails: { - tool: _pdf_cursor_tools.CursorTool.HAND - }, - close: true - }, { - element: options.scrollVerticalButton, - eventName: "switchscrollmode", - eventDetails: { - mode: _ui_utils.ScrollMode.VERTICAL - }, - close: true - }, { - element: options.scrollHorizontalButton, - eventName: "switchscrollmode", - eventDetails: { - mode: _ui_utils.ScrollMode.HORIZONTAL - }, - close: true - }, { - element: options.scrollWrappedButton, - eventName: "switchscrollmode", - eventDetails: { - mode: _ui_utils.ScrollMode.WRAPPED - }, - close: true - }, { - element: options.spreadNoneButton, - eventName: "switchspreadmode", - eventDetails: { - mode: _ui_utils.SpreadMode.NONE - }, - close: true - }, { - element: options.spreadOddButton, - eventName: "switchspreadmode", - eventDetails: { - mode: _ui_utils.SpreadMode.ODD - }, - close: true - }, { - element: options.spreadEvenButton, - eventName: "switchspreadmode", - eventDetails: { - mode: _ui_utils.SpreadMode.EVEN - }, - close: true - }, { - element: options.documentPropertiesButton, - eventName: "documentproperties", - close: true - }]; - this.items = { - firstPage: options.firstPageButton, - lastPage: options.lastPageButton, - pageRotateCw: options.pageRotateCwButton, - pageRotateCcw: options.pageRotateCcwButton - }; - this.mainContainer = mainContainer; - this.eventBus = eventBus; - this.opened = false; - this.containerHeight = null; - this.previousContainerHeight = null; - this.reset(); - - this._bindClickListeners(); - - this._bindCursorToolsListener(options); - - this._bindScrollModeListener(options); - - this._bindSpreadModeListener(options); - - this.eventBus._on("resize", this._setMaxHeight.bind(this)); - - this.eventBus._on("baseviewerinit", evt => { - if (evt.source instanceof _pdf_single_page_viewer.PDFSinglePageViewer) { - this.toolbarButtonContainer.classList.add("hiddenScrollModeButtons", "hiddenSpreadModeButtons"); - } else { - this.toolbarButtonContainer.classList.remove("hiddenScrollModeButtons", "hiddenSpreadModeButtons"); - } - }); - } - - get isOpen() { - return this.opened; - } - - setPageNumber(pageNumber) { - this.pageNumber = pageNumber; - - this._updateUIState(); - } - - setPagesCount(pagesCount) { - this.pagesCount = pagesCount; - - this._updateUIState(); - } - - reset() { - this.pageNumber = 0; - this.pagesCount = 0; - - this._updateUIState(); - - this.eventBus.dispatch("secondarytoolbarreset", { - source: this - }); - } - - _updateUIState() { - this.items.firstPage.disabled = this.pageNumber <= 1; - this.items.lastPage.disabled = this.pageNumber >= this.pagesCount; - this.items.pageRotateCw.disabled = this.pagesCount === 0; - this.items.pageRotateCcw.disabled = this.pagesCount === 0; - } - - _bindClickListeners() { - this.toggleButton.addEventListener("click", this.toggle.bind(this)); - - for (const { - element, - eventName, - close, - eventDetails - } of this.buttons) { - element.addEventListener("click", evt => { - if (eventName !== null) { - const details = { - source: this - }; - - for (const property in eventDetails) { - details[property] = eventDetails[property]; - } - - this.eventBus.dispatch(eventName, details); - } - - if (close) { - this.close(); - } - }); - } - } - - _bindCursorToolsListener(buttons) { - this.eventBus._on("cursortoolchanged", function ({ - tool - }) { - buttons.cursorSelectToolButton.classList.toggle("toggled", tool === _pdf_cursor_tools.CursorTool.SELECT); - buttons.cursorHandToolButton.classList.toggle("toggled", tool === _pdf_cursor_tools.CursorTool.HAND); - }); - } - - _bindScrollModeListener(buttons) { - function scrollModeChanged({ - mode - }) { - buttons.scrollVerticalButton.classList.toggle("toggled", mode === _ui_utils.ScrollMode.VERTICAL); - buttons.scrollHorizontalButton.classList.toggle("toggled", mode === _ui_utils.ScrollMode.HORIZONTAL); - buttons.scrollWrappedButton.classList.toggle("toggled", mode === _ui_utils.ScrollMode.WRAPPED); - const isScrollModeHorizontal = mode === _ui_utils.ScrollMode.HORIZONTAL; - buttons.spreadNoneButton.disabled = isScrollModeHorizontal; - buttons.spreadOddButton.disabled = isScrollModeHorizontal; - buttons.spreadEvenButton.disabled = isScrollModeHorizontal; - } - - this.eventBus._on("scrollmodechanged", scrollModeChanged); - - this.eventBus._on("secondarytoolbarreset", evt => { - if (evt.source === this) { - scrollModeChanged({ - mode: _ui_utils.ScrollMode.VERTICAL - }); - } - }); - } - - _bindSpreadModeListener(buttons) { - function spreadModeChanged({ - mode - }) { - buttons.spreadNoneButton.classList.toggle("toggled", mode === _ui_utils.SpreadMode.NONE); - buttons.spreadOddButton.classList.toggle("toggled", mode === _ui_utils.SpreadMode.ODD); - buttons.spreadEvenButton.classList.toggle("toggled", mode === _ui_utils.SpreadMode.EVEN); - } - - this.eventBus._on("spreadmodechanged", spreadModeChanged); - - this.eventBus._on("secondarytoolbarreset", evt => { - if (evt.source === this) { - spreadModeChanged({ - mode: _ui_utils.SpreadMode.NONE - }); - } - }); - } - - open() { - if (this.opened) { - return; - } - - this.opened = true; - - this._setMaxHeight(); - - this.toggleButton.classList.add("toggled"); - this.toolbar.classList.remove("hidden"); - } - - close() { - if (!this.opened) { - return; - } - - this.opened = false; - this.toolbar.classList.add("hidden"); - this.toggleButton.classList.remove("toggled"); - } - - toggle() { - if (this.opened) { - this.close(); - } else { - this.open(); - } - } - - _setMaxHeight() { - if (!this.opened) { - return; - } - - this.containerHeight = this.mainContainer.clientHeight; - - if (this.containerHeight === this.previousContainerHeight) { - return; - } - - this.toolbarButtonContainer.style.maxHeight = `${this.containerHeight - _ui_utils.SCROLLBAR_PADDING}px`; - this.previousContainerHeight = this.containerHeight; - } - -} - -exports.SecondaryToolbar = SecondaryToolbar; - -/***/ }), -/* 30 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFSinglePageViewer = void 0; - -var _base_viewer = __webpack_require__(25); - -var _pdfjsLib = __webpack_require__(5); - -class PDFSinglePageViewer extends _base_viewer.BaseViewer { - constructor(options) { - super(options); - - this.eventBus._on("pagesinit", evt => { - this._ensurePageViewVisible(); - }); - } - - get _viewerElement() { - return (0, _pdfjsLib.shadow)(this, "_viewerElement", this._shadowViewer); - } - - _resetView() { - super._resetView(); - - this._previousPageNumber = 1; - this._shadowViewer = document.createDocumentFragment(); - this._updateScrollDown = null; - } - - _ensurePageViewVisible() { - const pageView = this._pages[this._currentPageNumber - 1]; - const previousPageView = this._pages[this._previousPageNumber - 1]; - const viewerNodes = this.viewer.childNodes; - - switch (viewerNodes.length) { - case 0: - this.viewer.appendChild(pageView.div); - break; - - case 1: - if (viewerNodes[0] !== previousPageView.div) { - throw new Error("_ensurePageViewVisible: Unexpected previously visible page."); - } - - if (pageView === previousPageView) { - break; - } - - this._shadowViewer.appendChild(previousPageView.div); - - this.viewer.appendChild(pageView.div); - this.container.scrollTop = 0; - break; - - default: - throw new Error("_ensurePageViewVisible: Only one page should be visible at a time."); - } - - this._previousPageNumber = this._currentPageNumber; - } - - _scrollUpdate() { - if (this._updateScrollDown) { - this._updateScrollDown(); - } - - super._scrollUpdate(); - } - - _scrollIntoView({ - pageDiv, - pageSpot = null, - pageNumber = null - }) { - if (pageNumber) { - this._setCurrentPageNumber(pageNumber); - } - - const scrolledDown = this._currentPageNumber >= this._previousPageNumber; - - this._ensurePageViewVisible(); - - this.update(); - - super._scrollIntoView({ - pageDiv, - pageSpot, - pageNumber - }); - - this._updateScrollDown = () => { - this.scroll.down = scrolledDown; - this._updateScrollDown = null; - }; - } - - _getVisiblePages() { - return this._getCurrentVisiblePage(); - } - - _updateHelper(visiblePages) {} - - get _isScrollModeHorizontal() { - return (0, _pdfjsLib.shadow)(this, "_isScrollModeHorizontal", false); - } - - _updateScrollMode() {} - - _updateSpreadMode() {} - -} - -exports.PDFSinglePageViewer = PDFSinglePageViewer; - -/***/ }), -/* 31 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.Toolbar = void 0; - -var _ui_utils = __webpack_require__(2); - -const PAGE_NUMBER_LOADING_INDICATOR = "visiblePageIsLoading"; -const SCALE_SELECT_CONTAINER_WIDTH = 140; -const SCALE_SELECT_WIDTH = 162; - -class Toolbar { - constructor(options, eventBus, l10n = _ui_utils.NullL10n) { - this.toolbar = options.container; - this.eventBus = eventBus; - this.l10n = l10n; - this.buttons = [{ - element: options.previous, - eventName: "previouspage" - }, { - element: options.next, - eventName: "nextpage" - }, { - element: options.zoomIn, - eventName: "zoomin" - }, { - element: options.zoomOut, - eventName: "zoomout" - }, { - element: options.openFile, - eventName: "openfile" - }, { - element: options.print, - eventName: "print" - }, { - element: options.presentationModeButton, - eventName: "presentationmode" - }, { - element: options.download, - eventName: "download" - }, { - element: options.viewBookmark, - eventName: null - }]; - this.items = { - numPages: options.numPages, - pageNumber: options.pageNumber, - scaleSelectContainer: options.scaleSelectContainer, - scaleSelect: options.scaleSelect, - customScaleOption: options.customScaleOption, - previous: options.previous, - next: options.next, - zoomIn: options.zoomIn, - zoomOut: options.zoomOut - }; - this._wasLocalized = false; - this.reset(); - - this._bindListeners(); - } - - setPageNumber(pageNumber, pageLabel) { - this.pageNumber = pageNumber; - this.pageLabel = pageLabel; - - this._updateUIState(false); - } - - setPagesCount(pagesCount, hasPageLabels) { - this.pagesCount = pagesCount; - this.hasPageLabels = hasPageLabels; - - this._updateUIState(true); - } - - setPageScale(pageScaleValue, pageScale) { - this.pageScaleValue = (pageScaleValue || pageScale).toString(); - this.pageScale = pageScale; - - this._updateUIState(false); - } - - reset() { - this.pageNumber = 0; - this.pageLabel = null; - this.hasPageLabels = false; - this.pagesCount = 0; - this.pageScaleValue = _ui_utils.DEFAULT_SCALE_VALUE; - this.pageScale = _ui_utils.DEFAULT_SCALE; - - this._updateUIState(true); - - this.updateLoadingIndicatorState(); - } - - _bindListeners() { - const { - pageNumber, - scaleSelect - } = this.items; - const self = this; - - for (const { - element, - eventName - } of this.buttons) { - element.addEventListener("click", evt => { - if (eventName !== null) { - this.eventBus.dispatch(eventName, { - source: this - }); - } - }); - } - - pageNumber.addEventListener("click", function () { - this.select(); - }); - pageNumber.addEventListener("change", function () { - self.eventBus.dispatch("pagenumberchanged", { - source: self, - value: this.value - }); - }); - scaleSelect.addEventListener("change", function () { - if (this.value === "custom") { - return; - } - - self.eventBus.dispatch("scalechanged", { - source: self, - value: this.value - }); - }); - scaleSelect.oncontextmenu = _ui_utils.noContextMenuHandler; - - this.eventBus._on("localized", () => { - this._wasLocalized = true; - - this._adjustScaleWidth(); - - this._updateUIState(true); - }); - } - - _updateUIState(resetNumPages = false) { - if (!this._wasLocalized) { - return; - } - - const { - pageNumber, - pagesCount, - pageScaleValue, - pageScale, - items - } = this; - - if (resetNumPages) { - if (this.hasPageLabels) { - items.pageNumber.type = "text"; - } else { - items.pageNumber.type = "number"; - this.l10n.get("of_pages", { - pagesCount - }, "of {{pagesCount}}").then(msg => { - items.numPages.textContent = msg; - }); - } - - items.pageNumber.max = pagesCount; - } - - if (this.hasPageLabels) { - items.pageNumber.value = this.pageLabel; - this.l10n.get("page_of_pages", { - pageNumber, - pagesCount - }, "({{pageNumber}} of {{pagesCount}})").then(msg => { - items.numPages.textContent = msg; - }); - } else { - items.pageNumber.value = pageNumber; - } - - items.previous.disabled = pageNumber <= 1; - items.next.disabled = pageNumber >= pagesCount; - items.zoomOut.disabled = pageScale <= _ui_utils.MIN_SCALE; - items.zoomIn.disabled = pageScale >= _ui_utils.MAX_SCALE; - const customScale = Math.round(pageScale * 10000) / 100; - this.l10n.get("page_scale_percent", { - scale: customScale - }, "{{scale}}%").then(msg => { - let predefinedValueFound = false; - - for (const option of items.scaleSelect.options) { - if (option.value !== pageScaleValue) { - option.selected = false; - continue; - } - - option.selected = true; - predefinedValueFound = true; - } - - if (!predefinedValueFound) { - items.customScaleOption.textContent = msg; - items.customScaleOption.selected = true; - } - }); - } - - updateLoadingIndicatorState(loading = false) { - const pageNumberInput = this.items.pageNumber; - pageNumberInput.classList.toggle(PAGE_NUMBER_LOADING_INDICATOR, loading); - } - - async _adjustScaleWidth() { - const { - items, - l10n - } = this; - const predefinedValuesPromise = Promise.all([l10n.get("page_scale_auto", null, "Automatic Zoom"), l10n.get("page_scale_actual", null, "Actual Size"), l10n.get("page_scale_fit", null, "Page Fit"), l10n.get("page_scale_width", null, "Page Width")]); - let canvas = document.createElement("canvas"); - canvas.mozOpaque = true; - let ctx = canvas.getContext("2d", { - alpha: false - }); - await _ui_utils.animationStarted; - const { - fontSize, - fontFamily - } = getComputedStyle(items.scaleSelect); - ctx.font = `${fontSize} ${fontFamily}`; - let maxWidth = 0; - - for (const predefinedValue of await predefinedValuesPromise) { - const { - width - } = ctx.measureText(predefinedValue); - - if (width > maxWidth) { - maxWidth = width; - } - } - - const overflow = SCALE_SELECT_WIDTH - SCALE_SELECT_CONTAINER_WIDTH; - maxWidth += 1.5 * overflow; - - if (maxWidth > SCALE_SELECT_CONTAINER_WIDTH) { - items.scaleSelect.style.width = `${maxWidth + overflow}px`; - items.scaleSelectContainer.style.width = `${maxWidth}px`; - } - - canvas.width = 0; - canvas.height = 0; - canvas = ctx = null; - } - -} - -exports.Toolbar = Toolbar; - -/***/ }), -/* 32 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.ViewHistory = void 0; -const DEFAULT_VIEW_HISTORY_CACHE_SIZE = 20; - -class ViewHistory { - constructor(fingerprint, cacheSize = DEFAULT_VIEW_HISTORY_CACHE_SIZE) { - this.fingerprint = fingerprint; - this.cacheSize = cacheSize; - this._initializedPromise = this._readFromStorage().then(databaseStr => { - const database = JSON.parse(databaseStr || "{}"); - let index = -1; - - if (!Array.isArray(database.files)) { - database.files = []; - } else { - while (database.files.length >= this.cacheSize) { - database.files.shift(); - } - - for (let i = 0, ii = database.files.length; i < ii; i++) { - const branch = database.files[i]; - - if (branch.fingerprint === this.fingerprint) { - index = i; - break; - } - } - } - - if (index === -1) { - index = database.files.push({ - fingerprint: this.fingerprint - }) - 1; - } - - this.file = database.files[index]; - this.database = database; - }); - } - - async _writeToStorage() { - const databaseStr = JSON.stringify(this.database); - localStorage.setItem("pdfjs.history", databaseStr); - } - - async _readFromStorage() { - return localStorage.getItem("pdfjs.history"); - } - - async set(name, val) { - await this._initializedPromise; - this.file[name] = val; - return this._writeToStorage(); - } - - async setMultiple(properties) { - await this._initializedPromise; - - for (const name in properties) { - this.file[name] = properties[name]; - } - - return this._writeToStorage(); - } - - async get(name, defaultValue) { - await this._initializedPromise; - const val = this.file[name]; - return val !== undefined ? val : defaultValue; - } - - async getMultiple(properties) { - await this._initializedPromise; - const values = Object.create(null); - - for (const name in properties) { - const val = this.file[name]; - values[name] = val !== undefined ? val : properties[name]; - } - - return values; - } - -} - -exports.ViewHistory = ViewHistory; - -/***/ }), -/* 33 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GenericCom = void 0; - -var _app = __webpack_require__(1); - -var _preferences = __webpack_require__(34); - -var _download_manager = __webpack_require__(35); - -var _genericl10n = __webpack_require__(36); - -; -const GenericCom = {}; -exports.GenericCom = GenericCom; - -class GenericPreferences extends _preferences.BasePreferences { - async _writeToStorage(prefObj) { - localStorage.setItem("pdfjs.preferences", JSON.stringify(prefObj)); - } - - async _readFromStorage(prefObj) { - return JSON.parse(localStorage.getItem("pdfjs.preferences")); - } - -} - -class GenericExternalServices extends _app.DefaultExternalServices { - static createDownloadManager(options) { - return new _download_manager.DownloadManager(options); - } - - static createPreferences() { - return new GenericPreferences(); - } - - static createL10n({ - locale = "en-US" - }) { - return new _genericl10n.GenericL10n(locale); - } - -} - -_app.PDFViewerApplication.externalServices = GenericExternalServices; - -/***/ }), -/* 34 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.BasePreferences = void 0; - -var _app_options = __webpack_require__(3); - -let defaultPreferences = null; - -function getDefaultPreferences() { - if (!defaultPreferences) { - defaultPreferences = Promise.resolve({ - "cursorToolOnLoad": 0, - "defaultZoomValue": "", - "disablePageLabels": false, - "enablePermissions": false, - "enablePrintAutoRotate": false, - "enableWebGL": false, - "externalLinkTarget": 0, - "historyUpdateUrl": false, - "ignoreDestinationZoom": false, - "pdfBugEnabled": false, - "renderer": "canvas", - "renderInteractiveForms": false, - "sidebarViewOnLoad": -1, - "scrollModeOnLoad": -1, - "spreadModeOnLoad": -1, - "textLayerMode": 1, - "useOnlyCssZoom": false, - "viewOnLoad": 0, - "disableAutoFetch": false, - "disableFontFace": false, - "disableRange": false, - "disableStream": false - }); - } - - return defaultPreferences; -} - -class BasePreferences { - constructor() { - if (this.constructor === BasePreferences) { - throw new Error("Cannot initialize BasePreferences."); - } - - this.prefs = null; - this._initializedPromise = getDefaultPreferences().then(defaults => { - Object.defineProperty(this, "defaults", { - value: Object.freeze(defaults), - writable: false, - enumerable: true, - configurable: false - }); - this.prefs = Object.assign(Object.create(null), defaults); - return this._readFromStorage(defaults); - }).then(prefs => { - if (!prefs) { - return; - } - - for (const name in prefs) { - const defaultValue = this.defaults[name], - prefValue = prefs[name]; - - if (defaultValue === undefined || typeof prefValue !== typeof defaultValue) { - continue; - } - - this.prefs[name] = prefValue; - } - }); - } - - async _writeToStorage(prefObj) { - throw new Error("Not implemented: _writeToStorage"); - } - - async _readFromStorage(prefObj) { - throw new Error("Not implemented: _readFromStorage"); - } - - async reset() { - await this._initializedPromise; - this.prefs = Object.assign(Object.create(null), this.defaults); - return this._writeToStorage(this.defaults); - } - - async set(name, value) { - await this._initializedPromise; - const defaultValue = this.defaults[name]; - - if (defaultValue === undefined) { - throw new Error(`Set preference: "${name}" is undefined.`); - } else if (value === undefined) { - throw new Error("Set preference: no value is specified."); - } - - const valueType = typeof value; - const defaultType = typeof defaultValue; - - if (valueType !== defaultType) { - if (valueType === "number" && defaultType === "string") { - value = value.toString(); - } else { - throw new Error(`Set preference: "${value}" is a ${valueType}, ` + `expected a ${defaultType}.`); - } - } else { - if (valueType === "number" && !Number.isInteger(value)) { - throw new Error(`Set preference: "${value}" must be an integer.`); - } - } - - this.prefs[name] = value; - return this._writeToStorage(this.prefs); - } - - async get(name) { - await this._initializedPromise; - const defaultValue = this.defaults[name]; - - if (defaultValue === undefined) { - throw new Error(`Get preference: "${name}" is undefined.`); - } else { - const prefValue = this.prefs[name]; - - if (prefValue !== undefined) { - return prefValue; - } - } - - return defaultValue; - } - - async getAll() { - await this._initializedPromise; - return Object.assign(Object.create(null), this.defaults, this.prefs); - } - -} - -exports.BasePreferences = BasePreferences; - -/***/ }), -/* 35 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.DownloadManager = void 0; - -var _pdfjsLib = __webpack_require__(5); - -var _viewer_compatibility = __webpack_require__(4); - -; -const DISABLE_CREATE_OBJECT_URL = _viewer_compatibility.viewerCompatibilityParams.disableCreateObjectURL || false; - -function download(blobUrl, filename) { - const a = document.createElement("a"); - - if (!a.click) { - throw new Error('DownloadManager: "a.click()" is not supported.'); - } - - a.href = blobUrl; - a.target = "_parent"; - - if ("download" in a) { - a.download = filename; - } - - (document.body || document.documentElement).appendChild(a); - a.click(); - a.remove(); -} - -class DownloadManager { - constructor({ - disableCreateObjectURL = DISABLE_CREATE_OBJECT_URL - }) { - this.disableCreateObjectURL = disableCreateObjectURL; - } - - downloadUrl(url, filename) { - if (!(0, _pdfjsLib.createValidAbsoluteUrl)(url, "http://example.com")) { - return; - } - - download(url + "#pdfjs.action=download", filename); - } - - downloadData(data, filename, contentType) { - if (navigator.msSaveBlob) { - navigator.msSaveBlob(new Blob([data], { - type: contentType - }), filename); - return; - } - - const blobUrl = (0, _pdfjsLib.createObjectURL)(data, contentType, this.disableCreateObjectURL); - download(blobUrl, filename); - } - - download(blob, url, filename) { - if (navigator.msSaveBlob) { - if (!navigator.msSaveBlob(blob, filename)) { - this.downloadUrl(url, filename); - } - - return; - } - - if (this.disableCreateObjectURL) { - this.downloadUrl(url, filename); - return; - } - - const blobUrl = URL.createObjectURL(blob); - download(blobUrl, filename); - } - -} - -exports.DownloadManager = DownloadManager; - -/***/ }), -/* 36 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.GenericL10n = void 0; - -__webpack_require__(37); - -const webL10n = document.webL10n; - -class GenericL10n { - constructor(lang) { - this._lang = lang; - this._ready = new Promise((resolve, reject) => { - webL10n.setLanguage(lang, () => { - resolve(webL10n); - }); - }); - } - - async getLanguage() { - const l10n = await this._ready; - return l10n.getLanguage(); - } - - async getDirection() { - const l10n = await this._ready; - return l10n.getDirection(); - } - - async get(property, args, fallback) { - const l10n = await this._ready; - return l10n.get(property, args, fallback); - } - - async translate(element) { - const l10n = await this._ready; - return l10n.translate(element); - } - -} - -exports.GenericL10n = GenericL10n; - -/***/ }), -/* 37 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -document.webL10n = function (window, document, undefined) { - var gL10nData = {}; - var gTextData = ''; - var gTextProp = 'textContent'; - var gLanguage = ''; - var gMacros = {}; - var gReadyState = 'loading'; - var gAsyncResourceLoading = true; - - function getL10nResourceLinks() { - return document.querySelectorAll('link[type="application/l10n"]'); - } - - function getL10nDictionary() { - var script = document.querySelector('script[type="application/l10n"]'); - return script ? JSON.parse(script.innerHTML) : null; - } - - function getTranslatableChildren(element) { - return element ? element.querySelectorAll('*[data-l10n-id]') : []; - } - - function getL10nAttributes(element) { - if (!element) return {}; - var l10nId = element.getAttribute('data-l10n-id'); - var l10nArgs = element.getAttribute('data-l10n-args'); - var args = {}; - - if (l10nArgs) { - try { - args = JSON.parse(l10nArgs); - } catch (e) { - console.warn('could not parse arguments for #' + l10nId); - } - } - - return { - id: l10nId, - args: args - }; - } - - function xhrLoadText(url, onSuccess, onFailure) { - onSuccess = onSuccess || function _onSuccess(data) {}; - - onFailure = onFailure || function _onFailure() {}; - - var xhr = new XMLHttpRequest(); - xhr.open('GET', url, gAsyncResourceLoading); - - if (xhr.overrideMimeType) { - xhr.overrideMimeType('text/plain; charset=utf-8'); - } - - xhr.onreadystatechange = function () { - if (xhr.readyState == 4) { - if (xhr.status == 200 || xhr.status === 0) { - onSuccess(xhr.responseText); - } else { - onFailure(); - } - } - }; - - xhr.onerror = onFailure; - xhr.ontimeout = onFailure; - - try { - xhr.send(null); - } catch (e) { - onFailure(); - } - } - - function parseResource(href, lang, successCallback, failureCallback) { - var baseURL = href.replace(/[^\/]*$/, '') || './'; - - function evalString(text) { - if (text.lastIndexOf('\\') < 0) return text; - return text.replace(/\\\\/g, '\\').replace(/\\n/g, '\n').replace(/\\r/g, '\r').replace(/\\t/g, '\t').replace(/\\b/g, '\b').replace(/\\f/g, '\f').replace(/\\{/g, '{').replace(/\\}/g, '}').replace(/\\"/g, '"').replace(/\\'/g, "'"); - } - - function parseProperties(text, parsedPropertiesCallback) { - var dictionary = {}; - var reBlank = /^\s*|\s*$/; - var reComment = /^\s*#|^\s*$/; - var reSection = /^\s*\[(.*)\]\s*$/; - var reImport = /^\s*@import\s+url\((.*)\)\s*$/i; - var reSplit = /^([^=\s]*)\s*=\s*(.+)$/; - - function parseRawLines(rawText, extendedSyntax, parsedRawLinesCallback) { - var entries = rawText.replace(reBlank, '').split(/[\r\n]+/); - var currentLang = '*'; - var genericLang = lang.split('-', 1)[0]; - var skipLang = false; - var match = ''; - - function nextEntry() { - while (true) { - if (!entries.length) { - parsedRawLinesCallback(); - return; - } - - var line = entries.shift(); - if (reComment.test(line)) continue; - - if (extendedSyntax) { - match = reSection.exec(line); - - if (match) { - currentLang = match[1].toLowerCase(); - skipLang = currentLang !== '*' && currentLang !== lang && currentLang !== genericLang; - continue; - } else if (skipLang) { - continue; - } - - match = reImport.exec(line); - - if (match) { - loadImport(baseURL + match[1], nextEntry); - return; - } - } - - var tmp = line.match(reSplit); - - if (tmp && tmp.length == 3) { - dictionary[tmp[1]] = evalString(tmp[2]); - } - } - } - - nextEntry(); - } - - function loadImport(url, callback) { - xhrLoadText(url, function (content) { - parseRawLines(content, false, callback); - }, function () { - console.warn(url + ' not found.'); - callback(); - }); - } - - parseRawLines(text, true, function () { - parsedPropertiesCallback(dictionary); - }); - } - - xhrLoadText(href, function (response) { - gTextData += response; - parseProperties(response, function (data) { - for (var key in data) { - var id, - prop, - index = key.lastIndexOf('.'); - - if (index > 0) { - id = key.substring(0, index); - prop = key.substring(index + 1); - } else { - id = key; - prop = gTextProp; - } - - if (!gL10nData[id]) { - gL10nData[id] = {}; - } - - gL10nData[id][prop] = data[key]; - } - - if (successCallback) { - successCallback(); - } - }); - }, failureCallback); - } - - function loadLocale(lang, callback) { - if (lang) { - lang = lang.toLowerCase(); - } - - callback = callback || function _callback() {}; - - clear(); - gLanguage = lang; - var langLinks = getL10nResourceLinks(); - var langCount = langLinks.length; - - if (langCount === 0) { - var dict = getL10nDictionary(); - - if (dict && dict.locales && dict.default_locale) { - console.log('using the embedded JSON directory, early way out'); - gL10nData = dict.locales[lang]; - - if (!gL10nData) { - var defaultLocale = dict.default_locale.toLowerCase(); - - for (var anyCaseLang in dict.locales) { - anyCaseLang = anyCaseLang.toLowerCase(); - - if (anyCaseLang === lang) { - gL10nData = dict.locales[lang]; - break; - } else if (anyCaseLang === defaultLocale) { - gL10nData = dict.locales[defaultLocale]; - } - } - } - - callback(); - } else { - console.log('no resource to load, early way out'); - } - - gReadyState = 'complete'; - return; - } - - var onResourceLoaded = null; - var gResourceCount = 0; - - onResourceLoaded = function () { - gResourceCount++; - - if (gResourceCount >= langCount) { - callback(); - gReadyState = 'complete'; - } - }; - - function L10nResourceLink(link) { - var href = link.href; - - this.load = function (lang, callback) { - parseResource(href, lang, callback, function () { - console.warn(href + ' not found.'); - console.warn('"' + lang + '" resource not found'); - gLanguage = ''; - callback(); - }); - }; - } - - for (var i = 0; i < langCount; i++) { - var resource = new L10nResourceLink(langLinks[i]); - resource.load(lang, onResourceLoaded); - } - } - - function clear() { - gL10nData = {}; - gTextData = ''; - gLanguage = ''; - } - - function getPluralRules(lang) { - var locales2rules = { - 'af': 3, - 'ak': 4, - 'am': 4, - 'ar': 1, - 'asa': 3, - 'az': 0, - 'be': 11, - 'bem': 3, - 'bez': 3, - 'bg': 3, - 'bh': 4, - 'bm': 0, - 'bn': 3, - 'bo': 0, - 'br': 20, - 'brx': 3, - 'bs': 11, - 'ca': 3, - 'cgg': 3, - 'chr': 3, - 'cs': 12, - 'cy': 17, - 'da': 3, - 'de': 3, - 'dv': 3, - 'dz': 0, - 'ee': 3, - 'el': 3, - 'en': 3, - 'eo': 3, - 'es': 3, - 'et': 3, - 'eu': 3, - 'fa': 0, - 'ff': 5, - 'fi': 3, - 'fil': 4, - 'fo': 3, - 'fr': 5, - 'fur': 3, - 'fy': 3, - 'ga': 8, - 'gd': 24, - 'gl': 3, - 'gsw': 3, - 'gu': 3, - 'guw': 4, - 'gv': 23, - 'ha': 3, - 'haw': 3, - 'he': 2, - 'hi': 4, - 'hr': 11, - 'hu': 0, - 'id': 0, - 'ig': 0, - 'ii': 0, - 'is': 3, - 'it': 3, - 'iu': 7, - 'ja': 0, - 'jmc': 3, - 'jv': 0, - 'ka': 0, - 'kab': 5, - 'kaj': 3, - 'kcg': 3, - 'kde': 0, - 'kea': 0, - 'kk': 3, - 'kl': 3, - 'km': 0, - 'kn': 0, - 'ko': 0, - 'ksb': 3, - 'ksh': 21, - 'ku': 3, - 'kw': 7, - 'lag': 18, - 'lb': 3, - 'lg': 3, - 'ln': 4, - 'lo': 0, - 'lt': 10, - 'lv': 6, - 'mas': 3, - 'mg': 4, - 'mk': 16, - 'ml': 3, - 'mn': 3, - 'mo': 9, - 'mr': 3, - 'ms': 0, - 'mt': 15, - 'my': 0, - 'nah': 3, - 'naq': 7, - 'nb': 3, - 'nd': 3, - 'ne': 3, - 'nl': 3, - 'nn': 3, - 'no': 3, - 'nr': 3, - 'nso': 4, - 'ny': 3, - 'nyn': 3, - 'om': 3, - 'or': 3, - 'pa': 3, - 'pap': 3, - 'pl': 13, - 'ps': 3, - 'pt': 3, - 'rm': 3, - 'ro': 9, - 'rof': 3, - 'ru': 11, - 'rwk': 3, - 'sah': 0, - 'saq': 3, - 'se': 7, - 'seh': 3, - 'ses': 0, - 'sg': 0, - 'sh': 11, - 'shi': 19, - 'sk': 12, - 'sl': 14, - 'sma': 7, - 'smi': 7, - 'smj': 7, - 'smn': 7, - 'sms': 7, - 'sn': 3, - 'so': 3, - 'sq': 3, - 'sr': 11, - 'ss': 3, - 'ssy': 3, - 'st': 3, - 'sv': 3, - 'sw': 3, - 'syr': 3, - 'ta': 3, - 'te': 3, - 'teo': 3, - 'th': 0, - 'ti': 4, - 'tig': 3, - 'tk': 3, - 'tl': 4, - 'tn': 3, - 'to': 0, - 'tr': 0, - 'ts': 3, - 'tzm': 22, - 'uk': 11, - 'ur': 3, - 've': 3, - 'vi': 0, - 'vun': 3, - 'wa': 4, - 'wae': 3, - 'wo': 0, - 'xh': 3, - 'xog': 3, - 'yo': 0, - 'zh': 0, - 'zu': 3 - }; - - function isIn(n, list) { - return list.indexOf(n) !== -1; - } - - function isBetween(n, start, end) { - return start <= n && n <= end; - } - - var pluralRules = { - '0': function (n) { - return 'other'; - }, - '1': function (n) { - if (isBetween(n % 100, 3, 10)) return 'few'; - if (n === 0) return 'zero'; - if (isBetween(n % 100, 11, 99)) return 'many'; - if (n == 2) return 'two'; - if (n == 1) return 'one'; - return 'other'; - }, - '2': function (n) { - if (n !== 0 && n % 10 === 0) return 'many'; - if (n == 2) return 'two'; - if (n == 1) return 'one'; - return 'other'; - }, - '3': function (n) { - if (n == 1) return 'one'; - return 'other'; - }, - '4': function (n) { - if (isBetween(n, 0, 1)) return 'one'; - return 'other'; - }, - '5': function (n) { - if (isBetween(n, 0, 2) && n != 2) return 'one'; - return 'other'; - }, - '6': function (n) { - if (n === 0) return 'zero'; - if (n % 10 == 1 && n % 100 != 11) return 'one'; - return 'other'; - }, - '7': function (n) { - if (n == 2) return 'two'; - if (n == 1) return 'one'; - return 'other'; - }, - '8': function (n) { - if (isBetween(n, 3, 6)) return 'few'; - if (isBetween(n, 7, 10)) return 'many'; - if (n == 2) return 'two'; - if (n == 1) return 'one'; - return 'other'; - }, - '9': function (n) { - if (n === 0 || n != 1 && isBetween(n % 100, 1, 19)) return 'few'; - if (n == 1) return 'one'; - return 'other'; - }, - '10': function (n) { - if (isBetween(n % 10, 2, 9) && !isBetween(n % 100, 11, 19)) return 'few'; - if (n % 10 == 1 && !isBetween(n % 100, 11, 19)) return 'one'; - return 'other'; - }, - '11': function (n) { - if (isBetween(n % 10, 2, 4) && !isBetween(n % 100, 12, 14)) return 'few'; - if (n % 10 === 0 || isBetween(n % 10, 5, 9) || isBetween(n % 100, 11, 14)) return 'many'; - if (n % 10 == 1 && n % 100 != 11) return 'one'; - return 'other'; - }, - '12': function (n) { - if (isBetween(n, 2, 4)) return 'few'; - if (n == 1) return 'one'; - return 'other'; - }, - '13': function (n) { - if (isBetween(n % 10, 2, 4) && !isBetween(n % 100, 12, 14)) return 'few'; - if (n != 1 && isBetween(n % 10, 0, 1) || isBetween(n % 10, 5, 9) || isBetween(n % 100, 12, 14)) return 'many'; - if (n == 1) return 'one'; - return 'other'; - }, - '14': function (n) { - if (isBetween(n % 100, 3, 4)) return 'few'; - if (n % 100 == 2) return 'two'; - if (n % 100 == 1) return 'one'; - return 'other'; - }, - '15': function (n) { - if (n === 0 || isBetween(n % 100, 2, 10)) return 'few'; - if (isBetween(n % 100, 11, 19)) return 'many'; - if (n == 1) return 'one'; - return 'other'; - }, - '16': function (n) { - if (n % 10 == 1 && n != 11) return 'one'; - return 'other'; - }, - '17': function (n) { - if (n == 3) return 'few'; - if (n === 0) return 'zero'; - if (n == 6) return 'many'; - if (n == 2) return 'two'; - if (n == 1) return 'one'; - return 'other'; - }, - '18': function (n) { - if (n === 0) return 'zero'; - if (isBetween(n, 0, 2) && n !== 0 && n != 2) return 'one'; - return 'other'; - }, - '19': function (n) { - if (isBetween(n, 2, 10)) return 'few'; - if (isBetween(n, 0, 1)) return 'one'; - return 'other'; - }, - '20': function (n) { - if ((isBetween(n % 10, 3, 4) || n % 10 == 9) && !(isBetween(n % 100, 10, 19) || isBetween(n % 100, 70, 79) || isBetween(n % 100, 90, 99))) return 'few'; - if (n % 1000000 === 0 && n !== 0) return 'many'; - if (n % 10 == 2 && !isIn(n % 100, [12, 72, 92])) return 'two'; - if (n % 10 == 1 && !isIn(n % 100, [11, 71, 91])) return 'one'; - return 'other'; - }, - '21': function (n) { - if (n === 0) return 'zero'; - if (n == 1) return 'one'; - return 'other'; - }, - '22': function (n) { - if (isBetween(n, 0, 1) || isBetween(n, 11, 99)) return 'one'; - return 'other'; - }, - '23': function (n) { - if (isBetween(n % 10, 1, 2) || n % 20 === 0) return 'one'; - return 'other'; - }, - '24': function (n) { - if (isBetween(n, 3, 10) || isBetween(n, 13, 19)) return 'few'; - if (isIn(n, [2, 12])) return 'two'; - if (isIn(n, [1, 11])) return 'one'; - return 'other'; - } - }; - var index = locales2rules[lang.replace(/-.*$/, '')]; - - if (!(index in pluralRules)) { - console.warn('plural form unknown for [' + lang + ']'); - return function () { - return 'other'; - }; - } - - return pluralRules[index]; - } - - gMacros.plural = function (str, param, key, prop) { - var n = parseFloat(param); - if (isNaN(n)) return str; - if (prop != gTextProp) return str; - - if (!gMacros._pluralRules) { - gMacros._pluralRules = getPluralRules(gLanguage); - } - - var index = '[' + gMacros._pluralRules(n) + ']'; - - if (n === 0 && key + '[zero]' in gL10nData) { - str = gL10nData[key + '[zero]'][prop]; - } else if (n == 1 && key + '[one]' in gL10nData) { - str = gL10nData[key + '[one]'][prop]; - } else if (n == 2 && key + '[two]' in gL10nData) { - str = gL10nData[key + '[two]'][prop]; - } else if (key + index in gL10nData) { - str = gL10nData[key + index][prop]; - } else if (key + '[other]' in gL10nData) { - str = gL10nData[key + '[other]'][prop]; - } - - return str; - }; - - function getL10nData(key, args, fallback) { - var data = gL10nData[key]; - - if (!data) { - console.warn('#' + key + ' is undefined.'); - - if (!fallback) { - return null; - } - - data = fallback; - } - - var rv = {}; - - for (var prop in data) { - var str = data[prop]; - str = substIndexes(str, args, key, prop); - str = substArguments(str, args, key); - rv[prop] = str; - } - - return rv; - } - - function substIndexes(str, args, key, prop) { - var reIndex = /\{\[\s*([a-zA-Z]+)\(([a-zA-Z]+)\)\s*\]\}/; - var reMatch = reIndex.exec(str); - if (!reMatch || !reMatch.length) return str; - var macroName = reMatch[1]; - var paramName = reMatch[2]; - var param; - - if (args && paramName in args) { - param = args[paramName]; - } else if (paramName in gL10nData) { - param = gL10nData[paramName]; - } - - if (macroName in gMacros) { - var macro = gMacros[macroName]; - str = macro(str, param, key, prop); - } - - return str; - } - - function substArguments(str, args, key) { - var reArgs = /\{\{\s*(.+?)\s*\}\}/g; - return str.replace(reArgs, function (matched_text, arg) { - if (args && arg in args) { - return args[arg]; - } - - if (arg in gL10nData) { - return gL10nData[arg]; - } - - console.log('argument {{' + arg + '}} for #' + key + ' is undefined.'); - return matched_text; - }); - } - - function translateElement(element) { - var l10n = getL10nAttributes(element); - if (!l10n.id) return; - var data = getL10nData(l10n.id, l10n.args); - - if (!data) { - console.warn('#' + l10n.id + ' is undefined.'); - return; - } - - if (data[gTextProp]) { - if (getChildElementCount(element) === 0) { - element[gTextProp] = data[gTextProp]; - } else { - var children = element.childNodes; - var found = false; - - for (var i = 0, l = children.length; i < l; i++) { - if (children[i].nodeType === 3 && /\S/.test(children[i].nodeValue)) { - if (found) { - children[i].nodeValue = ''; - } else { - children[i].nodeValue = data[gTextProp]; - found = true; - } - } - } - - if (!found) { - var textNode = document.createTextNode(data[gTextProp]); - element.insertBefore(textNode, element.firstChild); - } - } - - delete data[gTextProp]; - } - - for (var k in data) { - element[k] = data[k]; - } - } - - function getChildElementCount(element) { - if (element.children) { - return element.children.length; - } - - if (typeof element.childElementCount !== 'undefined') { - return element.childElementCount; - } - - var count = 0; - - for (var i = 0; i < element.childNodes.length; i++) { - count += element.nodeType === 1 ? 1 : 0; - } - - return count; - } - - function translateFragment(element) { - element = element || document.documentElement; - var children = getTranslatableChildren(element); - var elementCount = children.length; - - for (var i = 0; i < elementCount; i++) { - translateElement(children[i]); - } - - translateElement(element); - } - - return { - get: function (key, args, fallbackString) { - var index = key.lastIndexOf('.'); - var prop = gTextProp; - - if (index > 0) { - prop = key.substring(index + 1); - key = key.substring(0, index); - } - - var fallback; - - if (fallbackString) { - fallback = {}; - fallback[prop] = fallbackString; - } - - var data = getL10nData(key, args, fallback); - - if (data && prop in data) { - return data[prop]; - } - - return '{{' + key + '}}'; - }, - getData: function () { - return gL10nData; - }, - getText: function () { - return gTextData; - }, - getLanguage: function () { - return gLanguage; - }, - setLanguage: function (lang, callback) { - loadLocale(lang, function () { - if (callback) callback(); - }); - }, - getDirection: function () { - var rtlList = ['ar', 'he', 'fa', 'ps', 'ur']; - var shortCode = gLanguage.split('-', 1)[0]; - return rtlList.indexOf(shortCode) >= 0 ? 'rtl' : 'ltr'; - }, - translate: translateFragment, - getReadyState: function () { - return gReadyState; - }, - ready: function (callback) { - if (!callback) { - return; - } else if (gReadyState == 'complete' || gReadyState == 'interactive') { - window.setTimeout(function () { - callback(); - }); - } else if (document.addEventListener) { - document.addEventListener('localized', function once() { - document.removeEventListener('localized', once); - callback(); - }); - } - } - }; -}(window, document); - -/***/ }), -/* 38 */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -exports.PDFPrintService = PDFPrintService; - -var _ui_utils = __webpack_require__(2); - -var _app = __webpack_require__(1); - -var _app_options = __webpack_require__(3); - -let activeService = null; -let overlayManager = null; - -function renderPage(activeServiceOnEntry, pdfDocument, pageNumber, size) { - const scratchCanvas = activeService.scratchCanvas; - const PRINT_RESOLUTION = _app_options.AppOptions.get("printResolution") || 150; - const PRINT_UNITS = PRINT_RESOLUTION / 72.0; - scratchCanvas.width = Math.floor(size.width * PRINT_UNITS); - scratchCanvas.height = Math.floor(size.height * PRINT_UNITS); - const width = Math.floor(size.width * _ui_utils.CSS_UNITS) + "px"; - const height = Math.floor(size.height * _ui_utils.CSS_UNITS) + "px"; - const ctx = scratchCanvas.getContext("2d"); - ctx.save(); - ctx.fillStyle = "rgb(255, 255, 255)"; - ctx.fillRect(0, 0, scratchCanvas.width, scratchCanvas.height); - ctx.restore(); - return pdfDocument.getPage(pageNumber).then(function (pdfPage) { - const renderContext = { - canvasContext: ctx, - transform: [PRINT_UNITS, 0, 0, PRINT_UNITS, 0, 0], - viewport: pdfPage.getViewport({ - scale: 1, - rotation: size.rotation - }), - intent: "print" - }; - return pdfPage.render(renderContext).promise; - }).then(function () { - return { - width, - height - }; - }); -} - -function PDFPrintService(pdfDocument, pagesOverview, printContainer, l10n) { - this.pdfDocument = pdfDocument; - this.pagesOverview = pagesOverview; - this.printContainer = printContainer; - this.l10n = l10n || _ui_utils.NullL10n; - this.disableCreateObjectURL = _app_options.AppOptions.get("disableCreateObjectURL"); - this.currentPage = -1; - this.scratchCanvas = document.createElement("canvas"); -} - -PDFPrintService.prototype = { - layout() { - this.throwIfInactive(); - const body = document.querySelector("body"); - body.setAttribute("data-pdfjsprinting", true); - const hasEqualPageSizes = this.pagesOverview.every(function (size) { - return size.width === this.pagesOverview[0].width && size.height === this.pagesOverview[0].height; - }, this); - - if (!hasEqualPageSizes) { - console.warn("Not all pages have the same size. The printed " + "result may be incorrect!"); - } - - this.pageStyleSheet = document.createElement("style"); - const pageSize = this.pagesOverview[0]; - this.pageStyleSheet.textContent = "@supports ((size:A4) and (size:1pt 1pt)) {" + "@page { size: " + pageSize.width + "pt " + pageSize.height + "pt;}" + "}"; - body.appendChild(this.pageStyleSheet); - }, - - destroy() { - if (activeService !== this) { - return; - } - - this.printContainer.textContent = ""; - const body = document.querySelector("body"); - body.removeAttribute("data-pdfjsprinting"); - - if (this.pageStyleSheet) { - this.pageStyleSheet.remove(); - this.pageStyleSheet = null; - } - - this.scratchCanvas.width = this.scratchCanvas.height = 0; - this.scratchCanvas = null; - activeService = null; - ensureOverlay().then(function () { - if (overlayManager.active !== "printServiceOverlay") { - return; - } - - overlayManager.close("printServiceOverlay"); - }); - }, - - renderPages() { - const pageCount = this.pagesOverview.length; - - const renderNextPage = (resolve, reject) => { - this.throwIfInactive(); - - if (++this.currentPage >= pageCount) { - renderProgress(pageCount, pageCount, this.l10n); - resolve(); - return; - } - - const index = this.currentPage; - renderProgress(index, pageCount, this.l10n); - renderPage(this, this.pdfDocument, index + 1, this.pagesOverview[index]).then(this.useRenderedPage.bind(this)).then(function () { - renderNextPage(resolve, reject); - }, reject); - }; - - return new Promise(renderNextPage); - }, - - useRenderedPage(printItem) { - this.throwIfInactive(); - const img = document.createElement("img"); - img.style.width = printItem.width; - img.style.height = printItem.height; - const scratchCanvas = this.scratchCanvas; - - if ("toBlob" in scratchCanvas && !this.disableCreateObjectURL) { - scratchCanvas.toBlob(function (blob) { - img.src = URL.createObjectURL(blob); - }); - } else { - img.src = scratchCanvas.toDataURL(); - } - - const wrapper = document.createElement("div"); - wrapper.appendChild(img); - this.printContainer.appendChild(wrapper); - return new Promise(function (resolve, reject) { - img.onload = resolve; - img.onerror = reject; - }); - }, - - performPrint() { - this.throwIfInactive(); - return new Promise(resolve => { - setTimeout(() => { - if (!this.active) { - resolve(); - return; - } - - print.call(window); - setTimeout(resolve, 20); - }, 0); - }); - }, - - get active() { - return this === activeService; - }, - - throwIfInactive() { - if (!this.active) { - throw new Error("This print request was cancelled or completed."); - } - } - -}; -const print = window.print; - -window.print = function () { - if (activeService) { - console.warn("Ignored window.print() because of a pending print job."); - return; - } - - ensureOverlay().then(function () { - if (activeService) { - overlayManager.open("printServiceOverlay"); - } - }); - - try { - dispatchEvent("beforeprint"); - } finally { - if (!activeService) { - console.error("Expected print service to be initialized."); - ensureOverlay().then(function () { - if (overlayManager.active === "printServiceOverlay") { - overlayManager.close("printServiceOverlay"); - } - }); - return; - } - - const activeServiceOnEntry = activeService; - activeService.renderPages().then(function () { - return activeServiceOnEntry.performPrint(); - }).catch(function () {}).then(function () { - if (activeServiceOnEntry.active) { - abort(); - } - }); - } -}; - -function dispatchEvent(eventType) { - const event = document.createEvent("CustomEvent"); - event.initCustomEvent(eventType, false, false, "custom"); - window.dispatchEvent(event); -} - -function abort() { - if (activeService) { - activeService.destroy(); - dispatchEvent("afterprint"); - } -} - -function renderProgress(index, total, l10n) { - const progressContainer = document.getElementById("printServiceOverlay"); - const progress = Math.round(100 * index / total); - const progressBar = progressContainer.querySelector("progress"); - const progressPerc = progressContainer.querySelector(".relative-progress"); - progressBar.value = progress; - l10n.get("print_progress_percent", { - progress - }, progress + "%").then(msg => { - progressPerc.textContent = msg; - }); -} - -window.addEventListener("keydown", function (event) { - if (event.keyCode === 80 && (event.ctrlKey || event.metaKey) && !event.altKey && (!event.shiftKey || window.chrome || window.opera)) { - window.print(); - event.preventDefault(); - - if (event.stopImmediatePropagation) { - event.stopImmediatePropagation(); - } else { - event.stopPropagation(); - } - } -}, true); - -if ("onbeforeprint" in window) { - const stopPropagationIfNeeded = function (event) { - if (event.detail !== "custom" && event.stopImmediatePropagation) { - event.stopImmediatePropagation(); - } - }; - - window.addEventListener("beforeprint", stopPropagationIfNeeded); - window.addEventListener("afterprint", stopPropagationIfNeeded); -} - -let overlayPromise; - -function ensureOverlay() { - if (!overlayPromise) { - overlayManager = _app.PDFViewerApplication.overlayManager; - - if (!overlayManager) { - throw new Error("The overlay manager has not yet been initialized."); - } - - overlayPromise = overlayManager.register("printServiceOverlay", document.getElementById("printServiceOverlay"), abort, true); - document.getElementById("printCancel").onclick = abort; - } - - return overlayPromise; -} - -_app.PDFPrintServiceFactory.instance = { - supportsPrinting: true, - - createPrintService(pdfDocument, pagesOverview, printContainer, l10n) { - if (activeService) { - throw new Error("The print service is created and active."); - } - - activeService = new PDFPrintService(pdfDocument, pagesOverview, printContainer, l10n); - return activeService; - } - -}; - -/***/ }) -/******/ ]); -//# sourceMappingURL=viewer.js.map \ No newline at end of file diff --git a/cookbook/static/pdfjs/viewer.js.map b/cookbook/static/pdfjs/viewer.js.map deleted file mode 100644 index a99f7e26e..000000000 --- a/cookbook/static/pdfjs/viewer.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///web/viewer.js","webpack:///web/app.js","webpack:///web/ui_utils.js","webpack:///web/app_options.js","webpack:///web/viewer_compatibility.js","webpack:///web/pdfjs.js","webpack:///web/pdf_cursor_tools.js","webpack:///web/grab_to_pan.js","webpack:///web/pdf_rendering_queue.js","webpack:///web/pdf_sidebar.js","webpack:///web/overlay_manager.js","webpack:///web/password_prompt.js","webpack:///web/pdf_attachment_viewer.js","webpack:///web/pdf_document_properties.js","webpack:///web/pdf_find_bar.js","webpack:///web/pdf_find_controller.js","webpack:///web/pdf_find_utils.js","webpack:///web/pdf_history.js","webpack:///web/pdf_link_service.js","webpack:///web/pdf_outline_viewer.js","webpack:///web/pdf_presentation_mode.js","webpack:///web/pdf_sidebar_resizer.js","webpack:///web/pdf_thumbnail_viewer.js","webpack:///web/pdf_thumbnail_view.js","webpack:///web/pdf_viewer.js","webpack:///web/base_viewer.js","webpack:///web/annotation_layer_builder.js","webpack:///web/pdf_page_view.js","webpack:///web/text_layer_builder.js","webpack:///web/secondary_toolbar.js","webpack:///web/pdf_single_page_viewer.js","webpack:///web/toolbar.js","webpack:///web/view_history.js","webpack:///web/genericcom.js","webpack:///web/preferences.js","webpack:///web/download_manager.js","webpack:///web/genericl10n.js","webpack:///external/webL10n/l10n.js","webpack:///web/pdf_print_service.js"],"names":["pdfjsWebApp","require","pdfjsWebAppOptions","appContainer","document","mainContainer","viewerContainer","eventBus","toolbar","container","numPages","pageNumber","scaleSelectContainer","scaleSelect","customScaleOption","previous","next","zoomIn","zoomOut","viewFind","openFile","print","presentationModeButton","download","viewBookmark","secondaryToolbar","toggleButton","toolbarButtonContainer","openFileButton","printButton","downloadButton","viewBookmarkButton","firstPageButton","lastPageButton","pageRotateCwButton","pageRotateCcwButton","cursorSelectToolButton","cursorHandToolButton","scrollVerticalButton","scrollHorizontalButton","scrollWrappedButton","spreadNoneButton","spreadOddButton","spreadEvenButton","documentPropertiesButton","fullscreen","contextFirstPage","contextLastPage","contextPageRotateCw","contextPageRotateCcw","sidebar","outerContainer","thumbnailButton","outlineButton","attachmentsButton","thumbnailView","outlineView","attachmentsView","sidebarResizer","resizer","findBar","bar","findField","highlightAllCheckbox","caseSensitiveCheckbox","entireWordCheckbox","findMsg","findResultsCount","findPreviousButton","findNextButton","passwordOverlay","overlayName","label","input","submitButton","cancelButton","documentProperties","closeButton","fields","fileName","fileSize","title","author","subject","keywords","creationDate","modificationDate","creator","producer","version","pageCount","pageSize","linearized","errorWrapper","errorMessage","errorMoreInfo","moreInfoButton","lessInfoButton","printContainer","openFileInputName","debuggerScriptPath","config","getViewerConfiguration","window","event","source","parent","console","webViewerLoad","DEFAULT_SCALE_DELTA","DISABLE_AUTO_FETCH_LOADING_BAR_TIMEOUT","FORCE_PAGES_LOADED_TIMEOUT","WHEEL_ZOOM_DISABLED_TIMEOUT","ENABLE_PERMISSIONS_CLASS","ViewOnLoad","UNKNOWN","PREVIOUS","INITIAL","constructor","shadow","ctrlKey","metaKey","PDFViewerApplication","initialBookmark","_initializedCapability","fellback","appConfig","pdfDocument","pdfLoadingTask","printService","pdfViewer","pdfThumbnailViewer","pdfRenderingQueue","pdfPresentationMode","pdfDocumentProperties","pdfLinkService","pdfHistory","pdfSidebar","pdfSidebarResizer","pdfOutlineViewer","pdfAttachmentViewer","pdfCursorTools","store","downloadManager","overlayManager","preferences","l10n","isInitialViewSet","downloadComplete","isViewerEmbedded","url","baseUrl","externalServices","_boundEvents","contentDispositionFilename","AppOptions","LinkTarget","prefs","reason","hash","hashParams","parseQueryString","waitOn","loadFakeWorker","TextLayerMode","viewer","enabled","loadAndEnablePDFBug","locale","dir","isInAutomation","externalLinkTarget","externalLinkRel","ignoreDestinationZoom","disableCreateObjectURL","findController","linkService","renderingQueue","renderer","enableWebGL","textLayerMode","imageResourcesPath","renderInteractiveForms","enablePrintAutoRotate","useOnlyCssZoom","maxCanvasPixels","cursorToolOnLoad","contextMenuItems","elements","run","newScale","Math","zoomReset","PDFPrintServiceFactory","doc","support","initPassiveLoading","setTitleUsingUrl","getPDFFileNameFromURL","decodeURIComponent","getFilenameFromUrl","setTitle","promise","webViewerResetPermissions","PDFBug","workerParameters","OptionKind","GlobalWorkerOptions","parameters","Object","file","apiParameters","value","key","args","loadingTask","getDocument","loaded","exception","message","loadingErrorMessage","msg","filename","err","downloadByUrl","blob","type","fallback","error","moreInfoText","build","moreInfo","stack","line","errorWrapperConfig","Promise","parts","progress","percent","level","isNaN","disableAutoFetch","clearTimeout","load","firstPagePromise","pageLayoutPromise","pageModePromise","openActionPromise","baseDocumentUrl","storedPromise","page","zoom","scrollLeft","scrollTop","rotation","sidebarView","SidebarView","scrollMode","ScrollMode","spreadMode","SpreadMode","pdfPage","viewOnLoad","fingerprint","initialDest","openAction","stored","parseInt","pageMode","apiPageModeToSidebarView","pageLayout","apiPageLayoutToSpreadMode","resolve","setTimeout","pagesPromise","onePageRendered","outline","attachments","triggerAutoPrint","javaScript","js","UNSUPPORTED_FEATURES","AutoPrintRegExp","info","infoTitle","pdfTitle","metadataTitle","metadata","versionId","KNOWN_VERSIONS","generatorId","KNOWN_GENERATORS","generator","formType","labels","numLabels","i","_initializePdfHistory","resetHistory","updateUrl","JSON","explicitDest","permissions","PermissionFlag","setInitialView","setRotation","angle","isValidRotation","setViewerModes","isValidScrollMode","isValidSpreadMode","cleanup","RendererType","forceRendering","beforePrint","printMessage","notReadyMessage","pagesOverview","afterPrint","rotatePages","newRotation","requestPresentationMode","bindEvents","bindWindowEvents","passive","unbindEvents","unbindWindowEvents","HOSTED_VIEWER_ORIGINS","validateFileURL","viewerOrigin","origin","protocol","ex","loadScript","PDFWorker","OPS","queryString","params","fileInput","files","evt","webViewerOpenFileViaURL","xhr","pageIndex","pageView","Stats","timestamp","view","action","state","PresentationModeState","location","href","currentPage","loading","RenderingStates","currentScaleValue","webViewerFileInputChange","URL","originalUrl","fileReader","buffer","webViewerOpenFile","query","phraseSearch","caseSensitive","entireWord","highlightAll","findPrevious","result","setZoomDisabledTimeout","zoomDisabledTimeout","supportedMouseWheelZoomModifierKeys","previousScale","delta","normalizeWheelEventDelta","MOUSE_WHEEL_DELTA_PER_PAGE_SCALE","ticks","currentScale","scaleCorrectionFactor","rect","dx","dy","handled","ensureViewerFocused","cmd","isViewerInPresentationMode","findState","curElement","curElementTagName","turnPage","turnOnlyIfPageFit","CursorTool","instance","supportsPrinting","createPrintService","CSS_UNITS","DEFAULT_SCALE_VALUE","DEFAULT_SCALE","MIN_SCALE","MAX_SCALE","UNKNOWN_SCALE","MAX_AUTO_SCALE","SCROLLBAR_PADDING","VERTICAL_PADDING","NORMAL","CHANGING","FULLSCREEN","CANVAS","SVG","DISABLE","ENABLE","ENABLE_ENHANCE","VERTICAL","HORIZONTAL","WRAPPED","NONE","ODD","EVEN","name","NullL10n","formatL10nValue","devicePixelRatio","backingStoreRatio","ctx","pixelRatio","sx","sy","scaled","skipOverflowHiddenElements","element","offsetY","offsetX","getComputedStyle","spot","debounceScroll","rAF","currentX","viewAreaElement","lastX","currentY","lastY","callback","right","down","_eventHandler","ii","param","minIndex","maxIndex","items","condition","currentIndex","currentItem","xinv","limit","x_","x","a","b","c","d","p","q","r","changeOrientation","rotate","width","height","index","elt","views","pageTop","sortByVisibility","horizontal","top","scrollEl","bottom","left","elementBottom","elementRight","visible","numViews","firstVisibleElementInd","binarySearchFirstItem","backtrackBeforeAllVisibleElements","lastEdge","currentWidth","currentHeight","viewWidth","viewHeight","viewRight","viewBottom","hiddenHeight","hiddenWidth","id","y","first","last","pc","defaultFilename","isDataSchema","reURI","reFilename","splitURI","suggestedFilename","MOUSE_DOM_DELTA_PIXEL_MODE","MOUSE_DOM_DELTA_LINE_MODE","MOUSE_PIXELS_PER_LINE","MOUSE_LINES_PER_PAGE","Number","mode","size","WaitOnType","EVENT","TIMEOUT","delay","target","eventHandler","handler","timeoutHandler","timeout","animationStarted","on","external","off","dispatch","eventListeners","Array","externalListeners","listener","_on","options","_off","units","_updateBar","progressSize","clamp","setWidth","scrollbarWidth","hide","show","moved","len","arr","write","read","VIEWER","API","WORKER","PREFERENCE","defaultOptions","kind","defaultUrl","defaultZoomValue","compatibility","viewerCompatibilityParams","disableHistory","disablePageLabels","enablePermissions","historyUpdateUrl","pdfBugEnabled","printResolution","sidebarViewOnLoad","scrollModeOnLoad","spreadModeOnLoad","cMapPacked","cMapUrl","disableFontFace","disableRange","disableStream","docBaseUrl","fontExtraProperties","isEvalSupported","maxImageSize","pdfBug","verbosity","workerPort","workerSrc","navigator","userOptions","userOption","defaultOption","valueType","compatibilityParams","userAgent","platform","maxTouchPoints","isAndroid","isIE","isIOS","isIOSChrome","pdfjsLib","__non_webpack_require__","module","SELECT","HAND","ZOOM","switchTool","tool","disableActiveTool","_dispatchEvent","_addEventListeners","previouslyActive","overlay","GrabToPan","CSS_CLASS_GRAB","activate","deactivate","toggle","ignoreTarget","node","_onmousedown","focusedElement","_onmousemove","isLeftMouseReleased","xDiff","yDiff","behavior","_endPan","prefix","matchesSelector","isNotIEorIsIE10plus","chrome","isChrome15OrOpera15plus","isSafari6plus","CLEANUP_TIMEOUT","RUNNING","PAUSED","FINISHED","setViewer","setThumbnailViewer","isHighestPriority","renderHighestPriority","getHighestPriority","visibleViews","numVisible","nextPageIndex","previousPageIndex","isViewFinished","renderView","UI_NOTIFICATION_CLASS","THUMBS","OUTLINE","ATTACHMENTS","LAYERS","disableNotification","reset","switchView","forceOpen","_switchView","isViewChanged","shouldForceRendering","open","close","_forceRendering","_updateThumbnailViewer","pagesCount","_showUINotification","_hideUINotification","removeNotification","outlineCount","callerCloseMethod","canForceClose","_keyDown","_closeThroughCaller","e","PasswordResponses","promptString","verify","password","setUpdateCallback","keepRenderedCapability","_bindPdfLink","button","blobUrl","viewerUrl","encodeURIComponent","_bindLink","render","attachmentsCount","names","item","removeNullCharacters","div","_appendAttachment","DEFAULT_FIELD_CONTENT","NON_METRIC_LOCALES","US_PAGE_NAMES","METRIC_PAGE_NAMES","isPortrait","pageNames","freezeFieldData","data","writable","enumerable","configurable","currentPageNumber","pagesRotation","getPageSizeInches","_currentPageNumber","_pagesRotation","setDocument","setFileSize","_reset","_updateUI","content","kb","size_kb","size_b","size_mb","pageSizeInches","isPortraitOrientation","sizeInches","sizeMillimeters","pageName","rawName","getPageName","exactMillimeters","intMillimeters","dateObject","PDFDateString","date","time","_parseLinearization","isLinearized","MATCHES_COUNT_LIMIT","dispatchEvent","updateUIState","notFound","status","FindState","updateResultsCount","current","total","matchesCountMsg","_adjustWidth","findbarHeight","inputContainerHeight","FOUND","NOT_FOUND","PENDING","FIND_TIMEOUT","MATCH_SCROLL_OFFSET_TOP","MATCH_SCROLL_OFFSET_LEFT","CHARACTERS_TO_NORMALIZE","normalizationRegex","replace","executeCommand","findbarClosed","pendingTimeout","scrollMatchIntoView","matchIndex","scrollIntoView","pageIdx","matchIdx","wrapped","normalize","_shouldDirtyMatch","_prepareMatches","currentElem","matchesWithLength","nextElem","prevElem","isSubTerm","matches","matchesLength","_isEntireWord","startIdx","getCharacterType","endIdx","_calculatePhraseMatch","queryLen","pageContent","_calculateWordMatch","queryArray","subquery","subqueryLen","match","matchLength","skipped","_calculateMatch","pageMatchesCount","_extractText","extractTextCapability","normalizeWhitespace","textContent","textItems","strBuf","j","jj","_updatePage","_updateAllPages","_nextMatch","currentPageIndex","offset","numPageMatches","_matchesReady","numMatches","_nextPageMatch","_advanceOffsetPage","_updateMatch","found","previousPage","_onFindBarClose","_requestMatchesCount","_updateUIResultsCount","matchesCount","_updateUIState","CharacterType","SPACE","ALPHA_LETTER","PUNCT","HAN_LETTER","KATAKANA_LETTER","HIRAGANA_LETTER","HALFWIDTH_KATAKANA_LETTER","THAI_LETTER","charCode","isAlphabeticalScript","isAscii","isAsciiSpace","isAsciiAlpha","isAsciiDigit","isThai","isHan","isKatakana","isHiragana","isHalfwidthKatakana","HASH_CHANGE_TIMEOUT","POSITION_UPDATED_THRESHOLD","UPDATE_VIEWAREA_TIMEOUT","onPagesLoaded","initialize","reInitialized","getCurrentHash","destination","push","namedDest","forceReplace","isDestArraysEqual","dest","pushCurrentPosition","back","forward","_pushOrReplaceState","shouldReplace","newState","uid","newUrl","_tryPushCurrentPosition","temporary","position","_isValidState","checkReload","performance","perfEntry","_updateInternalState","removeTemporary","_parseCurrentHash","checkNameddest","unescape","nameddest","_updateViewarea","_popState","newHash","hashChanged","waitOnEventOrTimeout","_pageHide","_bindEvents","updateViewarea","popState","pageHide","_unbindEvents","destHash","second","isEntryEqual","firstDest","secondDest","externalLinkEnabled","setHistory","navigateTo","goToDestination","destRef","destArray","getDestinationHash","escape","str","getAnchorUrl","setHash","zoomArgs","zoomArg","zoomArgNumber","parseFloat","allowNegativeOffset","isValidExplicitDestination","executeNamedAction","cachePageRef","refStr","pageRef","_cachedPageNumber","isPageVisible","destLength","allowNull","DEFAULT_TITLE","addLinkAttributes","newWindow","rel","_setStyles","_addToggleButton","toggler","count","shouldShowAll","_toggleOutlineItem","root","toggleOutlineTree","fragment","queue","hasAnyNesting","levelData","itemsDiv","DELAY_BEFORE_RESETTING_SWITCH_IN_PROGRESS","DELAY_BEFORE_HIDING_CONTROLS","ACTIVE_SELECTOR","CONTROLS_SELECTOR","MOUSE_SCROLL_COOLDOWN_TIME","PAGE_SWITCH_THRESHOLD","SWIPE_MIN_DISTANCE_THRESHOLD","SWIPE_ANGLE_THRESHOLD","request","Element","_mouseWheel","currentTime","storedTime","totalDelta","success","_goToPreviousPage","_goToNextPage","_notifyStateChange","active","switchInProgress","_setSwitchInProgress","_resetSwitchInProgress","_enter","_exit","_mouseDown","isInternalLink","_contextMenu","_showControls","_hideControls","_resetMouseScrollState","_touchSwipe","startX","startY","endX","endY","absAngle","_addWindowListeners","_removeWindowListeners","_fullscreenChange","_addFullscreenChangeListeners","_removeFullscreenChangeListeners","SIDEBAR_WIDTH_VAR","SIDEBAR_MIN_WIDTH","SIDEBAR_RESIZING_CLASS","CSS","_updateWidth","newWidth","_mouseMove","_mouseUp","updated","THUMBNAIL_SCROLL_MARGIN","THUMBNAIL_SELECTED_CLASS","watchScroll","_scrollUpdated","getThumbnail","_getVisibleThumbs","getVisibleElements","scrollThumbnailIntoView","prevThumbnailView","visibleThumbs","numVisibleThumbs","shouldScroll","PDFThumbnailView","_resetView","firstPdfPage","viewport","scale","pageNum","thumbnail","defaultViewport","disableCanvasToImageConversion","firstThumbnailView","_cancelRendering","setPageLabels","_ensurePdfPageLoaded","thumbView","MAX_NUM_SCALING_STEPS","THUMBNAIL_CANVAS_BORDER_WIDTH","THUMBNAIL_WIDTH","TempImageFactory","tempCanvasCache","getCanvas","tempCanvas","alpha","destroyCanvas","anchor","ring","borderAdjustment","setPdfPage","totalRotation","childNodes","update","cancelRendering","_getPageDrawContext","noCtxScale","canvas","outputScale","getOutputScale","_convertCanvasToImage","className","image","draw","renderCapability","finishRenderTask","renderTask","drawViewport","renderContinueCallback","cont","renderContext","canvasContext","setImage","img","reducedWidth","reducedHeight","reducedImage","reducedImageCtx","setPageLabel","_scrollIntoView","pageSpot","pageDiv","_getVisiblePages","_updateHelper","currentId","stillFullyVisible","visiblePages","DEFAULT_CACHE_SIZE","pageIdsToKeep","iMax","pagesToKeep","moveToEndOfArray","getPageView","_setCurrentPageNumber","resetCurrentPageView","val","pageLabel","_onePageRenderedOrForceFetch","textLayerFactory","annotationLayerFactory","firstPageView","getPagesLeft","_scrollUpdate","_setScaleUpdatePages","noScroll","preset","newValue","isSameScale","presetValue","_setScale","noPadding","hPadding","vPadding","pageWidthScale","pageHeightScale","horizontalScale","_resetCurrentPageView","scrollPageIntoView","pageWidth","pageHeight","widthScale","heightScale","boundingRect","_updateLocation","normalizedScaleValue","firstPage","pdfOpenParams","currentPageView","topLeft","intLeft","intTop","numVisiblePages","newCacheSize","containsElement","focus","_getCurrentVisiblePage","currentlyVisiblePages","scrollAhead","createTextLayerBuilder","enhanceTextSelection","createAnnotationLayerBuilder","getPagesOverview","isFirstPagePortrait","_updateScrollMode","_updateSpreadMode","pages","parity","spread","intent","annotations","dontFlip","AnnotationLayer","cancel","MAX_CANVAS_PIXELS","destroy","_resetZoomLayer","removeFromDOM","zoomLayerCanvas","keepZoomLayer","keepAnnotations","currentZoomLayerNode","currentAnnotationNode","cssTransform","isScalingRestricted","redrawAnnotations","relativeRotation","absRotation","scaleX","scaleY","textLayerViewport","textRelativeRotation","textAbsRotation","textLayerDiv","transX","transY","getPagePoint","canvasWrapper","textLayer","finishPaintTask","paintTask","resultPromise","readableStream","paintOnCanvas","onRenderContinue","isCanvasHidden","showCanvas","actualSizeViewport","pixelsInViewport","maxScale","sfx","approximateFraction","sfy","roundToDivide","transform","paintOnSvg","cancelled","ensureNotCancelled","opList","svgGfx","svg","wrapper","EXPAND_DIVS_TIMEOUT","_finishRendering","endOfContent","numTextDivs","textLayerFrag","textContentStream","textDivs","textContentItemsStr","setTextContentStream","setTextContent","_convertMatches","iIndex","end","m","mm","begin","divIdx","_renderMatches","isSelectedPage","selectedMatchIdx","prevEnd","infinity","appendTextToDiv","span","i0","i1","isSelected","highlightSuffix","beginText","n0","n1","_updateMatches","clearedUntilDivIdx","n","pageMatches","pageMatchesLength","_bindMouse","expandDivsTimer","adjustTop","divBounds","eventName","eventDetails","lastPage","pageRotateCw","pageRotateCcw","setPageNumber","setPagesCount","_bindClickListeners","details","_bindCursorToolsListener","buttons","_bindScrollModeListener","isScrollModeHorizontal","scrollModeChanged","_bindSpreadModeListener","spreadModeChanged","_setMaxHeight","_ensurePageViewVisible","previousPageView","viewerNodes","scrolledDown","PAGE_NUMBER_LOADING_INDICATOR","SCALE_SELECT_CONTAINER_WIDTH","SCALE_SELECT_WIDTH","setPageScale","_bindListeners","self","resetNumPages","pageScale","customScale","predefinedValueFound","option","updateLoadingIndicatorState","pageNumberInput","predefinedValuesPromise","maxWidth","overflow","DEFAULT_VIEW_HISTORY_CACHE_SIZE","cacheSize","databaseStr","database","branch","localStorage","properties","values","GenericCom","defaultPreferences","defaults","defaultValue","prefValue","defaultType","DISABLE_CREATE_OBJECT_URL","downloadUrl","createValidAbsoluteUrl","downloadData","createObjectURL","webL10n","gL10nData","gTextData","gTextProp","gLanguage","gMacros","gReadyState","gAsyncResourceLoading","script","l10nId","l10nArgs","onSuccess","onFailure","baseURL","text","dictionary","reBlank","reComment","reSection","reImport","reSplit","entries","rawText","currentLang","genericLang","lang","skipLang","parsedRawLinesCallback","loadImport","tmp","evalString","nextEntry","xhrLoadText","parseRawLines","parsedPropertiesCallback","parseProperties","prop","successCallback","clear","langLinks","getL10nResourceLinks","langCount","dict","getL10nDictionary","defaultLocale","anyCaseLang","onResourceLoaded","gResourceCount","link","parseResource","resource","locales2rules","list","start","pluralRules","isBetween","getPluralRules","rv","substIndexes","substArguments","reIndex","reMatch","macroName","paramName","macro","reArgs","arg","getL10nAttributes","getL10nData","getChildElementCount","children","l","textNode","getTranslatableChildren","elementCount","translateElement","get","getData","getText","getLanguage","setLanguage","loadLocale","getDirection","rtlList","shortCode","translate","getReadyState","ready","activeService","scratchCanvas","PRINT_RESOLUTION","PRINT_UNITS","PDFPrintService","layout","body","hasEqualPageSizes","ensureOverlay","renderPages","renderNextPage","renderProgress","renderPage","useRenderedPage","printItem","performPrint","throwIfInactive","activeServiceOnEntry","abort","progressContainer","progressBar","progressPerc","stopPropagationIfNeeded","overlayPromise"],"mappings":"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","file":"viewer.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","/* Copyright 2016 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n\"use strict\";\n\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"CHROME\")) {\n var defaultUrl; // eslint-disable-line no-var\n\n (function rewriteUrlClosure() {\n // Run this code outside DOMContentLoaded to make sure that the URL\n // is rewritten as soon as possible.\n const queryString = document.location.search.slice(1);\n const m = /(^|&)file=([^&]*)/.exec(queryString);\n defaultUrl = m ? decodeURIComponent(m[2]) : \"\";\n\n // Example: chrome-extension://.../http://example.com/file.pdf\n const humanReadableUrl = \"/\" + defaultUrl + location.hash;\n history.replaceState(history.state, \"\", humanReadableUrl);\n if (top === window) {\n // eslint-disable-next-line no-undef\n chrome.runtime.sendMessage(\"showPageAction\");\n }\n })();\n}\n\nlet pdfjsWebApp, pdfjsWebAppOptions;\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"PRODUCTION\")) {\n pdfjsWebApp = require(\"./app.js\");\n pdfjsWebAppOptions = require(\"./app_options.js\");\n}\n\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"MOZCENTRAL\")) {\n require(\"./firefoxcom.js\");\n require(\"./firefox_print_service.js\");\n}\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\")) {\n require(\"./genericcom.js\");\n}\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"CHROME\")) {\n require(\"./chromecom.js\");\n}\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"CHROME || GENERIC\")) {\n require(\"./pdf_print_service.js\");\n}\n\nfunction getViewerConfiguration() {\n return {\n appContainer: document.body,\n mainContainer: document.getElementById(\"viewerContainer\"),\n viewerContainer: document.getElementById(\"viewer\"),\n eventBus: null,\n toolbar: {\n container: document.getElementById(\"toolbarViewer\"),\n numPages: document.getElementById(\"numPages\"),\n pageNumber: document.getElementById(\"pageNumber\"),\n scaleSelectContainer: document.getElementById(\"scaleSelectContainer\"),\n scaleSelect: document.getElementById(\"scaleSelect\"),\n customScaleOption: document.getElementById(\"customScaleOption\"),\n previous: document.getElementById(\"previous\"),\n next: document.getElementById(\"next\"),\n zoomIn: document.getElementById(\"zoomIn\"),\n zoomOut: document.getElementById(\"zoomOut\"),\n viewFind: document.getElementById(\"viewFind\"),\n openFile: document.getElementById(\"openFile\"),\n print: document.getElementById(\"print\"),\n presentationModeButton: document.getElementById(\"presentationMode\"),\n download: document.getElementById(\"download\"),\n viewBookmark: document.getElementById(\"viewBookmark\"),\n },\n secondaryToolbar: {\n toolbar: document.getElementById(\"secondaryToolbar\"),\n toggleButton: document.getElementById(\"secondaryToolbarToggle\"),\n toolbarButtonContainer: document.getElementById(\n \"secondaryToolbarButtonContainer\"\n ),\n presentationModeButton: document.getElementById(\n \"secondaryPresentationMode\"\n ),\n openFileButton: document.getElementById(\"secondaryOpenFile\"),\n printButton: document.getElementById(\"secondaryPrint\"),\n downloadButton: document.getElementById(\"secondaryDownload\"),\n viewBookmarkButton: document.getElementById(\"secondaryViewBookmark\"),\n firstPageButton: document.getElementById(\"firstPage\"),\n lastPageButton: document.getElementById(\"lastPage\"),\n pageRotateCwButton: document.getElementById(\"pageRotateCw\"),\n pageRotateCcwButton: document.getElementById(\"pageRotateCcw\"),\n cursorSelectToolButton: document.getElementById(\"cursorSelectTool\"),\n cursorHandToolButton: document.getElementById(\"cursorHandTool\"),\n scrollVerticalButton: document.getElementById(\"scrollVertical\"),\n scrollHorizontalButton: document.getElementById(\"scrollHorizontal\"),\n scrollWrappedButton: document.getElementById(\"scrollWrapped\"),\n spreadNoneButton: document.getElementById(\"spreadNone\"),\n spreadOddButton: document.getElementById(\"spreadOdd\"),\n spreadEvenButton: document.getElementById(\"spreadEven\"),\n documentPropertiesButton: document.getElementById(\"documentProperties\"),\n },\n fullscreen: {\n contextFirstPage: document.getElementById(\"contextFirstPage\"),\n contextLastPage: document.getElementById(\"contextLastPage\"),\n contextPageRotateCw: document.getElementById(\"contextPageRotateCw\"),\n contextPageRotateCcw: document.getElementById(\"contextPageRotateCcw\"),\n },\n sidebar: {\n // Divs (and sidebar button)\n outerContainer: document.getElementById(\"outerContainer\"),\n viewerContainer: document.getElementById(\"viewerContainer\"),\n toggleButton: document.getElementById(\"sidebarToggle\"),\n // Buttons\n thumbnailButton: document.getElementById(\"viewThumbnail\"),\n outlineButton: document.getElementById(\"viewOutline\"),\n attachmentsButton: document.getElementById(\"viewAttachments\"),\n // Views\n thumbnailView: document.getElementById(\"thumbnailView\"),\n outlineView: document.getElementById(\"outlineView\"),\n attachmentsView: document.getElementById(\"attachmentsView\"),\n },\n sidebarResizer: {\n outerContainer: document.getElementById(\"outerContainer\"),\n resizer: document.getElementById(\"sidebarResizer\"),\n },\n findBar: {\n bar: document.getElementById(\"findbar\"),\n toggleButton: document.getElementById(\"viewFind\"),\n findField: document.getElementById(\"findInput\"),\n highlightAllCheckbox: document.getElementById(\"findHighlightAll\"),\n caseSensitiveCheckbox: document.getElementById(\"findMatchCase\"),\n entireWordCheckbox: document.getElementById(\"findEntireWord\"),\n findMsg: document.getElementById(\"findMsg\"),\n findResultsCount: document.getElementById(\"findResultsCount\"),\n findPreviousButton: document.getElementById(\"findPrevious\"),\n findNextButton: document.getElementById(\"findNext\"),\n },\n passwordOverlay: {\n overlayName: \"passwordOverlay\",\n container: document.getElementById(\"passwordOverlay\"),\n label: document.getElementById(\"passwordText\"),\n input: document.getElementById(\"password\"),\n submitButton: document.getElementById(\"passwordSubmit\"),\n cancelButton: document.getElementById(\"passwordCancel\"),\n },\n documentProperties: {\n overlayName: \"documentPropertiesOverlay\",\n container: document.getElementById(\"documentPropertiesOverlay\"),\n closeButton: document.getElementById(\"documentPropertiesClose\"),\n fields: {\n fileName: document.getElementById(\"fileNameField\"),\n fileSize: document.getElementById(\"fileSizeField\"),\n title: document.getElementById(\"titleField\"),\n author: document.getElementById(\"authorField\"),\n subject: document.getElementById(\"subjectField\"),\n keywords: document.getElementById(\"keywordsField\"),\n creationDate: document.getElementById(\"creationDateField\"),\n modificationDate: document.getElementById(\"modificationDateField\"),\n creator: document.getElementById(\"creatorField\"),\n producer: document.getElementById(\"producerField\"),\n version: document.getElementById(\"versionField\"),\n pageCount: document.getElementById(\"pageCountField\"),\n pageSize: document.getElementById(\"pageSizeField\"),\n linearized: document.getElementById(\"linearizedField\"),\n },\n },\n errorWrapper: {\n container: document.getElementById(\"errorWrapper\"),\n errorMessage: document.getElementById(\"errorMessage\"),\n closeButton: document.getElementById(\"errorClose\"),\n errorMoreInfo: document.getElementById(\"errorMoreInfo\"),\n moreInfoButton: document.getElementById(\"errorShowMore\"),\n lessInfoButton: document.getElementById(\"errorShowLess\"),\n },\n printContainer: document.getElementById(\"printContainer\"),\n openFileInputName: \"fileInput\",\n debuggerScriptPath: \"./debugger.js\",\n };\n}\n\nfunction webViewerLoad() {\n const config = getViewerConfiguration();\n if (typeof PDFJSDev === \"undefined\" || !PDFJSDev.test(\"PRODUCTION\")) {\n Promise.all([\n import(\"pdfjs-web/app.js\"),\n import(\"pdfjs-web/app_options.js\"),\n import(\"pdfjs-web/genericcom.js\"),\n import(\"pdfjs-web/pdf_print_service.js\"),\n ]).then(function ([app, appOptions, genericCom, pdfPrintService]) {\n window.PDFViewerApplication = app.PDFViewerApplication;\n window.PDFViewerApplicationOptions = appOptions.AppOptions;\n app.PDFViewerApplication.run(config);\n });\n } else {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"CHROME\")) {\n pdfjsWebAppOptions.AppOptions.set(\"defaultUrl\", defaultUrl);\n }\n\n window.PDFViewerApplication = pdfjsWebApp.PDFViewerApplication;\n window.PDFViewerApplicationOptions = pdfjsWebAppOptions.AppOptions;\n\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\")) {\n // Give custom implementations of the default viewer a simpler way to\n // set various `AppOptions`, by dispatching an event once all viewer\n // files are loaded but *before* the viewer initialization has run.\n const event = document.createEvent(\"CustomEvent\");\n event.initCustomEvent(\"webviewerloaded\", true, true, {\n source: window,\n });\n try {\n // Attempt to dispatch the event at the embedding `document`,\n // in order to support cases where the viewer is embedded in\n // a *dynamically* created + @@ -11,6 +11,7 @@ import {computed, PropType} from "vue"; import {Recipe} from "@/openapi"; import {useDjangoUrls} from "@/composables/useDjangoUrls"; + const props = defineProps({ recipe: {type: {} as PropType, required: true} }) diff --git a/vue3/src/components/display/RecipeImage.vue b/vue3/src/components/display/RecipeImage.vue index 1ee994aa2..c90b8a185 100644 --- a/vue3/src/components/display/RecipeImage.vue +++ b/vue3/src/components/display/RecipeImage.vue @@ -1,5 +1,5 @@ - + diff --git a/vue3/src/composables/useDjangoUrls.ts b/vue3/src/composables/useDjangoUrls.ts index 1a9b3d8c0..f4da5f5e8 100644 --- a/vue3/src/composables/useDjangoUrls.ts +++ b/vue3/src/composables/useDjangoUrls.ts @@ -8,11 +8,15 @@ export function useDjangoUrls() { /** * given a path return the full server url to that url respecting possible sub path setups * @param path + * @param appendSlash automatically append a slash to the end of the url (default true) */ - function getDjangoUrl(path: string){ - if(path.charAt(0) == '/'){ + function getDjangoUrl(path: string, appendSlash = true){ + if(path.startsWith('/')){ path = path.substring(1) } + if(!path.endsWith('/') && appendSlash){ + path = path + '/' + } return `${basePath}/${path}` } diff --git a/vue3/src/locales/ar.json b/vue3/src/locales/ar.json index f32572904..05f21a948 100644 --- a/vue3/src/locales/ar.json +++ b/vue3/src/locales/ar.json @@ -518,6 +518,7 @@ "reset_food_inheritance_info": "", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/bg.json b/vue3/src/locales/bg.json index b95689c5a..76a93c5fe 100644 --- a/vue3/src/locales/bg.json +++ b/vue3/src/locales/bg.json @@ -506,6 +506,7 @@ "reset_children_help": "Презаписване на всички последователи със стойности от наследени полета. Наследените полета на последователите ще бъдат зададени на наследяване на полета, освен ако последователите наследяват полета не е зададено.", "review_shopping": "Прегледайте записите за пазаруване, преди да запазите", "save_filter": "Запазване на филтъра", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/ca.json b/vue3/src/locales/ca.json index 3fde89998..ab9f5f4b5 100644 --- a/vue3/src/locales/ca.json +++ b/vue3/src/locales/ca.json @@ -642,6 +642,7 @@ "reusable_help_text": "L'enllaç d'invitació es pot fer servir per més d'un usuari.", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/cs.json b/vue3/src/locales/cs.json index b4f11600f..29e9a695d 100644 --- a/vue3/src/locales/cs.json +++ b/vue3/src/locales/cs.json @@ -635,6 +635,7 @@ "reusable_help_text": "Má-li pozvánka platit pro více než jednoho uživatele.", "review_shopping": "Zkontrolovat nákupní položky před uložením", "save_filter": "Uložit filtr", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/da.json b/vue3/src/locales/da.json index c1de359fe..46b4461a5 100644 --- a/vue3/src/locales/da.json +++ b/vue3/src/locales/da.json @@ -613,6 +613,7 @@ "reusable_help_text": "Om invitationslinket skal kunne bruges af mere end en bruger.", "review_shopping": "Tjek indkøbsvarer inden der gemmes", "save_filter": "Gem filter", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/de.json b/vue3/src/locales/de.json index ec548059a..4f8bae03d 100644 --- a/vue3/src/locales/de.json +++ b/vue3/src/locales/de.json @@ -647,6 +647,7 @@ "reusable_help_text": "Soll der Einladungslink für mehr als eine Person nutzbar sein.", "review_shopping": "Überprüfe die Einkaufsliste vor dem Speichern", "save_filter": "Filter speichern", + "searchFilterCreatedByHelp": "Rezepte die vom ausgewählten Nutzer erstellt wurden.", "searchFilterObjectsAndHelp": "Rezepte mit allen gewählten {type}", "searchFilterObjectsAndNotHelp": "Rezepte ausschließen die alle gewählten {type} haben.", "searchFilterObjectsHelp": "Rezepte mit einem beliebigen der ausgewählten {type}", diff --git a/vue3/src/locales/el.json b/vue3/src/locales/el.json index 19add934f..32ebb1d11 100644 --- a/vue3/src/locales/el.json +++ b/vue3/src/locales/el.json @@ -600,6 +600,7 @@ "reusable_help_text": "Ο σύνδεσμος πρόσκλησης μπορεί να χρησιμοποιηθεί από πολλαπλούς χρήστες.", "review_shopping": "Ανασκόπηση εγγραφών στις αγορές πριν την αποθήκευση", "save_filter": "Αποθήκευση φίλτρου", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/en.json b/vue3/src/locales/en.json index 15a232920..ee656f6b2 100644 --- a/vue3/src/locales/en.json +++ b/vue3/src/locales/en.json @@ -644,6 +644,7 @@ "reusable_help_text": "Should the invite link be usable for more than one user.", "review_shopping": "Review shopping entries before saving", "save_filter": "Save Filter", + "searchFilterCreatedByHelp": "Recipes that were created by the selected user.", "searchFilterObjectsAndHelp": "Recipes with all of the selected {type}", "searchFilterObjectsAndNotHelp": "Exclude recipes with all of the selected {type}", "searchFilterObjectsHelp": "Recipes with any of the selected {type}", diff --git a/vue3/src/locales/es.json b/vue3/src/locales/es.json index c693c4791..608fd4185 100644 --- a/vue3/src/locales/es.json +++ b/vue3/src/locales/es.json @@ -642,6 +642,7 @@ "reusable_help_text": "El enlace de invitación podrá ser usado por más de un usuario.", "review_shopping": "Revise entradas de compra antes de guardar", "save_filter": "Guardar Filtros", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/fi.json b/vue3/src/locales/fi.json index 07b534631..e7f4e0cee 100644 --- a/vue3/src/locales/fi.json +++ b/vue3/src/locales/fi.json @@ -350,6 +350,7 @@ "or": "tai", "plural_short": "", "plural_usage_info": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/fr.json b/vue3/src/locales/fr.json index 79f492d3a..967b2ce64 100644 --- a/vue3/src/locales/fr.json +++ b/vue3/src/locales/fr.json @@ -631,6 +631,7 @@ "reusable_help_text": "Le lien d’invitation doit-il être utilisable par plus d’un utilisateur.", "review_shopping": "Vérifier les éléments de la liste avant de sauvegarder", "save_filter": "Sauvegarder le filtre", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/he.json b/vue3/src/locales/he.json index a1dff4fc8..365d1107a 100644 --- a/vue3/src/locales/he.json +++ b/vue3/src/locales/he.json @@ -643,6 +643,7 @@ "reusable_help_text": "האם הכתובת השיתוף תהיה שמישה ליותר ממשתמש אחד.", "review_shopping": "עיין ברשימת הקניות לפני שמירה", "save_filter": "שמור סנן", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/hu.json b/vue3/src/locales/hu.json index 8511e2de2..b641741d0 100644 --- a/vue3/src/locales/hu.json +++ b/vue3/src/locales/hu.json @@ -602,6 +602,7 @@ "reusable_help_text": "A meghívó linknek egynél több felhasználó számára is használhatónak kell lennie.", "review_shopping": "A bevásárlási bejegyzések áttekintése mentés előtt", "save_filter": "Szűrő mentése", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/hy.json b/vue3/src/locales/hy.json index e1b80168f..afc66a8a4 100644 --- a/vue3/src/locales/hy.json +++ b/vue3/src/locales/hy.json @@ -264,6 +264,7 @@ "or": "կամ", "plural_short": "", "plural_usage_info": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/id.json b/vue3/src/locales/id.json index 06f3430db..6bf4710da 100644 --- a/vue3/src/locales/id.json +++ b/vue3/src/locales/id.json @@ -543,6 +543,7 @@ "reusable_help_text": "Haruskah tautan undangan dapat digunakan untuk lebih dari satu pengguna.", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/is.json b/vue3/src/locales/is.json index 562037533..a869268f5 100644 --- a/vue3/src/locales/is.json +++ b/vue3/src/locales/is.json @@ -641,6 +641,7 @@ "reusable_help_text": "", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/it.json b/vue3/src/locales/it.json index 3a495b101..8394f37bf 100644 --- a/vue3/src/locales/it.json +++ b/vue3/src/locales/it.json @@ -561,6 +561,7 @@ "reusable_help_text": "Il link di invito dovrebbe essere usabile per più di un utente.", "review_shopping": "Rivedi le voci della spesa prima di salvare", "save_filter": "Salva filtro", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/lt.json b/vue3/src/locales/lt.json index 656f5190d..aec909692 100644 --- a/vue3/src/locales/lt.json +++ b/vue3/src/locales/lt.json @@ -611,6 +611,7 @@ "reusable_help_text": "", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/nb_NO.json b/vue3/src/locales/nb_NO.json index 7b6badc47..bee2593ec 100644 --- a/vue3/src/locales/nb_NO.json +++ b/vue3/src/locales/nb_NO.json @@ -583,6 +583,7 @@ "reusable_help_text": "Burde invitasjonslenken være brukbar for flere enn én bruker.", "review_shopping": "", "save_filter": "Lagre filtre", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/nl.json b/vue3/src/locales/nl.json index a2a29666a..082948976 100644 --- a/vue3/src/locales/nl.json +++ b/vue3/src/locales/nl.json @@ -604,6 +604,7 @@ "reusable_help_text": "Zou de uitnodigingslink voor meer dan een gebruiker bruikbaar zijn.", "review_shopping": "Beoordeel items op het boodschappenlijstje voor opslaan", "save_filter": "Bewaar filter", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/pl.json b/vue3/src/locales/pl.json index dc74ea1f4..fdff829d7 100644 --- a/vue3/src/locales/pl.json +++ b/vue3/src/locales/pl.json @@ -645,6 +645,7 @@ "reusable_help_text": "Czy link z zaproszeniem może być używany przez więcej niż jednego użytkownika.", "review_shopping": "Przejrzyj wpisy zakupów przed zapisaniem", "save_filter": "Zapisz filtr", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/pt.json b/vue3/src/locales/pt.json index f4282bdf4..0a24db356 100644 --- a/vue3/src/locales/pt.json +++ b/vue3/src/locales/pt.json @@ -499,6 +499,7 @@ "reusable_help_text": "O link de convite poderá ser usado por mais do que um utilizador.", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/pt_BR.json b/vue3/src/locales/pt_BR.json index d8e02f06f..673ae4aa3 100644 --- a/vue3/src/locales/pt_BR.json +++ b/vue3/src/locales/pt_BR.json @@ -607,6 +607,7 @@ "reusable_help_text": "O convite pode ser utilizado para mais de um usuário.", "review_shopping": "", "save_filter": "Salvar Filtro", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/ro.json b/vue3/src/locales/ro.json index 99fa18a7f..e191e3a23 100644 --- a/vue3/src/locales/ro.json +++ b/vue3/src/locales/ro.json @@ -564,6 +564,7 @@ "reusable_help_text": "Ar trebui link-ul de invitație să poată fi utilizat de mai mulți utilizatori.", "review_shopping": "Examinați intrările de cumpărături înainte de a salva", "save_filter": "Salvare filtru", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/ru.json b/vue3/src/locales/ru.json index 3f82fdc8d..c509270e5 100644 --- a/vue3/src/locales/ru.json +++ b/vue3/src/locales/ru.json @@ -451,6 +451,7 @@ "remove_selection": "Отменить выбор", "review_shopping": "Просмотрите записи о покупках перед сохранением", "save_filter": "Сохранить фильтр", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/sl.json b/vue3/src/locales/sl.json index bd701b63a..653bbb06a 100644 --- a/vue3/src/locales/sl.json +++ b/vue3/src/locales/sl.json @@ -434,6 +434,7 @@ "remember_hours": "Ure, ki si jih zapomni", "remember_search": "Zapomni si iskanje", "reusable_help_text": "Ali lahko povezavo za povabilo uporabi več kot en uporabnik.", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/sv.json b/vue3/src/locales/sv.json index 1c58add2f..306a01ee8 100644 --- a/vue3/src/locales/sv.json +++ b/vue3/src/locales/sv.json @@ -645,6 +645,7 @@ "reusable_help_text": "Bör inbjudningslänken vara användbar för mer än en användare.", "review_shopping": "Granska inköpsposter innan du sparar", "save_filter": "Spara filter", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/tr.json b/vue3/src/locales/tr.json index eb57abae6..d24e13b98 100644 --- a/vue3/src/locales/tr.json +++ b/vue3/src/locales/tr.json @@ -643,6 +643,7 @@ "reusable_help_text": "Davet bağlantısı birden fazla kullanıcı için kullanılabilir olsun mu.", "review_shopping": "Kaydetmeden önce alışveriş girişlerini inceleyin", "save_filter": "Filtreyi Kaydet", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/uk.json b/vue3/src/locales/uk.json index 9f33a6a10..ddbb18e49 100644 --- a/vue3/src/locales/uk.json +++ b/vue3/src/locales/uk.json @@ -525,6 +525,7 @@ "reusable_help_text": "Запрошувальне посилання має бути тільки для одного користувача.", "review_shopping": "", "save_filter": "", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/zh_Hans.json b/vue3/src/locales/zh_Hans.json index 179843ea2..0ea116386 100644 --- a/vue3/src/locales/zh_Hans.json +++ b/vue3/src/locales/zh_Hans.json @@ -635,6 +635,7 @@ "reusable_help_text": "邀请链接是否可用于多个用户。", "review_shopping": "保存前查看购物列表", "save_filter": "保存筛选器", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/locales/zh_Hant.json b/vue3/src/locales/zh_Hant.json index 85108e435..2d417fd43 100644 --- a/vue3/src/locales/zh_Hant.json +++ b/vue3/src/locales/zh_Hant.json @@ -238,6 +238,7 @@ "plural_short": "", "plural_usage_info": "", "recipe_property_info": "您也可以為食材添加屬性,以便根據您的食譜自動計算它們!", + "searchFilterCreatedByHelp": "", "searchFilterObjectsAndHelp": "", "searchFilterObjectsAndNotHelp": "", "searchFilterObjectsOrNotHelp": "", diff --git a/vue3/src/openapi/.openapi-generator/FILES b/vue3/src/openapi/.openapi-generator/FILES index 19666ad7c..6fb694a11 100644 --- a/vue3/src/openapi/.openapi-generator/FILES +++ b/vue3/src/openapi/.openapi-generator/FILES @@ -7,6 +7,8 @@ models/AccessToken.ts models/AuthToken.ts models/AutoMealPlan.ts models/Automation.ts +models/AutomationTypeEnum.ts +models/BaseUnitEnum.ts models/BookmarkletImport.ts models/BookmarkletImportList.ts models/ConnectorConfigConfig.ts @@ -33,6 +35,16 @@ models/MealPlan.ts models/MealType.ts models/MethodEnum.ts models/NutritionInformation.ts +models/OpenDataCategory.ts +models/OpenDataConversion.ts +models/OpenDataFood.ts +models/OpenDataFoodProperty.ts +models/OpenDataProperty.ts +models/OpenDataStore.ts +models/OpenDataStoreCategory.ts +models/OpenDataUnit.ts +models/OpenDataUnitTypeEnum.ts +models/OpenDataVersion.ts models/PaginatedAutomationList.ts models/PaginatedBookmarkletImportListList.ts models/PaginatedCookLogList.ts @@ -79,6 +91,13 @@ models/PatchedInviteLink.ts models/PatchedKeyword.ts models/PatchedMealPlan.ts models/PatchedMealType.ts +models/PatchedOpenDataCategory.ts +models/PatchedOpenDataConversion.ts +models/PatchedOpenDataFood.ts +models/PatchedOpenDataProperty.ts +models/PatchedOpenDataStore.ts +models/PatchedOpenDataUnit.ts +models/PatchedOpenDataVersion.ts models/PatchedProperty.ts models/PatchedPropertyType.ts models/PatchedRecipe.ts @@ -138,7 +157,6 @@ models/SupermarketCategoryRelation.ts models/Sync.ts models/SyncLog.ts models/ThemeEnum.ts -models/TypeEnum.ts models/Unit.ts models/UnitConversion.ts models/User.ts diff --git a/vue3/src/openapi/apis/ApiApi.ts b/vue3/src/openapi/apis/ApiApi.ts index 9f547df85..8a3e1fbb7 100644 --- a/vue3/src/openapi/apis/ApiApi.ts +++ b/vue3/src/openapi/apis/ApiApi.ts @@ -36,6 +36,13 @@ import type { Localization, MealPlan, MealType, + OpenDataCategory, + OpenDataConversion, + OpenDataFood, + OpenDataProperty, + OpenDataStore, + OpenDataUnit, + OpenDataVersion, PaginatedAutomationList, PaginatedBookmarkletImportListList, PaginatedCookLogList, @@ -82,6 +89,13 @@ import type { PatchedKeyword, PatchedMealPlan, PatchedMealType, + PatchedOpenDataCategory, + PatchedOpenDataConversion, + PatchedOpenDataFood, + PatchedOpenDataProperty, + PatchedOpenDataStore, + PatchedOpenDataUnit, + PatchedOpenDataVersion, PatchedProperty, PatchedPropertyType, PatchedRecipe, @@ -178,6 +192,20 @@ import { MealPlanToJSON, MealTypeFromJSON, MealTypeToJSON, + OpenDataCategoryFromJSON, + OpenDataCategoryToJSON, + OpenDataConversionFromJSON, + OpenDataConversionToJSON, + OpenDataFoodFromJSON, + OpenDataFoodToJSON, + OpenDataPropertyFromJSON, + OpenDataPropertyToJSON, + OpenDataStoreFromJSON, + OpenDataStoreToJSON, + OpenDataUnitFromJSON, + OpenDataUnitToJSON, + OpenDataVersionFromJSON, + OpenDataVersionToJSON, PaginatedAutomationListFromJSON, PaginatedAutomationListToJSON, PaginatedBookmarkletImportListListFromJSON, @@ -270,6 +298,20 @@ import { PatchedMealPlanToJSON, PatchedMealTypeFromJSON, PatchedMealTypeToJSON, + PatchedOpenDataCategoryFromJSON, + PatchedOpenDataCategoryToJSON, + PatchedOpenDataConversionFromJSON, + PatchedOpenDataConversionToJSON, + PatchedOpenDataFoodFromJSON, + PatchedOpenDataFoodToJSON, + PatchedOpenDataPropertyFromJSON, + PatchedOpenDataPropertyToJSON, + PatchedOpenDataStoreFromJSON, + PatchedOpenDataStoreToJSON, + PatchedOpenDataUnitFromJSON, + PatchedOpenDataUnitToJSON, + PatchedOpenDataVersionFromJSON, + PatchedOpenDataVersionToJSON, PatchedPropertyFromJSON, PatchedPropertyToJSON, PatchedPropertyTypeFromJSON, @@ -854,6 +896,164 @@ export interface ApiMealTypeUpdateRequest { mealType: Omit; } +export interface ApiOpenDataCategoryCreateRequest { + openDataCategory: Omit; +} + +export interface ApiOpenDataCategoryDestroyRequest { + id: number; +} + +export interface ApiOpenDataCategoryPartialUpdateRequest { + id: number; + patchedOpenDataCategory?: Omit; +} + +export interface ApiOpenDataCategoryRetrieveRequest { + id: number; +} + +export interface ApiOpenDataCategoryUpdateRequest { + id: number; + openDataCategory: Omit; +} + +export interface ApiOpenDataConversionCreateRequest { + openDataConversion: Omit; +} + +export interface ApiOpenDataConversionDestroyRequest { + id: number; +} + +export interface ApiOpenDataConversionPartialUpdateRequest { + id: number; + patchedOpenDataConversion?: Omit; +} + +export interface ApiOpenDataConversionRetrieveRequest { + id: number; +} + +export interface ApiOpenDataConversionUpdateRequest { + id: number; + openDataConversion: Omit; +} + +export interface ApiOpenDataFDCRetrieveRequest { + id: string; +} + +export interface ApiOpenDataFoodCreateRequest { + openDataFood: Omit; +} + +export interface ApiOpenDataFoodDestroyRequest { + id: number; +} + +export interface ApiOpenDataFoodPartialUpdateRequest { + id: number; + patchedOpenDataFood?: Omit; +} + +export interface ApiOpenDataFoodRetrieveRequest { + id: number; +} + +export interface ApiOpenDataFoodUpdateRequest { + id: number; + openDataFood: Omit; +} + +export interface ApiOpenDataPropertyCreateRequest { + openDataProperty: Omit; +} + +export interface ApiOpenDataPropertyDestroyRequest { + id: number; +} + +export interface ApiOpenDataPropertyPartialUpdateRequest { + id: number; + patchedOpenDataProperty?: Omit; +} + +export interface ApiOpenDataPropertyRetrieveRequest { + id: number; +} + +export interface ApiOpenDataPropertyUpdateRequest { + id: number; + openDataProperty: Omit; +} + +export interface ApiOpenDataStoreCreateRequest { + openDataStore: Omit; +} + +export interface ApiOpenDataStoreDestroyRequest { + id: number; +} + +export interface ApiOpenDataStorePartialUpdateRequest { + id: number; + patchedOpenDataStore?: Omit; +} + +export interface ApiOpenDataStoreRetrieveRequest { + id: number; +} + +export interface ApiOpenDataStoreUpdateRequest { + id: number; + openDataStore: Omit; +} + +export interface ApiOpenDataUnitCreateRequest { + openDataUnit: Omit; +} + +export interface ApiOpenDataUnitDestroyRequest { + id: number; +} + +export interface ApiOpenDataUnitPartialUpdateRequest { + id: number; + patchedOpenDataUnit?: Omit; +} + +export interface ApiOpenDataUnitRetrieveRequest { + id: number; +} + +export interface ApiOpenDataUnitUpdateRequest { + id: number; + openDataUnit: Omit; +} + +export interface ApiOpenDataVersionCreateRequest { + openDataVersion: OpenDataVersion; +} + +export interface ApiOpenDataVersionDestroyRequest { + id: number; +} + +export interface ApiOpenDataVersionPartialUpdateRequest { + id: number; + patchedOpenDataVersion?: PatchedOpenDataVersion; +} + +export interface ApiOpenDataVersionRetrieveRequest { + id: number; +} + +export interface ApiOpenDataVersionUpdateRequest { + id: number; + openDataVersion: OpenDataVersion; +} + export interface ApiPropertyCreateRequest { property: Property; } @@ -1001,6 +1201,7 @@ export interface ApiRecipeListRequest { createdon?: Date; createdonGte?: Date; createdonLte?: Date; + filter?: number; foods?: Array; foodsAnd?: Array; foodsAndNot?: Array; @@ -1022,6 +1223,7 @@ export interface ApiRecipeListRequest { rating?: number; ratingGte?: number; ratingLte?: number; + sortOrder?: string; timescooked?: number; timescookedGte?: number; timescookedLte?: number; @@ -5802,6 +6004,1593 @@ export class ApiApi extends runtime.BaseAPI { return await response.value(); } + /** + */ + async apiOpenDataCategoryCreateRaw(requestParameters: ApiOpenDataCategoryCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataCategory'] == null) { + throw new runtime.RequiredError( + 'openDataCategory', + 'Required parameter "openDataCategory" was null or undefined when calling apiOpenDataCategoryCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataCategoryToJSON(requestParameters['openDataCategory']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataCategoryFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataCategoryCreate(requestParameters: ApiOpenDataCategoryCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataCategoryCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataCategoryDestroyRaw(requestParameters: ApiOpenDataCategoryDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataCategoryDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataCategoryDestroy(requestParameters: ApiOpenDataCategoryDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataCategoryDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataCategoryListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataCategoryFromJSON)); + } + + /** + */ + async apiOpenDataCategoryList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataCategoryListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataCategoryPartialUpdateRaw(requestParameters: ApiOpenDataCategoryPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataCategoryPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataCategoryToJSON(requestParameters['patchedOpenDataCategory']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataCategoryFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataCategoryPartialUpdate(requestParameters: ApiOpenDataCategoryPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataCategoryPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataCategoryRetrieveRaw(requestParameters: ApiOpenDataCategoryRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataCategoryRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataCategoryFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataCategoryRetrieve(requestParameters: ApiOpenDataCategoryRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataCategoryRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataCategoryUpdateRaw(requestParameters: ApiOpenDataCategoryUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataCategoryUpdate().' + ); + } + + if (requestParameters['openDataCategory'] == null) { + throw new runtime.RequiredError( + 'openDataCategory', + 'Required parameter "openDataCategory" was null or undefined when calling apiOpenDataCategoryUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-category/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataCategoryToJSON(requestParameters['openDataCategory']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataCategoryFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataCategoryUpdate(requestParameters: ApiOpenDataCategoryUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataCategoryUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataConversionCreateRaw(requestParameters: ApiOpenDataConversionCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataConversion'] == null) { + throw new runtime.RequiredError( + 'openDataConversion', + 'Required parameter "openDataConversion" was null or undefined when calling apiOpenDataConversionCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataConversionToJSON(requestParameters['openDataConversion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataConversionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataConversionCreate(requestParameters: ApiOpenDataConversionCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataConversionCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataConversionDestroyRaw(requestParameters: ApiOpenDataConversionDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataConversionDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataConversionDestroy(requestParameters: ApiOpenDataConversionDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataConversionDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataConversionListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataConversionFromJSON)); + } + + /** + */ + async apiOpenDataConversionList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataConversionListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataConversionPartialUpdateRaw(requestParameters: ApiOpenDataConversionPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataConversionPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataConversionToJSON(requestParameters['patchedOpenDataConversion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataConversionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataConversionPartialUpdate(requestParameters: ApiOpenDataConversionPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataConversionPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataConversionRetrieveRaw(requestParameters: ApiOpenDataConversionRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataConversionRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataConversionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataConversionRetrieve(requestParameters: ApiOpenDataConversionRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataConversionRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataConversionUpdateRaw(requestParameters: ApiOpenDataConversionUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataConversionUpdate().' + ); + } + + if (requestParameters['openDataConversion'] == null) { + throw new runtime.RequiredError( + 'openDataConversion', + 'Required parameter "openDataConversion" was null or undefined when calling apiOpenDataConversionUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-conversion/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataConversionToJSON(requestParameters['openDataConversion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataConversionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataConversionUpdate(requestParameters: ApiOpenDataConversionUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataConversionUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataFDCRetrieveRaw(requestParameters: ApiOpenDataFDCRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataFDCRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-FDC/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataFDCRetrieve(requestParameters: ApiOpenDataFDCRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataFDCRetrieveRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataFoodCreateRaw(requestParameters: ApiOpenDataFoodCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataFood'] == null) { + throw new runtime.RequiredError( + 'openDataFood', + 'Required parameter "openDataFood" was null or undefined when calling apiOpenDataFoodCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataFoodToJSON(requestParameters['openDataFood']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataFoodFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataFoodCreate(requestParameters: ApiOpenDataFoodCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataFoodCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataFoodDestroyRaw(requestParameters: ApiOpenDataFoodDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataFoodDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataFoodDestroy(requestParameters: ApiOpenDataFoodDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataFoodDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataFoodListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataFoodFromJSON)); + } + + /** + */ + async apiOpenDataFoodList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataFoodListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataFoodPartialUpdateRaw(requestParameters: ApiOpenDataFoodPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataFoodPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataFoodToJSON(requestParameters['patchedOpenDataFood']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataFoodFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataFoodPartialUpdate(requestParameters: ApiOpenDataFoodPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataFoodPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataFoodRetrieveRaw(requestParameters: ApiOpenDataFoodRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataFoodRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataFoodFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataFoodRetrieve(requestParameters: ApiOpenDataFoodRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataFoodRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataFoodUpdateRaw(requestParameters: ApiOpenDataFoodUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataFoodUpdate().' + ); + } + + if (requestParameters['openDataFood'] == null) { + throw new runtime.RequiredError( + 'openDataFood', + 'Required parameter "openDataFood" was null or undefined when calling apiOpenDataFoodUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-food/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataFoodToJSON(requestParameters['openDataFood']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataFoodFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataFoodUpdate(requestParameters: ApiOpenDataFoodUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataFoodUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataPropertyCreateRaw(requestParameters: ApiOpenDataPropertyCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataProperty'] == null) { + throw new runtime.RequiredError( + 'openDataProperty', + 'Required parameter "openDataProperty" was null or undefined when calling apiOpenDataPropertyCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataPropertyToJSON(requestParameters['openDataProperty']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataPropertyFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataPropertyCreate(requestParameters: ApiOpenDataPropertyCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataPropertyCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataPropertyDestroyRaw(requestParameters: ApiOpenDataPropertyDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataPropertyDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataPropertyDestroy(requestParameters: ApiOpenDataPropertyDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataPropertyDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataPropertyListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataPropertyFromJSON)); + } + + /** + */ + async apiOpenDataPropertyList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataPropertyListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataPropertyPartialUpdateRaw(requestParameters: ApiOpenDataPropertyPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataPropertyPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataPropertyToJSON(requestParameters['patchedOpenDataProperty']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataPropertyFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataPropertyPartialUpdate(requestParameters: ApiOpenDataPropertyPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataPropertyPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataPropertyRetrieveRaw(requestParameters: ApiOpenDataPropertyRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataPropertyRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataPropertyFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataPropertyRetrieve(requestParameters: ApiOpenDataPropertyRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataPropertyRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataPropertyUpdateRaw(requestParameters: ApiOpenDataPropertyUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataPropertyUpdate().' + ); + } + + if (requestParameters['openDataProperty'] == null) { + throw new runtime.RequiredError( + 'openDataProperty', + 'Required parameter "openDataProperty" was null or undefined when calling apiOpenDataPropertyUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-property/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataPropertyToJSON(requestParameters['openDataProperty']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataPropertyFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataPropertyUpdate(requestParameters: ApiOpenDataPropertyUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataPropertyUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataStatsRetrieveRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-stats/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataStatsRetrieve(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataStatsRetrieveRaw(initOverrides); + } + + /** + */ + async apiOpenDataStoreCreateRaw(requestParameters: ApiOpenDataStoreCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataStore'] == null) { + throw new runtime.RequiredError( + 'openDataStore', + 'Required parameter "openDataStore" was null or undefined when calling apiOpenDataStoreCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataStoreToJSON(requestParameters['openDataStore']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataStoreFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataStoreCreate(requestParameters: ApiOpenDataStoreCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataStoreCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataStoreDestroyRaw(requestParameters: ApiOpenDataStoreDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataStoreDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataStoreDestroy(requestParameters: ApiOpenDataStoreDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataStoreDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataStoreListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataStoreFromJSON)); + } + + /** + */ + async apiOpenDataStoreList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataStoreListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataStorePartialUpdateRaw(requestParameters: ApiOpenDataStorePartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataStorePartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataStoreToJSON(requestParameters['patchedOpenDataStore']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataStoreFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataStorePartialUpdate(requestParameters: ApiOpenDataStorePartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataStorePartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataStoreRetrieveRaw(requestParameters: ApiOpenDataStoreRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataStoreRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataStoreFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataStoreRetrieve(requestParameters: ApiOpenDataStoreRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataStoreRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataStoreUpdateRaw(requestParameters: ApiOpenDataStoreUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataStoreUpdate().' + ); + } + + if (requestParameters['openDataStore'] == null) { + throw new runtime.RequiredError( + 'openDataStore', + 'Required parameter "openDataStore" was null or undefined when calling apiOpenDataStoreUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-store/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataStoreToJSON(requestParameters['openDataStore']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataStoreFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataStoreUpdate(requestParameters: ApiOpenDataStoreUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataStoreUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataUnitCreateRaw(requestParameters: ApiOpenDataUnitCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataUnit'] == null) { + throw new runtime.RequiredError( + 'openDataUnit', + 'Required parameter "openDataUnit" was null or undefined when calling apiOpenDataUnitCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataUnitToJSON(requestParameters['openDataUnit']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataUnitFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataUnitCreate(requestParameters: ApiOpenDataUnitCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataUnitCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataUnitDestroyRaw(requestParameters: ApiOpenDataUnitDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataUnitDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataUnitDestroy(requestParameters: ApiOpenDataUnitDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataUnitDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataUnitListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataUnitFromJSON)); + } + + /** + */ + async apiOpenDataUnitList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataUnitListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataUnitPartialUpdateRaw(requestParameters: ApiOpenDataUnitPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataUnitPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataUnitToJSON(requestParameters['patchedOpenDataUnit']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataUnitFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataUnitPartialUpdate(requestParameters: ApiOpenDataUnitPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataUnitPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataUnitRetrieveRaw(requestParameters: ApiOpenDataUnitRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataUnitRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataUnitFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataUnitRetrieve(requestParameters: ApiOpenDataUnitRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataUnitRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataUnitUpdateRaw(requestParameters: ApiOpenDataUnitUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataUnitUpdate().' + ); + } + + if (requestParameters['openDataUnit'] == null) { + throw new runtime.RequiredError( + 'openDataUnit', + 'Required parameter "openDataUnit" was null or undefined when calling apiOpenDataUnitUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-unit/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataUnitToJSON(requestParameters['openDataUnit']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataUnitFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataUnitUpdate(requestParameters: ApiOpenDataUnitUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataUnitUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataVersionCreateRaw(requestParameters: ApiOpenDataVersionCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['openDataVersion'] == null) { + throw new runtime.RequiredError( + 'openDataVersion', + 'Required parameter "openDataVersion" was null or undefined when calling apiOpenDataVersionCreate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/`, + method: 'POST', + headers: headerParameters, + query: queryParameters, + body: OpenDataVersionToJSON(requestParameters['openDataVersion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataVersionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataVersionCreate(requestParameters: ApiOpenDataVersionCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataVersionCreateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataVersionDestroyRaw(requestParameters: ApiOpenDataVersionDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataVersionDestroy().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'DELETE', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.VoidApiResponse(response); + } + + /** + */ + async apiOpenDataVersionDestroy(requestParameters: ApiOpenDataVersionDestroyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + await this.apiOpenDataVersionDestroyRaw(requestParameters, initOverrides); + } + + /** + */ + async apiOpenDataVersionListRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/`, + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OpenDataVersionFromJSON)); + } + + /** + */ + async apiOpenDataVersionList(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + const response = await this.apiOpenDataVersionListRaw(initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataVersionPartialUpdateRaw(requestParameters: ApiOpenDataVersionPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataVersionPartialUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PATCH', + headers: headerParameters, + query: queryParameters, + body: PatchedOpenDataVersionToJSON(requestParameters['patchedOpenDataVersion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataVersionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataVersionPartialUpdate(requestParameters: ApiOpenDataVersionPartialUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataVersionPartialUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataVersionRetrieveRaw(requestParameters: ApiOpenDataVersionRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataVersionRetrieve().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'GET', + headers: headerParameters, + query: queryParameters, + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataVersionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataVersionRetrieve(requestParameters: ApiOpenDataVersionRetrieveRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataVersionRetrieveRaw(requestParameters, initOverrides); + return await response.value(); + } + + /** + */ + async apiOpenDataVersionUpdateRaw(requestParameters: ApiOpenDataVersionUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { + if (requestParameters['id'] == null) { + throw new runtime.RequiredError( + 'id', + 'Required parameter "id" was null or undefined when calling apiOpenDataVersionUpdate().' + ); + } + + if (requestParameters['openDataVersion'] == null) { + throw new runtime.RequiredError( + 'openDataVersion', + 'Required parameter "openDataVersion" was null or undefined when calling apiOpenDataVersionUpdate().' + ); + } + + const queryParameters: any = {}; + + const headerParameters: runtime.HTTPHeaders = {}; + + headerParameters['Content-Type'] = 'application/json'; + + if (this.configuration && this.configuration.apiKey) { + headerParameters["Authorization"] = await this.configuration.apiKey("Authorization"); // ApiKeyAuth authentication + } + + const response = await this.request({ + path: `/api/open-data-version/{id}/`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id']))), + method: 'PUT', + headers: headerParameters, + query: queryParameters, + body: OpenDataVersionToJSON(requestParameters['openDataVersion']), + }, initOverrides); + + return new runtime.JSONApiResponse(response, (jsonValue) => OpenDataVersionFromJSON(jsonValue)); + } + + /** + */ + async apiOpenDataVersionUpdate(requestParameters: ApiOpenDataVersionUpdateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { + const response = await this.apiOpenDataVersionUpdateRaw(requestParameters, initOverrides); + return await response.value(); + } + /** * logs request counts to redis cache total/per user/ */ @@ -7039,6 +8828,10 @@ export class ApiApi extends runtime.BaseAPI { queryParameters['createdon_lte'] = (requestParameters['createdonLte'] as any).toISOString().substring(0,10); } + if (requestParameters['filter'] != null) { + queryParameters['filter'] = requestParameters['filter']; + } + if (requestParameters['foods'] != null) { queryParameters['foods'] = requestParameters['foods']; } @@ -7123,6 +8916,10 @@ export class ApiApi extends runtime.BaseAPI { queryParameters['rating_lte'] = requestParameters['ratingLte']; } + if (requestParameters['sortOrder'] != null) { + queryParameters['sort_order'] = requestParameters['sortOrder']; + } + if (requestParameters['timescooked'] != null) { queryParameters['timescooked'] = requestParameters['timescooked']; } diff --git a/vue3/src/openapi/models/Automation.ts b/vue3/src/openapi/models/Automation.ts index 8b0e1bfeb..6e1bde52b 100644 --- a/vue3/src/openapi/models/Automation.ts +++ b/vue3/src/openapi/models/Automation.ts @@ -13,12 +13,12 @@ */ import { mapValues } from '../runtime'; -import type { TypeEnum } from './TypeEnum'; +import type { AutomationTypeEnum } from './AutomationTypeEnum'; import { - TypeEnumFromJSON, - TypeEnumFromJSONTyped, - TypeEnumToJSON, -} from './TypeEnum'; + AutomationTypeEnumFromJSON, + AutomationTypeEnumFromJSONTyped, + AutomationTypeEnumToJSON, +} from './AutomationTypeEnum'; /** * @@ -34,10 +34,10 @@ export interface Automation { id?: number; /** * - * @type {TypeEnum} + * @type {AutomationTypeEnum} * @memberof Automation */ - type: TypeEnum; + type: AutomationTypeEnum; /** * * @type {string} @@ -108,7 +108,7 @@ export function AutomationFromJSONTyped(json: any, ignoreDiscriminator: boolean) return { 'id': json['id'] == null ? undefined : json['id'], - 'type': TypeEnumFromJSON(json['type']), + 'type': AutomationTypeEnumFromJSON(json['type']), 'name': json['name'] == null ? undefined : json['name'], 'description': json['description'] == null ? undefined : json['description'], 'param1': json['param_1'] == null ? undefined : json['param_1'], @@ -127,7 +127,7 @@ export function AutomationToJSON(value?: Omit | null): return { 'id': value['id'], - 'type': TypeEnumToJSON(value['type']), + 'type': AutomationTypeEnumToJSON(value['type']), 'name': value['name'], 'description': value['description'], 'param_1': value['param1'], diff --git a/vue3/src/openapi/models/PatchedAutomation.ts b/vue3/src/openapi/models/PatchedAutomation.ts index 0d20773cf..e6d687125 100644 --- a/vue3/src/openapi/models/PatchedAutomation.ts +++ b/vue3/src/openapi/models/PatchedAutomation.ts @@ -13,12 +13,12 @@ */ import { mapValues } from '../runtime'; -import type { TypeEnum } from './TypeEnum'; +import type { AutomationTypeEnum } from './AutomationTypeEnum'; import { - TypeEnumFromJSON, - TypeEnumFromJSONTyped, - TypeEnumToJSON, -} from './TypeEnum'; + AutomationTypeEnumFromJSON, + AutomationTypeEnumFromJSONTyped, + AutomationTypeEnumToJSON, +} from './AutomationTypeEnum'; /** * @@ -34,10 +34,10 @@ export interface PatchedAutomation { id?: number; /** * - * @type {TypeEnum} + * @type {AutomationTypeEnum} * @memberof PatchedAutomation */ - type?: TypeEnum; + type?: AutomationTypeEnum; /** * * @type {string} @@ -106,7 +106,7 @@ export function PatchedAutomationFromJSONTyped(json: any, ignoreDiscriminator: b return { 'id': json['id'] == null ? undefined : json['id'], - 'type': json['type'] == null ? undefined : TypeEnumFromJSON(json['type']), + 'type': json['type'] == null ? undefined : AutomationTypeEnumFromJSON(json['type']), 'name': json['name'] == null ? undefined : json['name'], 'description': json['description'] == null ? undefined : json['description'], 'param1': json['param_1'] == null ? undefined : json['param_1'], @@ -125,7 +125,7 @@ export function PatchedAutomationToJSON(value?: Omit{{ $t('Table_of_Contents') }} - - {{ entry.recipeContent.name }} + + {{ entry.name }} @@ -48,16 +48,16 @@ - + - +
{{ i + 1 }}
- - + +
{{ i + 2 }}
@@ -73,8 +73,8 @@