w-web-api 1.0.75 → 1.0.77
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 +99 -99
- package/dist/css/{app.e140ee15.css → app.ae472c4d.css} +1 -1
- package/dist/index.tmp +1 -1
- package/dist/js/app-legacy.2aa145e5.js +1 -0
- package/dist/js/app.2aa145e5.js +1 -0
- package/dist/js/{chunk-vendors.cc9f5247.js → chunk-vendors-legacy.47cf6375.js} +1 -1
- package/dist/js/{chunk-vendors-legacy.cc9f5247.js → chunk-vendors.47cf6375.js} +1 -1
- package/dist/w-web-api.umd.js +1 -1
- package/docs/WWebApi.html +76 -2
- package/docs/index.html +1 -1
- package/docs/server_WWebApi.mjs.html +931 -931
- package/docs/src_components_Common_CheckYesNo.vue.html +1 -1
- package/{g.backupDb.mjs → g_backupDb.mjs} +10 -10
- package/{g.initialTestData.mjs → g_initialTestData.mjs} +21 -21
- package/{g.mOrm.mjs → g_mOrm.mjs} +24 -24
- package/{g.provideApis.mjs → g_provideApis.mjs} +53 -53
- package/logs/2026-08-25T20.log +0 -0
- package/logs/2026-08-25T21.log +1891 -0
- package/package.json +12 -12
- package/server/WWebApi.mjs +930 -930
- package/settings.json +1 -1
- package/src/components/LayoutContent.vue +637 -637
- package/src/components/LayoutContentStats.vue +99 -27
- package/srv.mjs +108 -108
- package/tableTags.json +1 -1
- package/dist/js/app-legacy.955c81f0.js +0 -1
- package/dist/js/app.955c81f0.js +0 -1
- /package/{g.getSettings.mjs → g_getSettings.mjs} +0 -0
package/README.md
CHANGED
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
# w-web-api
|
|
2
|
-
A web service for APIs.
|
|
3
|
-
|
|
4
|
-

|
|
5
|
-
[](https://npmjs.org/package/w-web-api)
|
|
6
|
-
[](https://npmjs.org/package/w-web-api)
|
|
7
|
-
[](https://npmjs.org/package/w-web-api)
|
|
8
|
-
[](https://npmjs.org/package/w-web-api)
|
|
9
|
-
[](https://www.jsdelivr.com/package/npm/w-web-api)
|
|
10
|
-
|
|
11
|
-
## Documentation
|
|
12
|
-
To view documentation or get support, visit [docs](https://yuda-lyu.github.io/w-web-api/WWebApi.html).
|
|
13
|
-
|
|
14
|
-
## Installation
|
|
15
|
-
|
|
16
|
-
### Using npm(ES6 module):
|
|
17
|
-
```alias
|
|
18
|
-
npm i w-web-api
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
#### Example for server:
|
|
22
|
-
> **Link:** [[dev source code](https://github.com/yuda-lyu/w-web-api/blob/master/srv.mjs)]
|
|
23
|
-
```alias
|
|
24
|
-
import WOrm from 'w-orm-lmdb/src/WOrmLmdb.mjs'
|
|
25
|
-
import WWebApi from './server/WWebApi.mjs'
|
|
26
|
-
import getSettings from './
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
//st
|
|
30
|
-
let st = getSettings()
|
|
31
|
-
|
|
32
|
-
let url = st.dbUrl
|
|
33
|
-
let db = st.dbName
|
|
34
|
-
let opt = {
|
|
35
|
-
|
|
36
|
-
bCheckUser: false,
|
|
37
|
-
getUserById: null,
|
|
38
|
-
bExcludeWhenNotAdmin: false,
|
|
39
|
-
|
|
40
|
-
serverPort: 11005,
|
|
41
|
-
subfolder: '', //mapi
|
|
42
|
-
urlRedirect: 'https://www.google.com/', //本機測試時得先編譯, 再瀏覽: http://localhost:11005/
|
|
43
|
-
|
|
44
|
-
webName: {
|
|
45
|
-
'eng': 'API Service',
|
|
46
|
-
'cht': 'API管理系統',
|
|
47
|
-
},
|
|
48
|
-
webDescription: {
|
|
49
|
-
'eng': 'A web service package as methods to send requests to and receive responses from an API.',
|
|
50
|
-
'cht': '一套以方法形式,用於發送請求至API並接收其回應的網頁服務套件。',
|
|
51
|
-
},
|
|
52
|
-
webLogo: 'data:image/svg+xml;base64,...',
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
let getUserByToken = async (token) => {
|
|
57
|
-
// return {} //測試無法登入
|
|
58
|
-
if (token === '{token-for-application}') { //提供外部應用系統作為存取使用者
|
|
59
|
-
return {
|
|
60
|
-
id: 'id-for-application',
|
|
61
|
-
name: 'application',
|
|
62
|
-
email: 'application@example.com',
|
|
63
|
-
isAdmin: 'y',
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
if (token === 'sys') { //開發階段w-ui-loginout自動給予browser使用者(且位於localhost)的token為sys
|
|
67
|
-
return {
|
|
68
|
-
id: 'id-for-admin',
|
|
69
|
-
name: '測試者',
|
|
70
|
-
email: 'admin@example.com',
|
|
71
|
-
isAdmin: 'y',
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
console.log('invalid token', token)
|
|
75
|
-
console.log('於生產環境時得加入SSO等驗證token機制')
|
|
76
|
-
return {}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
let verifyBrowserUser = (user, from) => {
|
|
80
|
-
console.log('verifyBrowserUser/user', user)
|
|
81
|
-
// return false //測試無法登入
|
|
82
|
-
console.log('於生產環境時得加入限制瀏覽器使用者身份機制')
|
|
83
|
-
return user.isAdmin === 'y' //測試僅系統管理者使用
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
let verifyAppUser = (user, from) => {
|
|
87
|
-
console.log('verifyAppUser/user', user)
|
|
88
|
-
// return false //測試無法登入
|
|
89
|
-
console.log('於生產環境時得加入限制應用程式使用者身份機制')
|
|
90
|
-
return user.isAdmin === 'y' //測試僅系統管理者使用
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
//WWebApi
|
|
94
|
-
let instWWebApi = WWebApi(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUser, opt)
|
|
95
|
-
|
|
96
|
-
instWWebApi.on('error', (err) => {
|
|
97
|
-
console.log(err)
|
|
98
|
-
})
|
|
99
|
-
```
|
|
1
|
+
# w-web-api
|
|
2
|
+
A web service for APIs.
|
|
3
|
+
|
|
4
|
+

|
|
5
|
+
[](https://npmjs.org/package/w-web-api)
|
|
6
|
+
[](https://npmjs.org/package/w-web-api)
|
|
7
|
+
[](https://npmjs.org/package/w-web-api)
|
|
8
|
+
[](https://npmjs.org/package/w-web-api)
|
|
9
|
+
[](https://www.jsdelivr.com/package/npm/w-web-api)
|
|
10
|
+
|
|
11
|
+
## Documentation
|
|
12
|
+
To view documentation or get support, visit [docs](https://yuda-lyu.github.io/w-web-api/WWebApi.html).
|
|
13
|
+
|
|
14
|
+
## Installation
|
|
15
|
+
|
|
16
|
+
### Using npm(ES6 module):
|
|
17
|
+
```alias
|
|
18
|
+
npm i w-web-api
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
#### Example for server:
|
|
22
|
+
> **Link:** [[dev source code](https://github.com/yuda-lyu/w-web-api/blob/master/srv.mjs)]
|
|
23
|
+
```alias
|
|
24
|
+
import WOrm from 'w-orm-lmdb/src/WOrmLmdb.mjs'
|
|
25
|
+
import WWebApi from './server/WWebApi.mjs'
|
|
26
|
+
import getSettings from './g_getSettings.mjs'
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
//st
|
|
30
|
+
let st = getSettings()
|
|
31
|
+
|
|
32
|
+
let url = st.dbUrl
|
|
33
|
+
let db = st.dbName
|
|
34
|
+
let opt = {
|
|
35
|
+
|
|
36
|
+
bCheckUser: false,
|
|
37
|
+
getUserById: null,
|
|
38
|
+
bExcludeWhenNotAdmin: false,
|
|
39
|
+
|
|
40
|
+
serverPort: 11005,
|
|
41
|
+
subfolder: '', //mapi
|
|
42
|
+
urlRedirect: 'https://www.google.com/', //本機測試時得先編譯, 再瀏覽: http://localhost:11005/
|
|
43
|
+
|
|
44
|
+
webName: {
|
|
45
|
+
'eng': 'API Service',
|
|
46
|
+
'cht': 'API管理系統',
|
|
47
|
+
},
|
|
48
|
+
webDescription: {
|
|
49
|
+
'eng': 'A web service package as methods to send requests to and receive responses from an API.',
|
|
50
|
+
'cht': '一套以方法形式,用於發送請求至API並接收其回應的網頁服務套件。',
|
|
51
|
+
},
|
|
52
|
+
webLogo: 'data:image/svg+xml;base64,...',
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
let getUserByToken = async (token) => {
|
|
57
|
+
// return {} //測試無法登入
|
|
58
|
+
if (token === '{token-for-application}') { //提供外部應用系統作為存取使用者
|
|
59
|
+
return {
|
|
60
|
+
id: 'id-for-application',
|
|
61
|
+
name: 'application',
|
|
62
|
+
email: 'application@example.com',
|
|
63
|
+
isAdmin: 'y',
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
if (token === 'sys') { //開發階段w-ui-loginout自動給予browser使用者(且位於localhost)的token為sys
|
|
67
|
+
return {
|
|
68
|
+
id: 'id-for-admin',
|
|
69
|
+
name: '測試者',
|
|
70
|
+
email: 'admin@example.com',
|
|
71
|
+
isAdmin: 'y',
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
console.log('invalid token', token)
|
|
75
|
+
console.log('於生產環境時得加入SSO等驗證token機制')
|
|
76
|
+
return {}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
let verifyBrowserUser = (user, from) => {
|
|
80
|
+
console.log('verifyBrowserUser/user', user)
|
|
81
|
+
// return false //測試無法登入
|
|
82
|
+
console.log('於生產環境時得加入限制瀏覽器使用者身份機制')
|
|
83
|
+
return user.isAdmin === 'y' //測試僅系統管理者使用
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
let verifyAppUser = (user, from) => {
|
|
87
|
+
console.log('verifyAppUser/user', user)
|
|
88
|
+
// return false //測試無法登入
|
|
89
|
+
console.log('於生產環境時得加入限制應用程式使用者身份機制')
|
|
90
|
+
return user.isAdmin === 'y' //測試僅系統管理者使用
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
//WWebApi
|
|
94
|
+
let instWWebApi = WWebApi(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUser, opt)
|
|
95
|
+
|
|
96
|
+
instWWebApi.on('error', (err) => {
|
|
97
|
+
console.log(err)
|
|
98
|
+
})
|
|
99
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--bg-1:#fff;--bg-2:#f7f8fa;--bg-3:#eceef1;--bg-accent:rgba(0,153,255,.08);--code-bg:#0d1117;--code-fg:#c9d1d9;--c-1:#1b1b1b;--c-2:#6b7280;--c-3:#9aa1ac;--accent:#09f;--accent-hover:#07c;--border:#e6e8ec;--border-soft:#eef0f3;--m-get:#0082d0;--m-get-bg:rgba(0,130,208,.1);--m-post:#069061;--m-post-bg:rgba(6,144,97,.11);--m-put:#c2670a;--m-put-bg:rgba(255,88,0,.1);--m-del:#e01b54;--m-del-bg:rgba(239,0,6,.09);--m-patch:#b7860b;--m-patch-bg:rgba(237,190,32,.16);--m-other:#6b7280;--m-other-bg:hsla(220,9%,46%,.1);--s-2xx:#069061;--s-2xx-bg:rgba(6,144,97,.12);--s-3xx:#0082d0;--s-3xx-bg:rgba(0,130,208,.1);--s-4xx:#c2670a;--s-4xx-bg:rgba(255,88,0,.11);--s-5xx:#e01b54;--s-5xx-bg:rgba(239,0,6,.1);--danger:#e01b54;--danger-bg:#fff5f7;--success:#069061;--ok-fg:#069061;--ok-bg:rgba(6,144,97,.12);--font:"Microsoft JhengHei","微軟正黑體",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-code:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Courier New",monospace;--fs-h1:27px;--fs-h2:18px;--fs-h3:15px;--fs-body:14px;--fs-sm:13px;--fs-xs:11.5px;--fw-medium:500;--fw-bold:600;--radius:8px;--radius-sm:5px;--radius-lg:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-8:32px;--focus:0 0 0 3px rgba(0,153,255,.18);--focus-danger:0 0 0 3px rgba(239,0,6,.15)}.w-mb{font-family:var(--font-code);font-weight:var(--fw-bold);text-transform:uppercase;font-size:10px;letter-spacing:.03em;padding:2px 6px;min-width:40px;text-align:center;border-radius:var(--radius-sm);border:none;display:inline-block;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;line-height:1.5}.w-mb.get{color:var(--m-get);background:var(--m-get-bg)}.w-mb.post{color:var(--m-post);background:var(--m-post-bg)}.w-mb.put{color:var(--m-put);background:var(--m-put-bg)}.w-mb.del{color:var(--m-del);background:var(--m-del-bg)}.w-mb.patch{color:var(--m-patch);background:var(--m-patch-bg)}.w-mb.other{color:var(--m-other);background:var(--m-other-bg)}.w-input,.w-select,.w-textarea{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:8px 12px;font-size:var(--fs-body);color:var(--c-1);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);outline:none;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s;font-family:var(--font)}.w-textarea{font-family:var(--font-code);font-size:var(--fs-sm);resize:vertical;min-height:72px;line-height:1.55}.w-input:focus,.w-select:focus,.w-textarea:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.w-input.is-error,.w-textarea.is-error{border-color:var(--danger);-webkit-box-shadow:var(--focus-danger);box-shadow:var(--focus-danger)}.w-btn-primary{padding:8px 17px;font-size:var(--fs-body);font-weight:var(--fw-medium);border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.w-btn-danger{padding:8px 17px;font-size:var(--fs-body);border-radius:var(--radius);border:1px solid var(--danger);background:transparent;color:var(--danger);cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-danger:hover{background:var(--danger-bg)}.w-btn-ghost{padding:7px 14px;font-size:var(--fs-sm);border:1px solid var(--border);background:transparent;color:var(--c-2);border-radius:var(--radius);cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-ghost:hover{background:var(--bg-3)}.w-mono{font-family:var(--font-code)}.w-muted{color:var(--c-2)}.w-tnum{font-variant-numeric:tabular-nums}.w-seg{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:2px;background:var(--bg-2);border:1px solid var(--border);border-radius:9px;padding:3px}.w-seg-btn{border:none;background:transparent;color:var(--c-2);font-size:13px;padding:5px 17px;border-radius:6px;cursor:pointer;font-weight:var(--fw-medium);-webkit-transition:.15s;transition:.15s}.w-seg-btn:hover{color:var(--c-1)}.w-seg-btn.on{background:var(--bg-1);color:var(--accent);-webkit-box-shadow:0 1px 2px rgba(0,0,0,.07);box-shadow:0 1px 2px rgba(0,0,0,.07)}.op-title{font-size:var(--fs-h1);font-weight:var(--fw-bold);letter-spacing:-.01em;margin:6px 0 10px;color:var(--c-1)}.op-path{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;padding:8px 13px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-code);font-size:13px;color:var(--c-1);max-width:100%;overflow:auto}.op-desc{color:var(--c-2);margin:14px 0 0;max-width:720px;font-size:14.5px;line-height:1.7}.pills{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:7px;margin:16px 0 4px}.pill{font-size:12px;color:var(--c-2);background:var(--bg-2);border:1px solid var(--border);border-radius:20px;padding:3px 11px}.pill b{color:var(--c-1)}.pill b,.pill.ok{font-weight:var(--fw-bold)}.pill.ok{color:var(--ok-fg);background:var(--ok-bg);border-color:transparent}.pill .kw-chip{display:inline-block;vertical-align:middle;font-size:11px;font-weight:var(--fw-bold);color:#0082d0;background:rgba(0,130,208,.12);border-radius:9px;padding:1px 7px;margin-left:5px}.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:34px;margin-top:28px;-webkit-box-align:start;-ms-flex-align:start;align-items:start}@media (max-width:1100px){.split{grid-template-columns:1fr}}.dsec{margin-bottom:28px}.dsec-h{font-size:13px;font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--c-3);padding-bottom:9px;border-bottom:1px solid var(--border-soft);margin-bottom:12px}.rail{position:sticky;top:14px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px}.card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border)}.card-h{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:9px;padding:9px 13px;background:var(--bg-2);border-bottom:1px solid var(--border);font-size:12px;color:var(--c-2)}.card-h .lab{color:var(--c-1)}.card-h .lab,.card-h .st{font-weight:var(--fw-bold)}.card-h .st{margin-left:auto;font-size:11.5px;color:var(--ok-fg);background:var(--ok-bg);padding:1px 8px;border-radius:var(--radius-sm)}.card-h .st,.code{font-family:var(--font-code)}.code{background:var(--code-bg);color:var(--code-fg);font-size:12.5px;line-height:1.7;padding:14px 16px;white-space:pre;overflow:auto;margin:0}.code .k{color:#79c0ff}.code .s{color:#a5d6ff}.code .n{color:#f0883e}.code .pn{color:#8b949e}.code .b{color:#ff7b72}.w-status{font-family:var(--font-code);font-weight:var(--fw-bold);font-size:13px;padding:2px 11px;border-radius:var(--radius-sm);display:inline-block}.w-status.s2{color:var(--s-2xx);background:var(--s-2xx-bg)}.w-status.s3{color:var(--s-3xx);background:var(--s-3xx-bg)}.w-status.s4{color:var(--s-4xx);background:var(--s-4xx-bg)}.w-status.s5{color:var(--s-5xx);background:var(--s-5xx-bg)}.pgc-rotate[data-v-5b4e8bee]{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;-webkit-transition:all .6s ease-in-out;transition:all .6s ease-in-out;-webkit-animation:progress-circular-rotate-5b4e8bee 1.4s linear infinite;animation:progress-circular-rotate-5b4e8bee 1.4s linear infinite;-webkit-transform-origin:center center;transform-origin:center center}.pgc-dash[data-v-5b4e8bee]{-webkit-animation:progress-circular-dash-5b4e8bee 1.4s ease-in-out infinite;animation:progress-circular-dash-5b4e8bee 1.4s ease-in-out infinite;stroke-linecap:round;stroke-dasharray:80,200;stroke-dashoffset:0px}@-webkit-keyframes progress-circular-dash-5b4e8bee{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@keyframes progress-circular-dash-5b4e8bee{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@-webkit-keyframes progress-circular-rotate-5b4e8bee{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes progress-circular-rotate-5b4e8bee{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.WPopperFix[data-popper-reference-hidden][data-v-77c916dd]{visibility:hidden;pointer-events:none}.sb[data-v-84274e1c]{-webkit-transition:opacity .3s;transition:opacity .3s;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.sb[data-v-84274e1c]::-webkit-scrollbar{width:8px;height:8px}.sb[data-v-84274e1c]::-webkit-scrollbar-track{background:transparent}.sb[data-v-84274e1c]::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3);border-radius:20px;border:3px solid transparent}.ts[data-v-46cd394a]{-webkit-transition:all .3s cubic-bezier(.25,.8,.5,1);transition:all .3s cubic-bezier(.25,.8,.5,1)}.bs[data-v-46cd394a]{-webkit-box-shadow:0 8px 2px -8px rgba(0,0,0,.3),0 16px 24px 2px rgba(0,0,0,.3),0 6px 30px 5px rgba(0,0,0,.3);box-shadow:0 8px 2px -8px rgba(0,0,0,.3),0 16px 24px 2px rgba(0,0,0,.3),0 6px 30px 5px rgba(0,0,0,.3)}.fade-enter-active[data-v-a0c94508],.fade-leave-active[data-v-a0c94508]{-webkit-transition:all .3s;transition:all .3s}.fade-enter[data-v-a0c94508],.fade-leave-to[data-v-a0c94508]{-webkit-transform:scaleX(0);transform:scaleX(0)}.fade-enter-to[data-v-a0c94508],.fade-leave[data-v-a0c94508]{-webkit-transform:scaleX(100%);transform:scaleX(100%)}.caretRight[data-v-26dfca3e]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block}.cc[data-v-26dfca3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.circle[data-v-26dfca3e]{width:22px;height:22px;min-width:22px;min-height:22px;max-width:22px;max-height:22px;border-radius:50%}.md[data-v-7a1b470c]{font-size:13px;color:var(--c-1,#1b1b1b)}.md[data-v-7a1b470c] .md{contain:none!important}.md[data-v-7a1b470c] table{border-collapse:collapse;width:100%;font-size:13px;margin:2px 0 8px;word-break:normal}.md[data-v-7a1b470c] table tr th{text-align:left;font-weight:600;font-size:11.5px;letter-spacing:.03em;color:var(--c-2,#6b7280);background:transparent;border:none;border-bottom:1px solid var(--border,#e6e8ec);margin:0;padding:8px 18px 8px 0}.md[data-v-7a1b470c] table tr td{border:none;border-bottom:1px solid var(--border-soft,#eef0f3);color:var(--c-1,#1b1b1b);font-family:var(--font-code,ui-monospace,Menlo,Consolas,monospace);font-size:12.5px;vertical-align:top;margin:0;padding:8px 18px 8px 0}.md[data-v-7a1b470c] table tbody tr:last-child td{border-bottom:none}.md[data-v-7a1b470c] table tr td:first-child{font-weight:600;color:var(--c-1,#1b1b1b)}.md[data-v-7a1b470c] table tr td:nth-child(2){color:var(--m-post,#069061)}.md[data-v-7a1b470c] table tr td:nth-child(3){color:var(--c-2,#6b7280)}.md[data-v-7a1b470c] h1,.md[data-v-7a1b470c] h2,.md[data-v-7a1b470c] h3,.md[data-v-7a1b470c] h4,.md[data-v-7a1b470c] h5,.md[data-v-7a1b470c] h6{font-weight:600;font-size:13px;line-height:1.4;color:var(--c-2,#6b7280);margin:8px 0 6px}.md[data-v-7a1b470c] p{color:var(--c-2,#6b7280);line-height:1.6;margin:4px 0}.md[data-v-7a1b470c] code{background:var(--bg-3,#eceef1);border-radius:4px;padding:1px 5px}.md[data-v-7a1b470c] code,.md[data-v-7a1b470c] pre{font-family:var(--font-code,ui-monospace,Menlo,Consolas,monospace);font-size:12px}.md[data-v-7a1b470c] pre{background:var(--bg-2,#f7f8fa);border:1px solid var(--border,#e6e8ec);border-radius:8px;padding:12px 14px;overflow:auto}.md[data-v-7a1b470c] pre code{background:transparent;padding:0}.bk-title-sec[data-v-eb032b26]{font-size:var(--fs-h3);font-weight:600;color:var(--c-1);padding:6px 0 10px 0;border-bottom:1px solid var(--border);margin-bottom:12px}.bk-title[data-v-eb032b26]{font-size:var(--fs-xs);font-weight:500;color:var(--c-2);padding:0 0 6px 0}.bk-item[data-v-eb032b26]{padding:3px 5px;font-size:.9rem;line-height:.9rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1)}.bk-row[data-v-eb032b26]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:12px 0 6px 0}.bk-col-label[data-v-eb032b26]{width:auto;-ms-flex-negative:0;flex-shrink:0}.bk-col-field[data-v-eb032b26]{-webkit-box-flex:1;-ms-flex:1;flex:1}.bk-input[data-v-eb032b26]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:5px 8px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1);color:var(--c-1);outline:none;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.bk-input[data-v-eb032b26]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.bk-textarea[data-v-eb032b26]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:5px 8px;font-size:var(--fs-sm);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1);color:var(--c-1);outline:none;resize:vertical;font-family:var(--font-code);-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.bk-textarea[data-v-eb032b26]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.bk-preview[data-v-eb032b26]{margin-top:6px;padding:8px 10px}.bk-err[data-v-eb032b26]{color:var(--danger);font-size:var(--fs-xs);padding:3px 2px}.bk-hint[data-v-eb032b26]{color:var(--c-3);font-size:var(--fs-xs);line-height:1.6;margin:0 0 8px 0;white-space:pre-line}.btn-save[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;-webkit-transition:background-color .15s,border-color .15s;transition:background-color .15s,border-color .15s}.btn-save[data-v-eb032b26]:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-delete[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--danger);background:transparent;color:var(--danger);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-delete[data-v-eb032b26]:hover{background:var(--danger-bg)}.btn-cancel[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--border);background:transparent;color:var(--c-2);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-cancel[data-v-eb032b26]:hover{background:var(--bg-3)}.sec-label[data-v-28338c8f]{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--c-3)}.addr-bar[data-v-28338c8f]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-1)}.addr-method[data-v-28338c8f]{-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 4px;border-right:1px solid var(--border);background:var(--bg-2);font-family:var(--font-code);font-weight:var(--fw-bold);font-size:var(--fs-sm)}.addr-url[data-v-28338c8f]{-webkit-box-flex:1;-ms-flex:1;flex:1;border:none;outline:none;padding:0 14px;font-size:var(--fs-sm);color:var(--c-1);background:transparent;font-family:var(--font-code)}.addr-send[data-v-28338c8f]{-ms-flex-negative:0;flex-shrink:0;margin:5px;padding:0 20px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.addr-send[data-v-28338c8f]:hover:not(:disabled){background:var(--accent-hover)}.err-bar[data-v-28338c8f]{padding:8px 12px;border-radius:var(--radius-lg);background:var(--danger-bg);border:1px solid var(--danger);color:var(--danger);font-size:var(--fs-sm)}.kv-table[data-v-28338c8f]{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.kv-head[data-v-28338c8f]{display:grid;grid-template-columns:52px 1fr 1fr 34px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--bg-2);font-size:var(--fs-xs);color:var(--c-2);font-weight:var(--fw-bold);white-space:nowrap}.kv-head>div[data-v-28338c8f],.kv-row>div[data-v-28338c8f]{padding:7px 10px}.kv-row[data-v-28338c8f]{display:grid;grid-template-columns:52px 1fr 1fr 34px;border-top:1px solid var(--border)}.kv-center[data-v-28338c8f],.kv-row[data-v-28338c8f]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.kv-center[data-v-28338c8f]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.kv-input[data-v-28338c8f]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent;background:transparent;outline:none;color:var(--c-1);font-size:var(--fs-sm);padding:3px 6px;border-radius:var(--radius-sm);font-family:var(--font-code);-webkit-transition:border-color .15s,background-color .15s;transition:border-color .15s,background-color .15s}.kv-input[data-v-28338c8f]:focus{border-color:var(--accent);background:var(--bg-1)}.kv-del-btn[data-v-28338c8f]{width:22px;height:22px;padding:0;border:none;background:transparent;color:var(--c-3);font-size:1rem;cursor:pointer;line-height:1;-webkit-transition:color .15s;transition:color .15s}.kv-del-btn[data-v-28338c8f]:hover{color:var(--danger)}.btn-addrow[data-v-28338c8f]{padding:5px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--c-2);font-size:var(--fs-xs);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-addrow[data-v-28338c8f]:hover{background:var(--bg-3)}.body-textarea[data-v-28338c8f]{width:100%;min-height:120px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--fs-sm);font-family:var(--font-code);color:var(--c-1);background:var(--bg-1);resize:vertical;outline:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.body-textarea[data-v-28338c8f]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.res-empty-card[data-v-28338c8f]{background:var(--bg-1)}.w-echarts-vue[data-v-0411c82f]{display:block}.ctrl[data-v-0b7f1583]{margin-bottom:16px}.ctrl-row[data-v-0b7f1583]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}.ctrl-label[data-v-0b7f1583]{font-size:.875rem;color:var(--c-2);width:64px;-ms-flex-negative:0;flex-shrink:0}.ctrl-select[data-v-0b7f1583]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--c-1);font-size:.875rem;padding:4px 8px;outline:none;cursor:pointer}.ctrl-select[data-v-0b7f1583]:focus{border-color:var(--accent)}.evt-sel-btn[data-v-0b7f1583]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--c-2);font-size:.8rem;padding:3px 12px;cursor:pointer}.evt-sel-btn[data-v-0b7f1583]:hover{border-color:var(--accent);color:var(--accent)}.evt-count[data-v-0b7f1583]{font-size:.78rem;color:var(--c-3);margin-left:4px}.evt-grid[data-v-0b7f1583]{margin-top:10px;margin-left:72px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;max-width:1040px}.evt-chip[data-v-0b7f1583]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);padding:5px 10px;font-size:.82rem;color:var(--c-2);cursor:pointer;-webkit-transition:border-color .12s,background .12s,color .12s;transition:border-color .12s,background .12s,color .12s}.evt-chip[data-v-0b7f1583]:hover{border-color:var(--accent)}.evt-chip.on[data-v-0b7f1583]{color:var(--c-1);border-color:var(--accent);background:rgba(0,153,255,.06)}.evt-chip .stats-evt-cb[data-v-0b7f1583]{cursor:pointer;margin:0 6px 0 0;-ms-flex-negative:0;flex-shrink:0}.evt-dot[data-v-0b7f1583]{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:6px;-ms-flex-negative:0;flex-shrink:0}.evt-name[data-v-0b7f1583]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-table[data-v-0b7f1583]{width:100%;border-collapse:collapse;font-size:.85rem}.stats-table td[data-v-0b7f1583],.stats-table th[data-v-0b7f1583]{border-bottom:1px solid var(--border);padding:7px 10px;text-align:right;color:var(--c-1);white-space:nowrap}.stats-table th[data-v-0b7f1583]{color:var(--c-2);font-weight:600;background:var(--bg-2)}.w-mm-btn[data-v-7fee0388]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:10px 4px;border:none;border-left:3px solid transparent;background:transparent;color:var(--c-2);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;-webkit-transition:background .15s,color .15s,border-color .15s;transition:background .15s,color .15s,border-color .15s}.w-mm-btn[data-v-7fee0388]:hover{background:rgba(0,153,255,.06);color:var(--c-1)}.w-mm-btn.on[data-v-7fee0388]{color:var(--accent);border-left-color:var(--accent);background:rgba(0,153,255,.08)}.w-mm-label[data-v-7fee0388]{font-size:11px;line-height:1.2;text-align:center;word-break:break-word}body,html{font-family:var(--font);overflow-y:hidden}a,button,div,input,p,pre,span,textarea{font-family: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}}
|
|
1
|
+
:root{--bg-1:#fff;--bg-2:#f7f8fa;--bg-3:#eceef1;--bg-accent:rgba(0,153,255,.08);--code-bg:#0d1117;--code-fg:#c9d1d9;--c-1:#1b1b1b;--c-2:#6b7280;--c-3:#9aa1ac;--accent:#09f;--accent-hover:#07c;--border:#e6e8ec;--border-soft:#eef0f3;--m-get:#0082d0;--m-get-bg:rgba(0,130,208,.1);--m-post:#069061;--m-post-bg:rgba(6,144,97,.11);--m-put:#c2670a;--m-put-bg:rgba(255,88,0,.1);--m-del:#e01b54;--m-del-bg:rgba(239,0,6,.09);--m-patch:#b7860b;--m-patch-bg:rgba(237,190,32,.16);--m-other:#6b7280;--m-other-bg:hsla(220,9%,46%,.1);--s-2xx:#069061;--s-2xx-bg:rgba(6,144,97,.12);--s-3xx:#0082d0;--s-3xx-bg:rgba(0,130,208,.1);--s-4xx:#c2670a;--s-4xx-bg:rgba(255,88,0,.11);--s-5xx:#e01b54;--s-5xx-bg:rgba(239,0,6,.1);--danger:#e01b54;--danger-bg:#fff5f7;--success:#069061;--ok-fg:#069061;--ok-bg:rgba(6,144,97,.12);--font:"Microsoft JhengHei","微軟正黑體",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-code:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Courier New",monospace;--fs-h1:27px;--fs-h2:18px;--fs-h3:15px;--fs-body:14px;--fs-sm:13px;--fs-xs:11.5px;--fw-medium:500;--fw-bold:600;--radius:8px;--radius-sm:5px;--radius-lg:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-6:24px;--sp-8:32px;--focus:0 0 0 3px rgba(0,153,255,.18);--focus-danger:0 0 0 3px rgba(239,0,6,.15)}.w-mb{font-family:var(--font-code);font-weight:var(--fw-bold);text-transform:uppercase;font-size:10px;letter-spacing:.03em;padding:2px 6px;min-width:40px;text-align:center;border-radius:var(--radius-sm);border:none;display:inline-block;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;line-height:1.5}.w-mb.get{color:var(--m-get);background:var(--m-get-bg)}.w-mb.post{color:var(--m-post);background:var(--m-post-bg)}.w-mb.put{color:var(--m-put);background:var(--m-put-bg)}.w-mb.del{color:var(--m-del);background:var(--m-del-bg)}.w-mb.patch{color:var(--m-patch);background:var(--m-patch-bg)}.w-mb.other{color:var(--m-other);background:var(--m-other-bg)}.w-input,.w-select,.w-textarea{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:8px 12px;font-size:var(--fs-body);color:var(--c-1);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius);outline:none;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s;font-family:var(--font)}.w-textarea{font-family:var(--font-code);font-size:var(--fs-sm);resize:vertical;min-height:72px;line-height:1.55}.w-input:focus,.w-select:focus,.w-textarea:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.w-input.is-error,.w-textarea.is-error{border-color:var(--danger);-webkit-box-shadow:var(--focus-danger);box-shadow:var(--focus-danger)}.w-btn-primary{padding:8px 17px;font-size:var(--fs-body);font-weight:var(--fw-medium);border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.w-btn-danger{padding:8px 17px;font-size:var(--fs-body);border-radius:var(--radius);border:1px solid var(--danger);background:transparent;color:var(--danger);cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-danger:hover{background:var(--danger-bg)}.w-btn-ghost{padding:7px 14px;font-size:var(--fs-sm);border:1px solid var(--border);background:transparent;color:var(--c-2);border-radius:var(--radius);cursor:pointer;-webkit-transition:.15s;transition:.15s}.w-btn-ghost:hover{background:var(--bg-3)}.w-mono{font-family:var(--font-code)}.w-muted{color:var(--c-2)}.w-tnum{font-variant-numeric:tabular-nums}.w-seg{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:2px;background:var(--bg-2);border:1px solid var(--border);border-radius:9px;padding:3px}.w-seg-btn{border:none;background:transparent;color:var(--c-2);font-size:13px;padding:5px 17px;border-radius:6px;cursor:pointer;font-weight:var(--fw-medium);-webkit-transition:.15s;transition:.15s}.w-seg-btn:hover{color:var(--c-1)}.w-seg-btn.on{background:var(--bg-1);color:var(--accent);-webkit-box-shadow:0 1px 2px rgba(0,0,0,.07);box-shadow:0 1px 2px rgba(0,0,0,.07)}.op-title{font-size:var(--fs-h1);font-weight:var(--fw-bold);letter-spacing:-.01em;margin:6px 0 10px;color:var(--c-1)}.op-path{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;padding:8px 13px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-code);font-size:13px;color:var(--c-1);max-width:100%;overflow:auto}.op-desc{color:var(--c-2);margin:14px 0 0;max-width:720px;font-size:14.5px;line-height:1.7}.pills{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:7px;margin:16px 0 4px}.pill{font-size:12px;color:var(--c-2);background:var(--bg-2);border:1px solid var(--border);border-radius:20px;padding:3px 11px}.pill b{color:var(--c-1)}.pill b,.pill.ok{font-weight:var(--fw-bold)}.pill.ok{color:var(--ok-fg);background:var(--ok-bg);border-color:transparent}.pill .kw-chip{display:inline-block;vertical-align:middle;font-size:11px;font-weight:var(--fw-bold);color:#0082d0;background:rgba(0,130,208,.12);border-radius:9px;padding:1px 7px;margin-left:5px}.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:34px;margin-top:28px;-webkit-box-align:start;-ms-flex-align:start;align-items:start}@media (max-width:1100px){.split{grid-template-columns:1fr}}.dsec{margin-bottom:28px}.dsec-h{font-size:13px;font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--c-3);padding-bottom:9px;border-bottom:1px solid var(--border-soft);margin-bottom:12px}.rail{position:sticky;top:14px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:16px}.card{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border)}.card-h{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:9px;padding:9px 13px;background:var(--bg-2);border-bottom:1px solid var(--border);font-size:12px;color:var(--c-2)}.card-h .lab{color:var(--c-1)}.card-h .lab,.card-h .st{font-weight:var(--fw-bold)}.card-h .st{margin-left:auto;font-size:11.5px;color:var(--ok-fg);background:var(--ok-bg);padding:1px 8px;border-radius:var(--radius-sm)}.card-h .st,.code{font-family:var(--font-code)}.code{background:var(--code-bg);color:var(--code-fg);font-size:12.5px;line-height:1.7;padding:14px 16px;white-space:pre;overflow:auto;margin:0}.code .k{color:#79c0ff}.code .s{color:#a5d6ff}.code .n{color:#f0883e}.code .pn{color:#8b949e}.code .b{color:#ff7b72}.w-status{font-family:var(--font-code);font-weight:var(--fw-bold);font-size:13px;padding:2px 11px;border-radius:var(--radius-sm);display:inline-block}.w-status.s2{color:var(--s-2xx);background:var(--s-2xx-bg)}.w-status.s3{color:var(--s-3xx);background:var(--s-3xx-bg)}.w-status.s4{color:var(--s-4xx);background:var(--s-4xx-bg)}.w-status.s5{color:var(--s-5xx);background:var(--s-5xx-bg)}.pgc-rotate[data-v-5b4e8bee]{width:100%;height:100%;margin:auto;position:absolute;top:0;bottom:0;left:0;right:0;z-index:1;-webkit-transition:all .6s ease-in-out;transition:all .6s ease-in-out;-webkit-animation:progress-circular-rotate-5b4e8bee 1.4s linear infinite;animation:progress-circular-rotate-5b4e8bee 1.4s linear infinite;-webkit-transform-origin:center center;transform-origin:center center}.pgc-dash[data-v-5b4e8bee]{-webkit-animation:progress-circular-dash-5b4e8bee 1.4s ease-in-out infinite;animation:progress-circular-dash-5b4e8bee 1.4s ease-in-out infinite;stroke-linecap:round;stroke-dasharray:80,200;stroke-dashoffset:0px}@-webkit-keyframes progress-circular-dash-5b4e8bee{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@keyframes progress-circular-dash-5b4e8bee{0%{stroke-dasharray:1,200;stroke-dashoffset:0px}50%{stroke-dasharray:100,200;stroke-dashoffset:-15px}to{stroke-dasharray:100,200;stroke-dashoffset:-124px}}@-webkit-keyframes progress-circular-rotate-5b4e8bee{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes progress-circular-rotate-5b4e8bee{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.WPopperFix[data-popper-reference-hidden][data-v-77c916dd]{visibility:hidden;pointer-events:none}.sb[data-v-12bf3dc0]{-webkit-transition:opacity .3s;transition:opacity .3s;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.sb[data-v-12bf3dc0]::-webkit-scrollbar{width:8px;height:8px}.sb[data-v-12bf3dc0]::-webkit-scrollbar-track{background:transparent}.sb[data-v-12bf3dc0]::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3);border-radius:20px;border:3px solid transparent}.ts[data-v-46cd394a]{-webkit-transition:all .3s cubic-bezier(.25,.8,.5,1);transition:all .3s cubic-bezier(.25,.8,.5,1)}.bs[data-v-46cd394a]{-webkit-box-shadow:0 8px 2px -8px rgba(0,0,0,.3),0 16px 24px 2px rgba(0,0,0,.3),0 6px 30px 5px rgba(0,0,0,.3);box-shadow:0 8px 2px -8px rgba(0,0,0,.3),0 16px 24px 2px rgba(0,0,0,.3),0 6px 30px 5px rgba(0,0,0,.3)}.fade-enter-active[data-v-a0c94508],.fade-leave-active[data-v-a0c94508]{-webkit-transition:all .3s;transition:all .3s}.fade-enter[data-v-a0c94508],.fade-leave-to[data-v-a0c94508]{-webkit-transform:scaleX(0);transform:scaleX(0)}.fade-enter-to[data-v-a0c94508],.fade-leave[data-v-a0c94508]{-webkit-transform:scaleX(100%);transform:scaleX(100%)}.caretRight[data-v-26dfca3e]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block}.cc[data-v-26dfca3e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.circle[data-v-26dfca3e]{width:22px;height:22px;min-width:22px;min-height:22px;max-width:22px;max-height:22px;border-radius:50%}.md[data-v-7a1b470c]{font-size:13px;color:var(--c-1,#1b1b1b)}.md[data-v-7a1b470c] .md{contain:none!important}.md[data-v-7a1b470c] table{border-collapse:collapse;width:100%;font-size:13px;margin:2px 0 8px;word-break:normal}.md[data-v-7a1b470c] table tr th{text-align:left;font-weight:600;font-size:11.5px;letter-spacing:.03em;color:var(--c-2,#6b7280);background:transparent;border:none;border-bottom:1px solid var(--border,#e6e8ec);margin:0;padding:8px 18px 8px 0}.md[data-v-7a1b470c] table tr td{border:none;border-bottom:1px solid var(--border-soft,#eef0f3);color:var(--c-1,#1b1b1b);font-family:var(--font-code,ui-monospace,Menlo,Consolas,monospace);font-size:12.5px;vertical-align:top;margin:0;padding:8px 18px 8px 0}.md[data-v-7a1b470c] table tbody tr:last-child td{border-bottom:none}.md[data-v-7a1b470c] table tr td:first-child{font-weight:600;color:var(--c-1,#1b1b1b)}.md[data-v-7a1b470c] table tr td:nth-child(2){color:var(--m-post,#069061)}.md[data-v-7a1b470c] table tr td:nth-child(3){color:var(--c-2,#6b7280)}.md[data-v-7a1b470c] h1,.md[data-v-7a1b470c] h2,.md[data-v-7a1b470c] h3,.md[data-v-7a1b470c] h4,.md[data-v-7a1b470c] h5,.md[data-v-7a1b470c] h6{font-weight:600;font-size:13px;line-height:1.4;color:var(--c-2,#6b7280);margin:8px 0 6px}.md[data-v-7a1b470c] p{color:var(--c-2,#6b7280);line-height:1.6;margin:4px 0}.md[data-v-7a1b470c] code{background:var(--bg-3,#eceef1);border-radius:4px;padding:1px 5px}.md[data-v-7a1b470c] code,.md[data-v-7a1b470c] pre{font-family:var(--font-code,ui-monospace,Menlo,Consolas,monospace);font-size:12px}.md[data-v-7a1b470c] pre{background:var(--bg-2,#f7f8fa);border:1px solid var(--border,#e6e8ec);border-radius:8px;padding:12px 14px;overflow:auto}.md[data-v-7a1b470c] pre code{background:transparent;padding:0}.bk-title-sec[data-v-eb032b26]{font-size:var(--fs-h3);font-weight:600;color:var(--c-1);padding:6px 0 10px 0;border-bottom:1px solid var(--border);margin-bottom:12px}.bk-title[data-v-eb032b26]{font-size:var(--fs-xs);font-weight:500;color:var(--c-2);padding:0 0 6px 0}.bk-item[data-v-eb032b26]{padding:3px 5px;font-size:.9rem;line-height:.9rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1)}.bk-row[data-v-eb032b26]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:12px 0 6px 0}.bk-col-label[data-v-eb032b26]{width:auto;-ms-flex-negative:0;flex-shrink:0}.bk-col-field[data-v-eb032b26]{-webkit-box-flex:1;-ms-flex:1;flex:1}.bk-input[data-v-eb032b26]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:5px 8px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1);color:var(--c-1);outline:none;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.bk-input[data-v-eb032b26]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.bk-textarea[data-v-eb032b26]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:5px 8px;font-size:var(--fs-sm);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-1);color:var(--c-1);outline:none;resize:vertical;font-family:var(--font-code);-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.bk-textarea[data-v-eb032b26]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.bk-preview[data-v-eb032b26]{margin-top:6px;padding:8px 10px}.bk-err[data-v-eb032b26]{color:var(--danger);font-size:var(--fs-xs);padding:3px 2px}.bk-hint[data-v-eb032b26]{color:var(--c-3);font-size:var(--fs-xs);line-height:1.6;margin:0 0 8px 0;white-space:pre-line}.btn-save[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;-webkit-transition:background-color .15s,border-color .15s;transition:background-color .15s,border-color .15s}.btn-save[data-v-eb032b26]:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-delete[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--danger);background:transparent;color:var(--danger);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-delete[data-v-eb032b26]:hover{background:var(--danger-bg)}.btn-cancel[data-v-eb032b26]{padding:7px 18px;font-size:var(--fs-body);border-radius:var(--radius-lg);border:1px solid var(--border);background:transparent;color:var(--c-2);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-cancel[data-v-eb032b26]:hover{background:var(--bg-3)}.sec-label[data-v-28338c8f]{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--c-3)}.addr-bar[data-v-28338c8f]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-1)}.addr-method[data-v-28338c8f]{-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 4px;border-right:1px solid var(--border);background:var(--bg-2);font-family:var(--font-code);font-weight:var(--fw-bold);font-size:var(--fs-sm)}.addr-url[data-v-28338c8f]{-webkit-box-flex:1;-ms-flex:1;flex:1;border:none;outline:none;padding:0 14px;font-size:var(--fs-sm);color:var(--c-1);background:transparent;font-family:var(--font-code)}.addr-send[data-v-28338c8f]{-ms-flex-negative:0;flex-shrink:0;margin:5px;padding:0 20px;border:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-size:var(--fs-sm);font-weight:var(--fw-medium);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.addr-send[data-v-28338c8f]:hover:not(:disabled){background:var(--accent-hover)}.err-bar[data-v-28338c8f]{padding:8px 12px;border-radius:var(--radius-lg);background:var(--danger-bg);border:1px solid var(--danger);color:var(--danger);font-size:var(--fs-sm)}.kv-table[data-v-28338c8f]{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.kv-head[data-v-28338c8f]{display:grid;grid-template-columns:52px 1fr 1fr 34px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:var(--bg-2);font-size:var(--fs-xs);color:var(--c-2);font-weight:var(--fw-bold);white-space:nowrap}.kv-head>div[data-v-28338c8f],.kv-row>div[data-v-28338c8f]{padding:7px 10px}.kv-row[data-v-28338c8f]{display:grid;grid-template-columns:52px 1fr 1fr 34px;border-top:1px solid var(--border)}.kv-center[data-v-28338c8f],.kv-row[data-v-28338c8f]{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.kv-center[data-v-28338c8f]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.kv-input[data-v-28338c8f]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid transparent;background:transparent;outline:none;color:var(--c-1);font-size:var(--fs-sm);padding:3px 6px;border-radius:var(--radius-sm);font-family:var(--font-code);-webkit-transition:border-color .15s,background-color .15s;transition:border-color .15s,background-color .15s}.kv-input[data-v-28338c8f]:focus{border-color:var(--accent);background:var(--bg-1)}.kv-del-btn[data-v-28338c8f]{width:22px;height:22px;padding:0;border:none;background:transparent;color:var(--c-3);font-size:1rem;cursor:pointer;line-height:1;-webkit-transition:color .15s;transition:color .15s}.kv-del-btn[data-v-28338c8f]:hover{color:var(--danger)}.btn-addrow[data-v-28338c8f]{padding:5px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:transparent;color:var(--c-2);font-size:var(--fs-xs);cursor:pointer;-webkit-transition:background-color .15s;transition:background-color .15s}.btn-addrow[data-v-28338c8f]:hover{background:var(--bg-3)}.body-textarea[data-v-28338c8f]{width:100%;min-height:120px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:var(--fs-sm);font-family:var(--font-code);color:var(--c-1);background:var(--bg-1);resize:vertical;outline:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,-webkit-box-shadow .15s;transition:border-color .15s,box-shadow .15s;transition:border-color .15s,box-shadow .15s,-webkit-box-shadow .15s}.body-textarea[data-v-28338c8f]:focus{border-color:var(--accent);-webkit-box-shadow:var(--focus);box-shadow:var(--focus)}.res-empty-card[data-v-28338c8f]{background:var(--bg-1)}.w-echarts-vue[data-v-0411c82f]{display:block}.ctrl[data-v-ad946b4e]{margin-bottom:16px;display:grid;grid-template-columns:-webkit-max-content minmax(0,1fr);grid-template-columns:max-content minmax(0,1fr);gap:12px 8px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.ctrl-row[data-v-ad946b4e]{display:contents}.ctrl-label[data-v-ad946b4e]{font-size:.875rem;color:var(--c-2)}.ctrl-field[data-v-ad946b4e]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;min-width:0}.ctrl-select[data-v-ad946b4e]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--c-1);font-size:.875rem;padding:4px 8px;outline:none;cursor:pointer}.ctrl-select[data-v-ad946b4e]:focus{border-color:var(--accent)}.evt-sel-btn[data-v-ad946b4e]{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);color:var(--c-2);font-size:.8rem;padding:3px 12px;cursor:pointer}.evt-sel-btn[data-v-ad946b4e]:hover{border-color:var(--accent);color:var(--accent)}.evt-count[data-v-ad946b4e]{font-size:.78rem;color:var(--c-3);margin-left:4px}.evt-grid[data-v-ad946b4e]{grid-column:2;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px}.evt-chip[data-v-ad946b4e],.evt-grid[data-v-ad946b4e]{min-width:0;display:-webkit-box;display:-ms-flexbox;display:flex}.evt-chip[data-v-ad946b4e]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;max-width:100%;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-1);padding:5px 10px;font-size:.82rem;color:var(--c-2);cursor:pointer;-webkit-transition:border-color .12s,background .12s,color .12s;transition:border-color .12s,background .12s,color .12s}.evt-chip[data-v-ad946b4e]:hover{border-color:var(--accent)}.evt-chip.on[data-v-ad946b4e]{color:var(--c-1);border-color:var(--accent);background:rgba(0,153,255,.06)}.evt-chip .stats-evt-cb[data-v-ad946b4e]{cursor:pointer;margin:0 6px 0 0;-ms-flex-negative:0;flex-shrink:0}.evt-dot[data-v-ad946b4e]{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:6px;-ms-flex-negative:0;flex-shrink:0}.evt-name[data-v-ad946b4e]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-table-area[data-v-ad946b4e]{overflow-x:auto}.stats-table[data-v-ad946b4e]{width:100%;border-collapse:collapse;font-size:.85rem}.stats-table td[data-v-ad946b4e]:first-child{white-space:normal;overflow-wrap:anywhere}.stats-table td[data-v-ad946b4e],.stats-table th[data-v-ad946b4e]{border-bottom:1px solid var(--border);padding:7px 10px;text-align:right;color:var(--c-1);white-space:nowrap}.stats-table th[data-v-ad946b4e]{color:var(--c-2);font-weight:600;background:var(--bg-2)}.w-mm-btn[data-v-32eb1fe9]{width:100%;-webkit-box-sizing:border-box;box-sizing:border-box;padding:10px 4px;border:none;border-left:3px solid transparent;background:transparent;color:var(--c-2);cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:4px;-webkit-transition:background .15s,color .15s,border-color .15s;transition:background .15s,color .15s,border-color .15s}.w-mm-btn[data-v-32eb1fe9]:hover{background:rgba(0,153,255,.06);color:var(--c-1)}.w-mm-btn.on[data-v-32eb1fe9]{color:var(--accent);border-left-color:var(--accent);background:rgba(0,153,255,.08)}.w-mm-label[data-v-32eb1fe9]{font-size:11px;line-height:1.2;text-align:center;word-break:break-word}body,html{font-family:var(--font);overflow-y:hidden}a,button,div,input,p,pre,span,textarea{font-family: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}}
|
package/dist/index.tmp
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
urlRedirect: '{urlRedirect}',
|
|
3
3
|
}</script><script>window.___pmwperm___={
|
|
4
4
|
language: '{language}',
|
|
5
|
-
}</script><script defer="defer" src="{sfd}/js/chunk-vendors.
|
|
5
|
+
}</script><script defer="defer" src="{sfd}/js/chunk-vendors.47cf6375.js" type="module"></script><script defer="defer" src="{sfd}/js/app.2aa145e5.js" type="module"></script><link href="{sfd}/css/app.ae472c4d.css" rel="stylesheet"><script defer="defer" src="{sfd}/js/chunk-vendors-legacy.47cf6375.js" nomodule></script><script defer="defer" src="{sfd}/js/app-legacy.2aa145e5.js" nomodule></script></head><body style="font-family:'Microsoft JhengHei','Avenir','Helvetica', 'Arial', 'sans-serif'; padding:0px; margin:0px;"><noscript><strong>We're sorry but w-component-vue doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
|