aboutsummaryrefslogtreecommitdiff
path: root/viewer
diff options
context:
space:
mode:
authorpacien2022-09-04 18:18:27 +0200
committerpacien2022-09-04 18:18:27 +0200
commit11bbbae2850b9c45da697a8ed9626495a50a38c0 (patch)
treeff2713118f8b45d36905bfea2933f08d8e70066d /viewer
parente93f7b1eb84c083d67567115284c0002a3a7d5fc (diff)
parent8349be992b46b77dee921f484cfbff8b758ff756 (diff)
downloadldgallery-2.1.tar.gz
Merge branch 'develop': release v2.1v2.1
GitHub: related to #315
Diffstat (limited to 'viewer')
-rw-r--r--viewer/.browserslistrc7
-rw-r--r--viewer/.env4
-rw-r--r--viewer/.eslintrc.js45
-rw-r--r--viewer/.gitignore4
-rw-r--r--viewer/.prettierrc.js9
-rw-r--r--viewer/.vscode/launch.json19
-rw-r--r--viewer/.vscode/tasks.json49
-rw-r--r--viewer/babel.config.js5
-rw-r--r--viewer/examples/config.json.example3
-rw-r--r--viewer/examples/defaulticon.pngbin3363 -> 0 bytes
-rw-r--r--viewer/examples/manifest.json.example13
-rw-r--r--viewer/ldgallery-viewer.7.md51
-rw-r--r--viewer/package-lock.json14182
-rw-r--r--viewer/package.json88
-rw-r--r--viewer/public/index.html40
-rw-r--r--viewer/readme.md19
-rw-r--r--viewer/src/@types/ItemType.ts11
-rw-r--r--viewer/src/@types/gallery.d.ts114
-rw-r--r--viewer/src/@types/gallery.ts129
-rw-r--r--viewer/src/@types/itemType.ts (renamed from viewer/src/@types/v-lazy-image.d.ts)13
-rw-r--r--viewer/src/@types/operation.ts (renamed from viewer/src/@types/Operation.ts)8
-rw-r--r--viewer/src/@types/splashscreen.ts (renamed from viewer/src/@types/scrollposition.d.ts)9
-rw-r--r--viewer/src/@types/tag.ts (renamed from viewer/src/@types/tag.d.ts)43
-rw-r--r--viewer/src/@types/vue-dragscroll.d.ts20
-rw-r--r--viewer/src/assets/scss/_buefy_variables.scss171
-rw-r--r--viewer/src/assets/scss/buefy.scss47
-rw-r--r--viewer/src/assets/scss/constants.scss (renamed from viewer/src/assets/scss/palette.scss)24
-rw-r--r--viewer/src/assets/scss/global.scss53
-rw-r--r--viewer/src/assets/scss/scrollbar.scss6
-rw-r--r--viewer/src/assets/scss/theme.scss42
-rw-r--r--viewer/src/assets/scss/transition.scss40
-rw-r--r--viewer/src/components/LdBreadcrumb.vue127
-rw-r--r--viewer/src/components/LdCommand.vue97
-rw-r--r--viewer/src/components/LdCommandSort.vue55
-rw-r--r--viewer/src/components/LdDropdown.vue92
-rw-r--r--viewer/src/components/LdGallery.vue59
-rw-r--r--viewer/src/components/LdInput.vue60
-rw-r--r--viewer/src/components/LdKeyPress.vue49
-rw-r--r--viewer/src/components/LdLink.vue75
-rw-r--r--viewer/src/components/LdLoading.vue51
-rw-r--r--viewer/src/components/LdNotice.vue (renamed from viewer/src/components/LdError.vue)39
-rw-r--r--viewer/src/components/LdProposition.vue179
-rw-r--r--viewer/src/components/LdTagInput.vue97
-rw-r--r--viewer/src/components/LdTitle.vue46
-rw-r--r--viewer/src/components/async/AsyncLdMarkdown.vue125
-rw-r--r--viewer/src/components/async/index.ts (renamed from viewer/src/plugins/dragscroll.ts)7
-rw-r--r--viewer/src/components/index.ts44
-rw-r--r--viewer/src/components/item_handlers/LdPicture.vue127
-rw-r--r--viewer/src/components/item_handlers/LdPlainTextViewer.vue55
-rw-r--r--viewer/src/locales/en.json24
-rw-r--r--viewer/src/locales/en.yml44
-rw-r--r--viewer/src/main.ts70
-rw-r--r--viewer/src/plugins/asyncLib.ts3
-rw-r--r--viewer/src/plugins/devServer.js53
-rw-r--r--viewer/src/plugins/i18n.ts19
-rw-r--r--viewer/src/plugins/router.ts22
-rw-r--r--viewer/src/services/api/ldFetch.ts (renamed from viewer/src/plugins/fontawesome-icons.ts)42
-rw-r--r--viewer/src/services/dragscrollclickfix.ts51
-rw-r--r--viewer/src/services/indexFactory.ts163
-rw-r--r--viewer/src/services/indexSearch.ts74
-rw-r--r--viewer/src/services/indexfactory.ts155
-rw-r--r--viewer/src/services/indexsearch.ts68
-rw-r--r--viewer/src/services/itemComparator.ts93
-rw-r--r--viewer/src/services/itemComparators.ts73
-rw-r--r--viewer/src/services/itemGuards.ts11
-rw-r--r--viewer/src/services/ldzoom.ts136
-rw-r--r--viewer/src/services/navigation.ts88
-rw-r--r--viewer/src/services/ui/ldFullscreen.ts (renamed from viewer/src/plugins/buefy.ts)43
-rw-r--r--viewer/src/services/ui/ldItemResourceUrl.ts15
-rw-r--r--viewer/src/services/ui/ldKeepFocus.ts (renamed from viewer/src/plugins/fontawesome.ts)23
-rw-r--r--viewer/src/services/ui/ldKeyboard.ts (renamed from viewer/src/plugins/lazyimage.ts)13
-rw-r--r--viewer/src/services/ui/ldSaveScroll.ts37
-rw-r--r--viewer/src/services/ui/ldTitle.ts34
-rw-r--r--viewer/src/services/ui/ldZoom.ts128
-rw-r--r--viewer/src/shims-tsx.d.ts13
-rw-r--r--viewer/src/shims-vue.d.ts10
-rw-r--r--viewer/src/store/galleryStore.ts199
-rw-r--r--viewer/src/store/index.ts47
-rw-r--r--viewer/src/store/uiStore.ts82
-rw-r--r--viewer/src/views/GalleryNavigation.vue103
-rw-r--r--viewer/src/views/GallerySearch.vue69
-rw-r--r--viewer/src/views/GalleryTiles.vue70
-rw-r--r--viewer/src/views/ItemThumbnail.vue (renamed from viewer/src/components/LdThumbnail.vue)67
-rw-r--r--viewer/src/views/MainLayout.vue159
-rw-r--r--viewer/src/views/PanelLeft.vue116
-rw-r--r--viewer/src/views/SplashScreen.vue75
-rw-r--r--viewer/src/views/item_handlers/AudioViewer.vue (renamed from viewer/src/components/item_handlers/LdAudioViewer.vue)42
-rw-r--r--viewer/src/views/item_handlers/DirectoryViewer.vue (renamed from viewer/src/components/item_handlers/LdDirectory.vue)34
-rw-r--r--viewer/src/views/item_handlers/DownloadViewer.vue (renamed from viewer/src/components/item_handlers/LdDownload.vue)41
-rw-r--r--viewer/src/views/item_handlers/MarkdownViewer.vue50
-rw-r--r--viewer/src/views/item_handlers/PdfViewer.vue (renamed from viewer/src/components/item_handlers/LdPdfViewer.vue)29
-rw-r--r--viewer/src/views/item_handlers/PictureViewer.vue129
-rw-r--r--viewer/src/views/item_handlers/PlainTextViewer.vue69
-rw-r--r--viewer/src/views/item_handlers/VideoViewer.vue (renamed from viewer/src/components/item_handlers/LdVideoViewer.vue)34
-rw-r--r--viewer/src/views/layout/left/LayoutCommandSearch.vue (renamed from viewer/src/components/LdCommandSearch.vue)58
-rw-r--r--viewer/src/views/layout/left/LayoutInformation.vue (renamed from viewer/src/components/LdInformation.vue)61
-rw-r--r--viewer/src/views/layout/left/LayoutLeft.vue158
-rw-r--r--viewer/src/views/layout/left/LayoutProposition.vue208
-rw-r--r--viewer/src/views/layout/left/LayoutTagInput.vue141
-rw-r--r--viewer/src/views/layout/left/LayoutTagList.vue74
-rw-r--r--viewer/src/views/layout/top/LayoutBreadcrumb.vue130
-rw-r--r--viewer/src/views/layout/top/LayoutCommand.vue127
-rw-r--r--viewer/src/views/layout/top/LayoutCommandSort.vue85
-rw-r--r--viewer/src/views/layout/top/LayoutTop.vue (renamed from viewer/src/views/PanelTop.vue)22
-rw-r--r--viewer/tsconfig.json13
-rw-r--r--viewer/viewer.code-workspace30
-rw-r--r--viewer/visualstudio.code-workspace42
-rw-r--r--viewer/vue.config.js70
-rw-r--r--viewer/yarn.lock6849
109 files changed, 10390 insertions, 17250 deletions
diff --git a/viewer/.browserslistrc b/viewer/.browserslistrc
index d6471a3..d9789a7 100644
--- a/viewer/.browserslistrc
+++ b/viewer/.browserslistrc
@@ -1,2 +1,5 @@
1> 1% 1# Polyfills for ES2020+
2last 2 versions 2
3chrome > 78
4firefox > 72
5edge > 78
diff --git a/viewer/.env b/viewer/.env
index 99efa3d..b552629 100644
--- a/viewer/.env
+++ b/viewer/.env
@@ -1,6 +1,6 @@
1# Override with .env.development.local and .env.production.local 1# Override with .env.development.local and .env.production.local
2 2
3VUE_APP_I18N_LOCALE=en
4VUE_APP_I18N_FALLBACK_LOCALE=en
5VUE_APP_DATA_URL=./ 3VUE_APP_DATA_URL=./
6VUE_APP_FULLWIDTH_LIMIT=1216 4VUE_APP_FULLWIDTH_LIMIT=1216
5VUE_APP_I18N_LOCALE=en
6VUE_APP_I18N_FALLBACK_LOCALE=en
diff --git a/viewer/.eslintrc.js b/viewer/.eslintrc.js
index 9d3fbbc..0308e3f 100644
--- a/viewer/.eslintrc.js
+++ b/viewer/.eslintrc.js
@@ -1,39 +1,22 @@
1module.exports = { 1module.exports = {
2 root: true, 2 root: true,
3
4 env: { 3 env: {
5 node: true, 4 node: true,
6 }, 5 },
7 6 extends: [
8 plugins: ["prettier"], 7 'plugin:vue/vue3-recommended',
9 8 '@vue/standard',
10 extends: ["plugin:vue/essential", "plugin:prettier/recommended", "@vue/typescript"], 9 '@vue/typescript/recommended',
11 10 ],
12 rules: {
13 "no-console": "off",
14 "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off",
15 "prettier/prettier": "warn",
16 "eol-last": ["warn", "always"],
17 "object-curly-spacing": ["warn", "always"],
18 "quote-props": ["warn", "as-needed"],
19 indent: ["warn", 2, { SwitchCase: 1 }],
20 quotes: ["warn", "double"],
21 "vue/attribute-hyphenation": "warn",
22 "vue/html-closing-bracket-spacing": "warn",
23 "vue/html-end-tags": "error",
24 "vue/html-quotes": "warn",
25 "vue/html-self-closing": "off",
26 "vue/no-multi-spaces": "warn",
27 "vue/no-spaces-around-equal-signs-in-attribute": "warn",
28 "vue/no-template-shadow": "error",
29 "vue/v-bind-style": "warn",
30 "vue/v-on-style": "warn",
31 "vue/attributes-order": "warn",
32 "vue/this-in-template": "warn",
33 },
34
35 parserOptions: { 11 parserOptions: {
36 sourceType: "module", 12 ecmaVersion: 2020,
37 parser: "@typescript-eslint/parser", 13 },
14 rules: {
15 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
16 'no