w-web-api 1.0.28 → 1.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -16
- package/dist/css/app.d38a4241.css +1 -0
- package/dist/index.tmp +3 -1
- package/dist/js/app-legacy.9b4e9f9b.js +2 -0
- package/dist/js/app-legacy.9b4e9f9b.js.map +1 -0
- package/dist/js/app.9b4e9f9b.js +2 -0
- package/dist/js/app.9b4e9f9b.js.map +1 -0
- package/dist/js/chunk-vendors-legacy.2a4fa50d.js +14 -0
- package/dist/js/chunk-vendors-legacy.2a4fa50d.js.map +1 -0
- package/dist/js/chunk-vendors.2a4fa50d.js +14 -0
- package/dist/js/chunk-vendors.2a4fa50d.js.map +1 -0
- package/dist/w-web-api.umd.js +2 -2
- package/dist/w-web-api.umd.js.map +1 -1
- package/docs/WWebApi.html +44 -4
- package/docs/WWebApi.mjs.html +195 -66
- package/docs/index.html +1 -1
- package/{g.mDb.mjs → g.backupDb.mjs} +1 -1
- package/{g.mInitialTestData.mjs → g.initialTestData.mjs} +1 -1
- package/package.json +5 -10
- package/public/index.html +8 -1
- package/server/WWebApi.mjs +194 -65
- package/server/provideApis.mjs +2 -2
- package/src/App.vue +17 -10
- package/src/components/LayoutContent.vue +15 -35
- package/src/main.js +0 -2
- package/src/store/mutations.mjs +6 -13
- package/srv.mjs +23 -12
- package/tableTags-web-api.json +1 -1
- package/vue.config.js +1 -1
- package/dist/css/app.8f83f1ad.css +0 -1
- package/dist/css/chunk-vendors.004a7134.css +0 -5
- package/dist/js/app-legacy.fe5cd851.js +0 -2
- package/dist/js/app-legacy.fe5cd851.js.map +0 -1
- package/dist/js/app.fe5cd851.js +0 -2
- package/dist/js/app.fe5cd851.js.map +0 -1
- package/dist/js/chunk-vendors-legacy.1bbf0550.js +0 -14
- package/dist/js/chunk-vendors-legacy.1bbf0550.js.map +0 -1
- package/dist/js/chunk-vendors.1bbf0550.js +0 -14
- package/dist/js/chunk-vendors.1bbf0550.js.map +0 -1
- package/src/plugins/mVuetify.mjs +0 -12
package/srv.mjs
CHANGED
|
@@ -15,7 +15,8 @@ let opt = {
|
|
|
15
15
|
bExcludeWhenNotAdmin: false,
|
|
16
16
|
|
|
17
17
|
serverPort: 11005,
|
|
18
|
-
subfolder: '', //
|
|
18
|
+
subfolder: '', //mapi
|
|
19
|
+
urlRedirect: 'https://www.google.com/', //本機測試時得先編譯, 再瀏覽: http://localhost:11005/
|
|
19
20
|
|
|
20
21
|
webName: {
|
|
21
22
|
'eng': 'API Service',
|
|
@@ -30,24 +31,34 @@ let opt = {
|
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
let getUserByToken = (token) => {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
// return {} //測試無法登入
|
|
35
|
+
if (token === '{token-for-application}') { //提供外部應用系統作為存取使用者
|
|
36
|
+
return {
|
|
37
|
+
id: 'id-for-application',
|
|
38
|
+
name: 'application',
|
|
39
|
+
email: 'application@example.com',
|
|
40
|
+
isAdmin: 'y',
|
|
41
|
+
}
|
|
37
42
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
+
if (token === 'sys') { //開發階段w-ui-loginout自動給予browser使用者(且位於localhost)的token為sys
|
|
44
|
+
return {
|
|
45
|
+
id: 'id-for-admin',
|
|
46
|
+
name: '測試者',
|
|
47
|
+
email: 'admin@example.com',
|
|
48
|
+
isAdmin: 'y',
|
|
49
|
+
}
|
|
43
50
|
}
|
|
51
|
+
console.log('invalid token', token)
|
|
52
|
+
console.log('於生產環境時得加入SSO等驗證token機制')
|
|
53
|
+
return {}
|
|
44
54
|
}
|
|
45
55
|
|
|
46
56
|
let verifyUser = (user) => {
|
|
47
|
-
return
|
|
57
|
+
// return false //測試無法登入
|
|
58
|
+
console.log('於生產環境時得加入驗證user機制')
|
|
59
|
+
return user.isAdmin === 'y' //測試僅系統管理者使用
|
|
48
60
|
}
|
|
49
61
|
|
|
50
|
-
|
|
51
62
|
//WWebApi
|
|
52
63
|
let instWWebApi = WWebApi(WOrm, url, db, getUserByToken, verifyUser, opt)
|
|
53
64
|
|
package/tableTags-web-api.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"apis":"
|
|
1
|
+
{"apis":"4rDZ5D"}
|
package/vue.config.js
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.md[data-v-6700278b] table{border-collapse:collapse;margin:0;padding:0;word-break:normal}.md[data-v-6700278b] tr{margin:0;padding:0}.md[data-v-6700278b] table tr th{font-weight:700;background:#eee;border:1px solid #ddd;border-bottom:0;margin:0;padding:6px 13px}.md[data-v-6700278b] table tr td{border:1px solid #ddd;margin:0;padding:6px 13px}.md[data-v-6700278b] h1{font-size:1.2rem;line-height:1.2rem}.md[data-v-6700278b] h1,.md[data-v-6700278b] h2{font-weight:700;margin-top:.5rem;margin-bottom:.5rem}.md[data-v-6700278b] h2{font-size:1.1rem;line-height:1.1rem}.md[data-v-6700278b] h3,.md[data-v-6700278b] h4,.md[data-v-6700278b] h5,.md[data-v-6700278b] h6{font-weight:700;font-size:1rem;line-height:1rem;margin-top:.5rem;margin-bottom:.5rem}.bk[data-v-8c31201e]{display:inline-block;width:200px;padding:0 10px 10px 0;vertical-align:top}.bk-title[data-v-8c31201e]{padding:3px;font-size:.8rem;color:#888}.bk-item[data-v-8c31201e]{padding:3px 5px;font-size:.9rem;line-height:.9rem;border-radius:5px;border:1px solid #ddd;background:#fff}body,html{font-family:微軟正黑體,Microsoft JhengHei,MicrosoftJhengHeiRegular,Avenir,Helvetica,Arial,sans-serif;overflow-y:hidden}.v-application,.v-application--wrap,a,button,div,input,p,pre,span,textarea{font-family:inherit}.v-chip{cursor:inherit}.fade-enter-active{-webkit-animation:go 1s;animation:go 1s}.fade-leave-active{-webkit-animation:back 1s;animation:back 1s}@-webkit-keyframes go{0%{opacity:0}to{opacity:1}}@keyframes go{0%{opacity:0}to{opacity:1}}@-webkit-keyframes back{0%{opacity:1}to{opacity:0}}@keyframes back{0%{opacity:1}to{opacity:0}}
|