diff options
28 files changed, 12936 insertions, 0 deletions
diff --git a/viewer/.browserslistrc b/viewer/.browserslistrc new file mode 100644 index 0000000..d6471a3 --- /dev/null +++ b/viewer/.browserslistrc | |||
@@ -0,0 +1,2 @@ | |||
1 | > 1% | ||
2 | last 2 versions | ||
diff --git a/viewer/.env b/viewer/.env new file mode 100644 index 0000000..f256c63 --- /dev/null +++ b/viewer/.env | |||
@@ -0,0 +1,2 @@ | |||
1 | VUE_APP_I18N_LOCALE=en | ||
2 | VUE_APP_I18N_FALLBACK_LOCALE=en | ||
diff --git a/viewer/.eslintrc.js b/viewer/.eslintrc.js new file mode 100644 index 0000000..be91544 --- /dev/null +++ b/viewer/.eslintrc.js | |||
@@ -0,0 +1,14 @@ | |||
1 | module.exports = { | ||
2 | root: true, | ||
3 | env: { | ||
4 | node: true, | ||
5 | }, | ||
6 | extends: ["plugin:vue/essential", "@vue/typescript"], | ||
7 | rules: { | ||
8 | "no-console": process.env.NODE_ENV === "production" ? "error" : "off", | ||
9 | "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off", | ||
10 | }, | ||
11 | parserOptions: { | ||
12 | parser: "@typescript-eslint/parser", | ||
13 | }, | ||
14 | }; | ||
diff --git a/viewer/.gitignore b/viewer/.gitignore new file mode 100644 index 0000000..12a8306 --- /dev/null +++ b/viewer/.gitignore | |||
@@ -0,0 +1,24 @@ | |||
1 | .DS_Store | ||
2 | node_modules | ||
3 | /dist | ||
4 | |||
5 | # local env files | ||
6 | .env.local | ||
7 | .env.*.local | ||
8 | |||
9 | # Log files | ||
10 | npm-debug.log* | ||
11 | yarn-debug.log* | ||
12 | yarn-error.log* | ||
13 | |||
14 | # Editor directories and files | ||
15 | .idea | ||
16 | .vscode | ||
17 | *.suo | ||
18 | *.ntvs* | ||
19 | *.njsproj | ||
20 | *.sln | ||
21 | *.sw? | ||
22 | |||
23 | # Backup files | ||
24 | *.bak | ||
diff --git a/viewer/.prettierrc.js b/viewer/.prettierrc.js new file mode 100644 index 0000000..ee0cb9b --- /dev/null +++ b/viewer/.prettierrc.js | |||
@@ -0,0 +1,9 @@ | |||
1 | module.exports = { | ||
2 | trailingComma: "es5", | ||
3 | tabWidth: 2, | ||
4 | useTabs: false, | ||
5 | singleQuote: false, | ||
6 | printWidth: 120, | ||
7 | bracketSpacing: true, | ||
8 | arrowParens: "avoid", | ||
9 | }; | ||
diff --git a/viewer/README.md b/viewer/README.md new file mode 100644 index 0000000..7a84865 --- /dev/null +++ b/viewer/README.md | |||
@@ -0,0 +1,24 @@ | |||
1 | # ldgallery-front | ||
2 | |||
3 | ## Project setup | ||
4 | ``` | ||
5 | npm install | ||
6 | ``` | ||
7 | |||
8 | ### Compiles and hot-reloads for development | ||
9 | ``` | ||
10 | npm run serve | ||
11 | ``` | ||
12 | |||
13 | ### Compiles and minifies for production | ||
14 | ``` | ||
15 | npm run build | ||
16 | ``` | ||
17 | |||
18 | ### Lints and fixes files | ||
19 | ``` | ||
20 | npm run lint | ||
21 | ``` | ||
22 | |||
23 | ### Customize configuration | ||
24 | See [Configuration Reference](https://cli.vuejs.org/config/). | ||
diff --git a/viewer/babel.config.js b/viewer/babel.config.js new file mode 100644 index 0000000..162a3ea --- /dev/null +++ b/viewer/babel.config.js | |||
@@ -0,0 +1,3 @@ | |||
1 | module.exports = { | ||
2 | presets: ["@vue/cli-plugin-babel/preset"], | ||
3 | }; | ||
diff --git a/viewer/package-lock.json b/viewer/package-lock.json new file mode 100644 index 0000000..6b91ffd --- /dev/null +++ b/viewer/package-lock.json | |||
@@ -0,0 +1,12299 @@ | |||
1 | { | ||
2 | "name": "ldgallery-front", | ||
3 | "version": "0.1.0", | ||
4 | "lockfileVersion": 1, | ||
5 | "requires": true, | ||
6 | "dependencies": { | ||
7 | "@babel/code-frame": { | ||
8 | "version": "7.5.5", | ||
9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", | ||
10 | "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", | ||
11 | "dev": true, | ||
12 | "requires": { | ||
13 | "@babel/highlight": "^7.0.0" | ||
14 | } | ||
15 | }, | ||
16 | "@babel/core": { | ||
17 | "version": "7.7.7", | ||
18 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.7.tgz", | ||
19 | "integrity": "sha512-jlSjuj/7z138NLZALxVgrx13AOtqip42ATZP7+kYl53GvDV6+4dCek1mVUo8z8c8Xnw/mx2q3d9HWh3griuesQ==", | ||
20 | "dev": true, | ||
21 | "requires": { | ||
22 | "@babel/code-frame": "^7.5.5", | ||
23 | "@babel/generator": "^7.7.7", | ||
24 | "@babel/helpers": "^7.7.4", | ||
25 | "@babel/parser": "^7.7.7", | ||
26 | "@babel/template": "^7.7.4", | ||
27 | "@babel/traverse": "^7.7.4", | ||
28 | "@babel/types": "^7.7.4", | ||
29 | "convert-source-map": "^1.7.0", | ||
30 | "debug": "^4.1.0", | ||
31 | "json5": "^2.1.0", | ||
32 | "lodash": "^4.17.13", | ||
33 | "resolve": "^1.3.2", | ||
34 | "semver": "^5.4.1", | ||
35 | "source-map": "^0.5.0" | ||
36 | } | ||
37 | }, | ||
38 | "@babel/generator": { | ||
39 | "version": "7.7.7", | ||
40 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.7.tgz", | ||
41 | "integrity": "sha512-/AOIBpHh/JU1l0ZFS4kiRCBnLi6OTHzh0RPk3h9isBxkkqELtQNFi1Vr/tiG9p1yfoUdKVwISuXWQR+hwwM4VQ==", | ||
42 | "dev": true, | ||
43 | "requires": { | ||
44 | "@babel/types": "^7.7.4", | ||
45 | "jsesc": "^2.5.1", | ||
46 | "lodash": "^4.17.13", | ||
47 | "source-map": "^0.5.0" | ||
48 | } | ||
49 | }, | ||
50 | "@babel/helper-annotate-as-pure": { | ||
51 | "version": "7.7.4", | ||
52 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.4.tgz", | ||
53 | "integrity": "sha512-2BQmQgECKzYKFPpiycoF9tlb5HA4lrVyAmLLVK177EcQAqjVLciUb2/R+n1boQ9y5ENV3uz2ZqiNw7QMBBw1Og==", | ||
54 | "dev": true, | ||
55 | "requires": { | ||
56 | "@babel/types": "^7.7.4" | ||
57 | } | ||
58 | }, | ||
59 | "@babel/helper-builder-binary-assignment-operator-visitor": { | ||
60 | "version": "7.7.4", | ||
61 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.4.tgz", | ||
62 | "integrity": "sha512-Biq/d/WtvfftWZ9Uf39hbPBYDUo986m5Bb4zhkeYDGUllF43D+nUe5M6Vuo6/8JDK/0YX/uBdeoQpyaNhNugZQ==", | ||
63 | "dev": true, | ||
64 | "requires": { | ||
65 | "@babel/helper-explode-assignable-expression": "^7.7.4", | ||
66 | "@babel/types": "^7.7.4" | ||
67 | } | ||
68 | }, | ||
69 | "@babel/helper-call-delegate": { | ||
70 | "version": "7.7.4", | ||
71 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.7.4.tgz", | ||
72 | "integrity": "sha512-8JH9/B7J7tCYJ2PpWVpw9JhPuEVHztagNVuQAFBVFYluRMlpG7F1CgKEgGeL6KFqcsIa92ZYVj6DSc0XwmN1ZA==", | ||
73 | "dev": true, | ||
74 | "requires": { | ||
75 | "@babel/helper-hoist-variables": "^7.7.4", | ||
76 | "@babel/traverse": "^7.7.4", | ||
77 | "@babel/types": "^7.7.4" | ||
78 | } | ||
79 | }, | ||
80 | "@babel/helper-create-class-features-plugin": { | ||
81 | "version": "7.7.4", | ||
82 | "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.7.4.tgz", | ||
83 | "integrity": "sha512-l+OnKACG4uiDHQ/aJT8dwpR+LhCJALxL0mJ6nzjB25e5IPwqV1VOsY7ah6UB1DG+VOXAIMtuC54rFJGiHkxjgA==", | ||
84 | "dev": true, | ||
85 | "requires": { | ||
86 | "@babel/helper-function-name": "^7.7.4", | ||
87 | "@babel/helper-member-expression-to-functions": "^7.7.4", | ||
88 | "@babel/helper-optimise-call-expression": "^7.7.4", | ||
89 | "@babel/helper-plugin-utils": "^7.0.0", | ||
90 | "@babel/helper-replace-supers": "^7.7.4", | ||
91 | "@babel/helper-split-export-declaration": "^7.7.4" | ||
92 | } | ||
93 | }, | ||
94 | "@babel/helper-create-regexp-features-plugin": { | ||
95 | "version": "7.7.4", | ||
96 | "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.4.tgz", | ||
97 | "integrity": "sha512-Mt+jBKaxL0zfOIWrfQpnfYCN7/rS6GKx6CCCfuoqVVd+17R8zNDlzVYmIi9qyb2wOk002NsmSTDymkIygDUH7A==", | ||
98 | "dev": true, | ||
99 | "requires": { | ||
100 | "@babel/helper-regex": "^7.4.4", | ||
101 | "regexpu-core": "^4.6.0" | ||
102 | } | ||
103 | }, | ||
104 | "@babel/helper-define-map": { | ||
105 | "version": "7.7.4", | ||
106 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.7.4.tgz", | ||
107 | "integrity": "sha512-v5LorqOa0nVQUvAUTUF3KPastvUt/HzByXNamKQ6RdJRTV7j8rLL+WB5C/MzzWAwOomxDhYFb1wLLxHqox86lg==", | ||