From 4393f8f25025ea600dae30be2d6ad9067496ba40 Mon Sep 17 00:00:00 2001
From: Zero~Informatique
Date: Sat, 20 Jun 2020 06:04:39 +0200
Subject: viewer: component dispatch (no functional change)

a cleaner way to add new components to LdGallery
---
 .../src/components/item_handlers/LdPdfViewer.vue   | 46 ++++++++++++++++++++++
 1 file changed, 46 insertions(+)
 create mode 100644 viewer/src/components/item_handlers/LdPdfViewer.vue

(limited to 'viewer/src/components/item_handlers/LdPdfViewer.vue')

diff --git a/viewer/src/components/item_handlers/LdPdfViewer.vue b/viewer/src/components/item_handlers/LdPdfViewer.vue
new file mode 100644
index 0000000..6471aac
--- /dev/null
+++ b/viewer/src/components/item_handlers/LdPdfViewer.vue
@@ -0,0 +1,46 @@
+<!--
+-- ldgallery - A static generator which turns a collection of tagged
+--             pictures into a searchable web gallery.
+--
+-- Copyright (C) 2020  Pacien TRAN-GIRARD
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU Affero General Public License as
+-- published by the Free Software Foundation, either version 3 of the
+-- License, or (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU Affero General Public License for more details.
+--
+-- You should have received a copy of the GNU Affero General Public License
+-- along with this program.  If not, see <https://www.gnu.org/licenses/>.
+-->
+
+<template>
+  <!-- intermediate container necessary to eliminate the double scrollbar -->
+  <div class="fill no-scroll">
+    <!-- prefer native browser PDF viewer if available -->
+    <object class="fill" :data="itemResourceUrl" type="application/pdf">
+      <!-- TODO: fallback to PDF.js (https://github.com/pacien/ldgallery/issues/212) -->
+      <ld-download :item="item" />
+    </object>
+  </div>
+</template>
+
+<script lang="ts">
+import { Component, Prop, Vue } from "vue-property-decorator";
+
+@Component
+export default class LdPdfViewer extends Vue {
+  @Prop({ required: true }) readonly item!: Gallery.PDF;
+
+  get itemResourceUrl(): string {
+    return this.$galleryStore.resourceRoot + this.item.properties.resource;
+  }
+}
+</script>
+
+<style lang="scss" module>
+</style>
-- 
cgit v1.2.3


From 170d7a61f720ece9dc4b347b19f5a8213f1d8984 Mon Sep 17 00:00:00 2001
From: Zero~Informatique
Date: Sat, 20 Jun 2020 16:50:49 +0200
Subject: viewer: prettier formatting based on eslint-prettier plugin

---
 viewer/src/components/item_handlers/LdPdfViewer.vue | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

(limited to 'viewer/src/components/item_handlers/LdPdfViewer.vue')

diff --git a/viewer/src/components/item_handlers/LdPdfViewer.vue b/viewer/src/components/item_handlers/LdPdfViewer.vue
index 6471aac..462c463 100644
--- a/viewer/src/components/item_handlers/LdPdfViewer.vue
+++ b/viewer/src/components/item_handlers/LdPdfViewer.vue
@@ -42,5 +42,4 @@ export default class LdPdfViewer extends Vue {
 }
 </script>
 
-<style lang="scss" module>
-</style>
+<style lang="scss" module></style>
-- 
cgit v1.2.3

