aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore5
-rw-r--r--.travis.yml125
-rw-r--r--changelog.md4
-rw-r--r--compiler/app/Main.hs117
-rw-r--r--compiler/ldgallery.1.md191
-rw-r--r--compiler/package.yaml13
-rw-r--r--compiler/src/Compiler.hs130
-rw-r--r--compiler/src/Config.hs76
-rw-r--r--compiler/src/Files.hs55
-rw-r--r--compiler/src/Input.hs25
-rw-r--r--compiler/src/Processors.hs144
-rw-r--r--compiler/src/Resource.hs151
-rw-r--r--compiler/stack.yaml8
-rw-r--r--compiler/stack.yaml.lock8
-rw-r--r--compiler/win_compile_example.cmd10
-rw-r--r--design-notes.md11
-rw-r--r--example/.gitignore2
-rw-r--r--example/Glacier 3000/_DSC5475.jpg.yaml15
-rw-r--r--example/Glacier 3000/_DSC5542.jpg.yaml15
-rw-r--r--example/config.json3
-rw-r--r--example/gallery.yaml21
-rw-r--r--example/readme.md23
-rw-r--r--example/src/DSC0001.jpg (renamed from example/_DSC8808-1.jpg)bin1010643 -> 1010643 bytes
-rw-r--r--example/src/DSC0001.jpg.yaml (renamed from example/_DSC8808-1.jpg.yaml)4
-rw-r--r--example/src/Ormont-Dessus/DSC0002.jpg (renamed from example/Glacier 3000/_DSC5542.jpg)bin457873 -> 457873 bytes
-rw-r--r--example/src/Ormont-Dessus/DSC0002.jpg.yaml13
-rw-r--r--example/src/Ormont-Dessus/DSC0003.jpg (renamed from example/Glacier 3000/_DSC5475.jpg)bin363216 -> 363216 bytes
-rw-r--r--example/src/Ormont-Dessus/DSC0003.jpg.yaml13
-rw-r--r--example/src/Ormont-Dessus/_directory.jpg (renamed from example/Glacier 3000/thumbnail.jpg)bin457873 -> 457873 bytes
-rw-r--r--example/src/Ormont-Dessus/_directory.yaml3
-rw-r--r--example/src/_directory.yaml1
-rw-r--r--example/src/gallery.yaml31
-rw-r--r--ldgallery-quickstart.7.md108
-rw-r--r--ldgallery.1.md147
-rw-r--r--readme.md41
-rw-r--r--scripts/.gitignore1
-rw-r--r--scripts/dev_win_build.cmd (renamed from compiler/win_build.cmd)1
-rw-r--r--scripts/dev_win_compile_example.cmd10
-rw-r--r--scripts/dev_win_help.cmd5
-rw-r--r--scripts/dev_win_start_vueui.cmd (renamed from viewer/win_start_vueui.cmd)16
-rwxr-xr-xscripts/migrate_tags_dot_to_colon.py25
-rw-r--r--scripts/readme.md24
-rw-r--r--scripts/win_generate_yaml_files.cmd21
-rw-r--r--viewer/.env6
-rw-r--r--viewer/.env.development3
-rw-r--r--viewer/.eslintrc.js38
-rw-r--r--viewer/.gitignore2
-rw-r--r--viewer/.vscode/launch.json19
-rw-r--r--viewer/.vscode/tasks.json39
-rw-r--r--viewer/babel.config.js2
-rw-r--r--viewer/examples/config.json.example3
-rw-r--r--viewer/examples/defaulticon.pngbin0 -> 3363 bytes
-rw-r--r--viewer/examples/manifest.json.example13
-rw-r--r--viewer/ldgallery-viewer.7.md83
-rw-r--r--viewer/package-lock.json3820
-rw-r--r--viewer/package.json70
-rw-r--r--viewer/public/favicon.icobin4286 -> 0 bytes
-rw-r--r--viewer/public/index.html8
-rw-r--r--viewer/readme.md4
-rw-r--r--viewer/src/@types/Operation.ts (renamed from viewer/src/@types/tag/Operation.ts)8
-rw-r--r--viewer/src/@types/gallery.d.ts74
-rw-r--r--viewer/src/@types/scrollposition.d.ts (renamed from viewer/src/@types/tag/index.d.ts)15
-rw-r--r--viewer/src/@types/tag.d.ts41
-rw-r--r--viewer/src/@types/v-lazy-image.d.ts20
-rw-r--r--viewer/src/@types/vue-dragscroll.d.ts20
-rw-r--r--viewer/src/assets/defaulticon.svg63
-rw-r--r--viewer/src/assets/scss/buefy.scss9
-rw-r--r--viewer/src/assets/scss/global.scss67
-rw-r--r--viewer/src/assets/scss/palette.scss31
-rw-r--r--viewer/src/assets/scss/theme.scss65
-rw-r--r--viewer/src/components/LdBreadcrumb.vue127
-rw-r--r--viewer/src/components/LdCommand.vue96
-rw-r--r--viewer/src/components/LdCommandSearch.vue (renamed from viewer/src/components/LdModeRadio.vue)35
-rw-r--r--viewer/src/components/LdGallery.vue (renamed from viewer/src/components/LdButtonFullscreen.vue)41
-rw-r--r--viewer/src/components/LdKeyPress.vue (renamed from viewer/src/views/GalleryThumbnail.vue)45
-rw-r--r--viewer/src/components/LdPicture.vue121
-rw-r--r--viewer/src/components/LdProposition.vue114
-rw-r--r--viewer/src/components/LdTagInput.vue94
-rw-r--r--viewer/src/components/LdThumbnail.vue90
-rw-r--r--viewer/src/components/LdTitle.vue (renamed from viewer/src/views/GalleryPicture.vue)34
-rw-r--r--viewer/src/components/index.ts32
-rw-r--r--viewer/src/locales/en.json24
-rw-r--r--viewer/src/main.ts18
-rw-r--r--viewer/src/plugins/buefy.ts24
-rw-r--r--viewer/src/plugins/dragscroll.ts23
-rw-r--r--viewer/src/plugins/fontawesome.ts43
-rw-r--r--viewer/src/plugins/lazyimage.ts23
-rw-r--r--viewer/src/plugins/router.ts (renamed from viewer/src/router/index.ts)17
-rw-r--r--viewer/src/services/dragscrollclickfix.ts (renamed from viewer/src/@types/gallery/index.d.ts)55
-rw-r--r--viewer/src/services/indexfactory.ts143
-rw-r--r--viewer/src/services/indexsearch.ts69
-rw-r--r--viewer/src/services/ldzoom.ts134
-rw-r--r--viewer/src/services/navigation.ts80
-rw-r--r--viewer/src/shims-tsx.d.ts4
-rw-r--r--viewer/src/store/galleryStore.ts180
-rw-r--r--viewer/src/store/index.ts13
-rw-r--r--viewer/src/store/uiStore.ts40
-rw-r--r--viewer/src/views/Gallery.vue104
-rw-r--r--viewer/src/views/GalleryDirectory.vue24
-rw-r--r--viewer/src/views/GalleryNavigation.vue62
-rw-r--r--viewer/src/views/GallerySearch.vue42
-rw-r--r--viewer/src/views/MainLayout.vue71
-rw-r--r--viewer/src/views/PanelLeft.vue78
-rw-r--r--viewer/src/views/PanelTop.vue64
-rw-r--r--viewer/tsconfig.json8
-rw-r--r--viewer/visualstudio.code-workspace40
-rw-r--r--viewer/vue.config.js18
107 files changed, 5780 insertions, 2589 deletions
diff --git a/.gitignore b/.gitignore
index f7e585b..2cdb78d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,6 @@
1# compiled man pages
1*.1 2*.1
3*.7
4
5# editor and IDE
6.idea
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..826dd65
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,125 @@
1language: generic
2
3jobs:
4 include:
5 - name: release-linux
6 language: generic
7 dist: bionic
8
9 deploy:
10 provider: releases
11 edge: true
12 token:
13 secure: zRJV96jl3zchT88YAtT6irCXgm96qVcIokVmCHrzcAXsRHgTHQURKcdpPzFdZQnNkxwfS1akA3fW5icr+U6WZIxIe56sHYEaBg7VXR1RiGW/qNOAhSvbJGva75iUllTiELa2FL2gEb8bNhVOy3+bQr5Z7RMeHFiC4FFmbMvaQhd5ss3yR5+bqKufEuJPDpFap93XHUoczXH+lXp1v90Cia1gskHsSl+YgfGWQAc89yOxETwFOSqr3CScZGV6oJpGM2rsflN5arFS/8JqDwuemttfrt74wDdKR4Mk94tcqXqMrledUsXR1NEjWAEWW6QMj05ztZ76TkT2hKpG+WVmUTaJjNKS+RJnf4WKzv1vo2EHZuAuPvwR21NGVYTxvV4o3Zvs4YODGXiUxQgeF5LFA3jbZw9ODyloStUV7zIPqzL7qJEIehnMtkjo2JPav5ORz6B7GwVrDC4LJHn95on3/3Voo3mPeyepoz1gFoh3iovTKAc+IXQXGOhT7cATP9DAWLO/Epct7hWPCEflm+oSS4rNiVbMW/61O3yIpxgkJ/oTsixLk6LOhWNdr2hfP95nAtD+It7LSsJABmWJ0FVO9RtQC7fLmEPaoGdZIdeRk/0yig9vA78Y+q46B6LBalmZO+0V60rdLdrnggJsyt3DZKM/4Z+QUwe494NodE7hU9U=
14 on:
15 tags: true
16 overwrite: true
17 cleanup: false
18 file: ldgallery-linux-amd64.tar.gz
19
20 cache:
21 directories:
22 - viewer/node_modules
23 - "$HOME/.stack"
24
25 before_install:
26 - nvm install 12.16.2
27 - nvm use 12.16.2
28 - mkdir -p ~/.local/bin
29 - export PATH=$HOME/.local/bin:$PATH
30 - travis_retry curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz
31 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
32 - sudo apt-get update -qq
33 - sudo apt-get install -y pandoc
34
35 install:
36 - cd viewer
37 - npm install
38 - cd ..
39 - cd compiler
40 - stack setup --no-terminal
41 - cd ..
42
43 script:
44 - mkdir dist
45 - cd viewer
46 - npm run lint
47 - npm run build -- --dest ../dist/viewer
48 - cd ..
49 - cd compiler
50 - stack build --no-terminal
51 - stack install --local-bin-path ../dist/
52 - cd ..
53 - pandoc --standalone --to man ldgallery-quickstart.7.md --output dist/ldgallery-quickstart.7
54 - pandoc --standalone --to man compiler/ldgallery.1.md --output dist/ldgallery.1
55 - pandoc --standalone --to man viewer/ldgallery-viewer.7.md --output dist/ldgallery-viewer.7
56 - cp changelog.md license.md dist/
57 - tar -cvzf ldgallery-linux-amd64.tar.gz dist
58
59 #=============================================================
60
61 - name: release-win64
62 if: tag IS present OR branch IN (master, staging)
63 language: shell
64 os: windows