From 47d68932744239db3b78ec8706446c1a8a446690 Mon Sep 17 00:00:00 2001 From: Eugen Ciur <eugen@papermerge.com> Date: Sun, 14 Nov 2021 07:41:11 +0100 Subject: [PATCH] basic document version viewer --- app/components/document_version.hbs | 7 ------- app/components/document_version/index.hbs | 11 ++++++++++ app/components/document_version/page.hbs | 4 ++++ app/components/document_version/thumbnail.hbs | 4 ++++ .../document_version/thumbnails.hbs | 5 +++++ app/components/page.hbs | 3 --- app/models/document_version.js | 3 ++- app/styles/app.scss | 2 ++ app/styles/document_version.scss | 20 +++++++++++++++++++ 9 files changed, 48 insertions(+), 11 deletions(-) delete mode 100644 app/components/document_version.hbs create mode 100644 app/components/document_version/index.hbs create mode 100644 app/components/document_version/page.hbs create mode 100644 app/components/document_version/thumbnail.hbs create mode 100644 app/components/document_version/thumbnails.hbs delete mode 100644 app/components/page.hbs create mode 100644 app/styles/document_version.scss diff --git a/app/components/document_version.hbs b/app/components/document_version.hbs deleted file mode 100644 index 9ff07f1..0000000 --- a/app/components/document_version.hbs +++ /dev/null @@ -1,7 +0,0 @@ -Page Count = {{@model.document_version.page_count}} - -<div class="d-flex flex-column"> - {{#each @model.pages as |page|}} - <Page @page={{page}} /> - {{/each}} -</div> diff --git a/app/components/document_version/index.hbs b/app/components/document_version/index.hbs new file mode 100644 index 0000000..2f4a6bd --- /dev/null +++ b/app/components/document_version/index.hbs @@ -0,0 +1,11 @@ +{{@model.document_version.document.title}} + +<div class="d-flex"> + <DocumentVersion::Thumbnails @pages={{@model.pages}} /> + + <div class="d-flex flex-column pages"> + {{#each @model.pages as |page|}} + <DocumentVersion::Page @page={{page}} /> + {{/each}} + </div> +</div> diff --git a/app/components/document_version/page.hbs b/app/components/document_version/page.hbs new file mode 100644 index 0000000..68d1e5b --- /dev/null +++ b/app/components/document_version/page.hbs @@ -0,0 +1,4 @@ +<div class="page"> + <img src="{{@page.url}}" /> + {{@page.number}} +</div> \ No newline at end of file diff --git a/app/components/document_version/thumbnail.hbs b/app/components/document_version/thumbnail.hbs new file mode 100644 index 0000000..4f18bf7 --- /dev/null +++ b/app/components/document_version/thumbnail.hbs @@ -0,0 +1,4 @@ +<div class="thumbnail"> + <img src="{{@page.url}}" /> + {{@page.number}} +</div> \ No newline at end of file diff --git a/app/components/document_version/thumbnails.hbs b/app/components/document_version/thumbnails.hbs new file mode 100644 index 0000000..1072df3 --- /dev/null +++ b/app/components/document_version/thumbnails.hbs @@ -0,0 +1,5 @@ +<div class="d-flex flex-column thumbnails"> + {{#each @pages as |page|}} + <DocumentVersion::Thumbnail @page={{page}} /> + {{/each}} +</div> \ No newline at end of file diff --git a/app/components/page.hbs b/app/components/page.hbs deleted file mode 100644 index ea9a08a..0000000 --- a/app/components/page.hbs +++ /dev/null @@ -1,3 +0,0 @@ - -<img src="{{@page.url}}" width="100" /> -{{@page.number}} \ No newline at end of file diff --git a/app/models/document_version.js b/app/models/document_version.js index dbc2e2e..b75dca6 100644 --- a/app/models/document_version.js +++ b/app/models/document_version.js @@ -1,4 +1,4 @@ -import Model, { attr, hasMany } from '@ember-data/model'; +import Model, { attr, hasMany, belongsTo } from '@ember-data/model'; export default class DocumentVersionModel extends Model { @@ -7,4 +7,5 @@ export default class DocumentVersionModel extends Model { @attr page_count; // total page count @attr lang; // languate used for this page @hasMany('pages') pages; + @belongsTo('document') document; } diff --git a/app/styles/app.scss b/app/styles/app.scss index d5a7dc8..62aceff 100644 --- a/app/styles/app.scss +++ b/app/styles/app.scss @@ -5,6 +5,8 @@ @import "./nav/sidebar"; @import "./nav/topbar"; @import "./login.scss"; +@import "./document_version.scss"; + body { background-color: #e9ecef; diff --git a/app/styles/document_version.scss b/app/styles/document_version.scss new file mode 100644 index 0000000..54cea1b --- /dev/null +++ b/app/styles/document_version.scss @@ -0,0 +1,20 @@ + +.thumbnails { + .thumbnail { + margin: 1rem; + img { + width: 6rem; + } + } +} + +.pages { + overflow: scroll; + height: 100vh; + + .page { + img { + width: 100%; + } + } +} \ No newline at end of file -- GitLab