slimsdk 0.1.55 → 0.2.0
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 +1 -1
- package/dist/desktop/index.d.ts +13 -12
- package/dist/desktop/index.js +1228 -1967
- package/dist/desktop/index.js.map +1 -1
- package/dist/index-3POan8Vl.d.ts +94 -0
- package/dist/index-B4158M0u.d.ts +21 -0
- package/dist/index-BAQxKstM.d.ts +8 -0
- package/dist/index-BMqjxP9I.d.ts +11 -0
- package/dist/index-CD53Vh6h.d.ts +31 -0
- package/dist/index-CoYHkkyT.d.ts +14 -0
- package/dist/index-D5CUpF9v.d.ts +10 -0
- package/dist/index-DBhzpIiB.d.ts +32 -0
- package/dist/index-DCw_tM-R.d.ts +28 -0
- package/dist/{index-kr8P3eEW.d.ts → index-DWqF-tKY.d.ts} +7 -9
- package/dist/index-DzKPF0ja.d.ts +14 -0
- package/dist/index-jVam7Sxi.d.ts +15 -0
- package/dist/index-uQOR5bdy.d.ts +20 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.js +1 -1
- package/dist/lib/index.js.map +1 -1
- package/dist/mobile/index.d.ts +13 -12
- package/dist/mobile/index.js +299 -808
- package/dist/mobile/index.js.map +1 -1
- package/dist/mod/button/index.d.ts +1 -1
- package/dist/mod/button/index.js +2 -2
- package/dist/mod/button/index.js.map +1 -1
- package/dist/mod/config/index.d.ts +52 -0
- package/dist/mod/{global → config}/index.js +45 -41
- package/dist/mod/config/index.js.map +1 -0
- package/dist/mod/cover/index.d.ts +1 -1
- package/dist/mod/cover/index.js +3 -3
- package/dist/mod/cover/index.js.map +1 -1
- package/dist/mod/dialog/index.d.ts +1 -1
- package/dist/mod/dialog/index.js +13 -13
- package/dist/mod/dialog/index.js.map +1 -1
- package/dist/mod/drawer/index.d.ts +1 -1
- package/dist/mod/drawer/index.js +8 -8
- package/dist/mod/drawer/index.js.map +1 -1
- package/dist/mod/drop/index.d.ts +1 -1
- package/dist/mod/drop/index.js +15 -15
- package/dist/mod/drop/index.js.map +1 -1
- package/dist/mod/hwlink/index.d.ts +2 -2
- package/dist/mod/hwlink/index.js +44 -656
- package/dist/mod/hwlink/index.js.map +1 -1
- package/dist/mod/index.d.ts +7 -7
- package/dist/mod/index.js +61 -59
- package/dist/mod/index.js.map +1 -1
- package/dist/mod/modal/index.d.ts +1 -1
- package/dist/mod/modal/index.js +12 -12
- package/dist/mod/modal/index.js.map +1 -1
- package/dist/mod/tabs/index.d.ts +1 -1
- package/dist/mod/tabs/index.js +8 -6
- package/dist/mod/tabs/index.js.map +1 -1
- package/dist/page/desktop/index.d.ts +3 -3
- package/dist/page/desktop/index.js +228 -801
- package/dist/page/desktop/index.js.map +1 -1
- package/dist/page/index.d.ts +7 -7
- package/dist/page/index.js +12 -12
- package/dist/page/index.js.map +1 -1
- package/dist/page/mobile/index.d.ts +2 -2
- package/dist/page/mobile/index.js +14 -14
- package/dist/page/mobile/index.js.map +1 -1
- package/dist/worker/hubworker.js +1 -1
- package/dist/worker/hubworker.js.map +1 -1
- package/package.json +6 -6
- package/dist/index-B2HHS23A.d.ts +0 -20
- package/dist/index-BQcJsVJ-.d.ts +0 -10
- package/dist/index-Bf_lg-oZ.d.ts +0 -339
- package/dist/index-ChdqOPJq.d.ts +0 -15
- package/dist/index-CzsSwSvp.d.ts +0 -21
- package/dist/index-D3tu8t6p.d.ts +0 -28
- package/dist/index-DQt71MNx.d.ts +0 -31
- package/dist/index-DZdXvqxA.d.ts +0 -10
- package/dist/index-DcvauYN8.d.ts +0 -14
- package/dist/index-Pd7FTiEW.d.ts +0 -32
- package/dist/index-QRbamarh.d.ts +0 -8
- package/dist/mod/global/index.d.ts +0 -57
- package/dist/mod/global/index.js.map +0 -1
package/dist/mobile/index.js
CHANGED
|
@@ -4,20 +4,136 @@ var __export = (target, all) => {
|
|
|
4
4
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
5
5
|
};
|
|
6
6
|
|
|
7
|
+
// package.json
|
|
8
|
+
var version = "0.2.0";
|
|
9
|
+
|
|
10
|
+
// src/config/global.ts
|
|
11
|
+
var info = () => `sdk ${version}`;
|
|
12
|
+
var init = (params) => {
|
|
13
|
+
if (params?.svcWorker) svcWorker(params.svcWorker);
|
|
14
|
+
if (params?.webNotify) webNotify();
|
|
15
|
+
if (params?.wakeLock) wakeLock();
|
|
16
|
+
if (params?.btnToTop) btnToTop();
|
|
17
|
+
if (params?.hideTabbar) hideTabbar();
|
|
18
|
+
};
|
|
19
|
+
var svcWorker = (worker) => {
|
|
20
|
+
if (!("serviceWorker" in navigator)) return;
|
|
21
|
+
navigator.serviceWorker.register(worker, {
|
|
22
|
+
type: "module"
|
|
23
|
+
}).catch((err) => console.warn(err));
|
|
24
|
+
};
|
|
25
|
+
var webNotify = () => {
|
|
26
|
+
if (!("Notification" in window)) return;
|
|
27
|
+
Notification.requestPermission().catch((err) => console.warn(err));
|
|
28
|
+
};
|
|
29
|
+
var wakeLock = () => {
|
|
30
|
+
if (document.hidden) return;
|
|
31
|
+
navigator.wakeLock.request("screen").catch((err) => console.warn(err));
|
|
32
|
+
};
|
|
33
|
+
var hideTabbar = () => {
|
|
34
|
+
const winHeight = window.innerHeight;
|
|
35
|
+
window.visualViewport?.addEventListener("resize", () => {
|
|
36
|
+
const tabbar = document.querySelector("#tabbar");
|
|
37
|
+
if (!tabbar) return;
|
|
38
|
+
if (winHeight != window.innerHeight) {
|
|
39
|
+
tabbar.classList.add("hide");
|
|
40
|
+
} else {
|
|
41
|
+
tabbar.classList.remove("hide");
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
var app = document.querySelector("#app");
|
|
46
|
+
var btnToTop = () => {
|
|
47
|
+
if (!app) return;
|
|
48
|
+
const totop = document.createElement("div");
|
|
49
|
+
totop.id = "totop";
|
|
50
|
+
totop.innerHTML = /* html */
|
|
51
|
+
`
|
|
52
|
+
<button id="btn-totop" class="circle purple" shadow="true"
|
|
53
|
+
title="\u0E01\u0E25\u0E31\u0E1A\u0E14\u0E49\u0E32\u0E19\u0E1A\u0E19"></button>
|
|
54
|
+
`;
|
|
55
|
+
document.body.appendChild(totop);
|
|
56
|
+
totop.querySelector("#btn-totop").onclick = () => {
|
|
57
|
+
app.scrollTo({ top: 0, behavior: "smooth" });
|
|
58
|
+
};
|
|
59
|
+
app.addEventListener("scroll", () => {
|
|
60
|
+
if (app.scrollTop > 1e3) {
|
|
61
|
+
totop.style.display = "block";
|
|
62
|
+
if (app.classList.contains("tabbar")) {
|
|
63
|
+
app.style.paddingBottom = "116px";
|
|
64
|
+
} else {
|
|
65
|
+
app.style.paddingBottom = "60px";
|
|
66
|
+
}
|
|
67
|
+
} else {
|
|
68
|
+
totop.style.display = "";
|
|
69
|
+
app.style.paddingBottom = "";
|
|
70
|
+
}
|
|
71
|
+
const tabsMobile = app.querySelector(".slim-tabs.mobile .tabs-header");
|
|
72
|
+
if (!tabsMobile) return;
|
|
73
|
+
if (app.scrollTop > 10) {
|
|
74
|
+
tabsMobile.style.boxShadow = `rgba(0, 0, 0, 0.16) 0px 1px 4px`;
|
|
75
|
+
} else {
|
|
76
|
+
tabsMobile.style.boxShadow = "";
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
// src/config/index.ts
|
|
82
|
+
var cfg = {
|
|
83
|
+
UNIX_TIME: 0,
|
|
84
|
+
app: {
|
|
85
|
+
UUID: "",
|
|
86
|
+
NAME: "",
|
|
87
|
+
SECRET: "",
|
|
88
|
+
VERSION: "",
|
|
89
|
+
RELEASE: "",
|
|
90
|
+
CALLBACK: ""
|
|
91
|
+
},
|
|
92
|
+
api: {
|
|
93
|
+
URL: "",
|
|
94
|
+
TOKEN: ""
|
|
95
|
+
},
|
|
96
|
+
hub: {
|
|
97
|
+
LOGIN: "https://wkrh.info/oauth/v1/authorize",
|
|
98
|
+
OAUTH: "https://wkrh.info:8850/oauth/v1",
|
|
99
|
+
API: "https://wkrh.info:8850/api/v1",
|
|
100
|
+
WSS: "wss://wkrh.info:8855/ws",
|
|
101
|
+
UUID: ""
|
|
102
|
+
},
|
|
103
|
+
hwl: {
|
|
104
|
+
HOST: "ws://localhost:8844/ws",
|
|
105
|
+
FILE: "https://wkrh.info/app/hwlink/hwlink_setup.exe"
|
|
106
|
+
},
|
|
107
|
+
user: {
|
|
108
|
+
sub: 0,
|
|
109
|
+
name: "",
|
|
110
|
+
utyp: "",
|
|
111
|
+
unit: "",
|
|
112
|
+
unit_id: 0,
|
|
113
|
+
role_id: 0,
|
|
114
|
+
metadata: {
|
|
115
|
+
emp_type: "",
|
|
116
|
+
emp_level: "",
|
|
117
|
+
position: ""
|
|
118
|
+
},
|
|
119
|
+
picture: ""
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
|
|
7
123
|
// src/page/mobile/index.ts
|
|
8
124
|
var mobile_exports = {};
|
|
9
125
|
__export(mobile_exports, {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
126
|
+
create: () => create,
|
|
127
|
+
error: () => error,
|
|
128
|
+
fullLoad: () => fullLoad,
|
|
129
|
+
inform: () => inform,
|
|
130
|
+
loading: () => loading,
|
|
131
|
+
notFound: () => notFound,
|
|
132
|
+
ready: () => ready
|
|
17
133
|
});
|
|
18
134
|
|
|
19
135
|
// src/page/index.ts
|
|
20
|
-
var
|
|
136
|
+
var app2 = document.querySelector("#app");
|
|
21
137
|
var pageSpin = (
|
|
22
138
|
/*html*/
|
|
23
139
|
`
|
|
@@ -29,26 +145,26 @@ var pageSpin = (
|
|
|
29
145
|
`
|
|
30
146
|
);
|
|
31
147
|
var smallSpin = `<div class="spinner s32"></div>`;
|
|
32
|
-
var
|
|
33
|
-
if (!
|
|
34
|
-
if (!
|
|
148
|
+
var loading = (size = "default") => {
|
|
149
|
+
if (!app2) return;
|
|
150
|
+
if (!app2.querySelector("#page-loader")) {
|
|
35
151
|
const loader = document.createElement("div");
|
|
36
152
|
loader.id = "page-loader";
|
|
37
153
|
loader.className = "overlay center";
|
|
38
154
|
loader.innerHTML = size == "default" ? pageSpin : smallSpin;
|
|
39
|
-
|
|
155
|
+
app2.appendChild(loader);
|
|
40
156
|
}
|
|
41
|
-
const content =
|
|
157
|
+
const content = app2.querySelector("#app-content");
|
|
42
158
|
if (content) content.style.display = "none";
|
|
43
159
|
};
|
|
44
|
-
var
|
|
160
|
+
var ready = (delay = 400) => {
|
|
45
161
|
new Promise((r) => setTimeout(r, delay)).then(() => {
|
|
46
162
|
clearLoader(true);
|
|
47
163
|
});
|
|
48
164
|
};
|
|
49
|
-
var
|
|
165
|
+
var error = (err) => {
|
|
50
166
|
clearLoader(false);
|
|
51
|
-
if (!
|
|
167
|
+
if (!app2) return;
|
|
52
168
|
const box = document.createElement("div");
|
|
53
169
|
box.className = "page-error";
|
|
54
170
|
box.innerHTML = /*html*/
|
|
@@ -57,12 +173,12 @@ var Error2 = (err) => {
|
|
|
57
173
|
<div class="topic">✦ \u0E40\u0E01\u0E34\u0E14\u0E02\u0E49\u0E2D\u0E1C\u0E34\u0E14\u0E1E\u0E25\u0E32\u0E14 ✦</div>
|
|
58
174
|
<div class="text">${err}</div>
|
|
59
175
|
`;
|
|
60
|
-
|
|
176
|
+
app2.prepend(box);
|
|
61
177
|
throw err;
|
|
62
178
|
};
|
|
63
|
-
var
|
|
64
|
-
if (!
|
|
65
|
-
|
|
179
|
+
var notFound = () => {
|
|
180
|
+
if (!app2) return;
|
|
181
|
+
app2.innerHTML = /*html*/
|
|
66
182
|
`
|
|
67
183
|
<div class="page-not-found">
|
|
68
184
|
<h1>4<i class="fas fa-ghost"></i>4</h1>
|
|
@@ -71,11 +187,11 @@ var NotFound = () => {
|
|
|
71
187
|
</div>
|
|
72
188
|
`;
|
|
73
189
|
};
|
|
74
|
-
var
|
|
190
|
+
var fullLoad = () => {
|
|
75
191
|
clearNavbar();
|
|
76
|
-
if (!
|
|
77
|
-
|
|
78
|
-
|
|
192
|
+
if (!app2) return;
|
|
193
|
+
app2.classList.add("full-page");
|
|
194
|
+
app2.innerHTML = /*html*/
|
|
79
195
|
`
|
|
80
196
|
<div class="page-full-load">
|
|
81
197
|
<div class="spinner"></div>
|
|
@@ -83,11 +199,11 @@ var FullLoad = () => {
|
|
|
83
199
|
</div>
|
|
84
200
|
`;
|
|
85
201
|
};
|
|
86
|
-
var
|
|
202
|
+
var inform = (params) => {
|
|
87
203
|
clearNavbar();
|
|
88
|
-
if (!
|
|
89
|
-
|
|
90
|
-
|
|
204
|
+
if (!app2) return;
|
|
205
|
+
app2.classList.add("full-page");
|
|
206
|
+
app2.innerHTML = /*html*/
|
|
91
207
|
`
|
|
92
208
|
<div class="page-inform ${params.color}">
|
|
93
209
|
<div class="icon solid">${params.icon}</div>
|
|
@@ -97,7 +213,7 @@ var Inform = (params) => {
|
|
|
97
213
|
</button>
|
|
98
214
|
</div>
|
|
99
215
|
`;
|
|
100
|
-
const btn =
|
|
216
|
+
const btn = app2.querySelector("button");
|
|
101
217
|
btn.onclick = () => window.location.replace(params.btnUrl);
|
|
102
218
|
};
|
|
103
219
|
var clearNavbar = () => {
|
|
@@ -107,34 +223,34 @@ var clearNavbar = () => {
|
|
|
107
223
|
if (topbar) topbar.remove();
|
|
108
224
|
if (tabbar) tabbar.remove();
|
|
109
225
|
if (sidebar) sidebar.remove();
|
|
110
|
-
if (
|
|
226
|
+
if (app2) app2.className = "";
|
|
111
227
|
};
|
|
112
228
|
var clearLoader = (showContent) => {
|
|
113
|
-
if (!
|
|
114
|
-
const loader =
|
|
229
|
+
if (!app2) return;
|
|
230
|
+
const loader = app2.querySelector("#page-loader");
|
|
115
231
|
if (loader) {
|
|
116
232
|
loader.style.animation = "fade-out 0.4s forwards";
|
|
117
233
|
loader.onanimationend = () => loader.remove();
|
|
118
234
|
}
|
|
119
|
-
const content =
|
|
235
|
+
const content = app2.querySelector("#app-content");
|
|
120
236
|
if (content) content.style.display = showContent ? "block" : "none";
|
|
121
237
|
};
|
|
122
238
|
|
|
123
239
|
// src/page/mobile/index.ts
|
|
124
|
-
var
|
|
125
|
-
var
|
|
126
|
-
if (!
|
|
240
|
+
var app3 = document.querySelector("#app");
|
|
241
|
+
var create = (params) => {
|
|
242
|
+
if (!app3) return;
|
|
127
243
|
const size = params.size ? params.size : "";
|
|
128
244
|
const template = params.template ? params.template : "";
|
|
129
245
|
const content = document.createElement("div");
|
|
130
246
|
content.id = "app-content";
|
|
131
247
|
content.innerHTML = template;
|
|
132
|
-
|
|
248
|
+
app3.appendChild(content);
|
|
133
249
|
if (size == "full") {
|
|
134
250
|
navRemove();
|
|
135
|
-
|
|
251
|
+
app3.classList.add("full-page");
|
|
136
252
|
} else {
|
|
137
|
-
|
|
253
|
+
app3.classList.remove("full-page");
|
|
138
254
|
if (document.querySelector("#topbar")) {
|
|
139
255
|
setTopbar(params);
|
|
140
256
|
} else {
|
|
@@ -182,7 +298,7 @@ var navRemove = () => {
|
|
|
182
298
|
if (topbar) topbar.remove();
|
|
183
299
|
if (tabbar) tabbar.remove();
|
|
184
300
|
if (sidebar) sidebar.remove();
|
|
185
|
-
if (
|
|
301
|
+
if (app3) app3.className = "";
|
|
186
302
|
};
|
|
187
303
|
var setTopbar = (params) => {
|
|
188
304
|
const topbar = document.querySelector("#topbar");
|
|
@@ -205,10 +321,10 @@ var setTopbar = (params) => {
|
|
|
205
321
|
if (!tabbar) return;
|
|
206
322
|
if (params.button?.tab) {
|
|
207
323
|
tabbar.style.display = "block";
|
|
208
|
-
if (
|
|
324
|
+
if (app3) app3.classList.add("tabbar");
|
|
209
325
|
} else {
|
|
210
326
|
tabbar.style.display = "none";
|
|
211
|
-
if (
|
|
327
|
+
if (app3) app3.classList.remove("tabbar");
|
|
212
328
|
}
|
|
213
329
|
tabActive(params.uri);
|
|
214
330
|
};
|
|
@@ -263,120 +379,6 @@ __export(docs_exports, {
|
|
|
263
379
|
changelog: () => changelog,
|
|
264
380
|
privacy: () => privacy
|
|
265
381
|
});
|
|
266
|
-
|
|
267
|
-
// package.json
|
|
268
|
-
var version = "0.1.55";
|
|
269
|
-
|
|
270
|
-
// src/mod/global.ts
|
|
271
|
-
var gbvar = {
|
|
272
|
-
UNIX_TIME: 0,
|
|
273
|
-
app: {
|
|
274
|
-
UUID: "",
|
|
275
|
-
NAME: "",
|
|
276
|
-
VERSION: "",
|
|
277
|
-
RELEASE: ""
|
|
278
|
-
},
|
|
279
|
-
api: {
|
|
280
|
-
URL: "",
|
|
281
|
-
TOKEN: ""
|
|
282
|
-
},
|
|
283
|
-
hub: {
|
|
284
|
-
LOGIN: "https://wkrh.info/oauth/v1/authorize",
|
|
285
|
-
OAUTH: "https://wkrh.info:8850/oauth/v1",
|
|
286
|
-
API: "https://wkrh.info:8850/api/v1",
|
|
287
|
-
WSS: "wss://wkrh.info:8855/ws",
|
|
288
|
-
UUID: ""
|
|
289
|
-
},
|
|
290
|
-
hwl: {
|
|
291
|
-
HOST: "ws://localhost:8844/ws",
|
|
292
|
-
FILE: "https://wkrh.info/app/hwlink/hwlink_setup.exe"
|
|
293
|
-
},
|
|
294
|
-
user: {
|
|
295
|
-
ACCT: 0,
|
|
296
|
-
ACTYPE: 0,
|
|
297
|
-
ACROLE: 0,
|
|
298
|
-
ACNAME: "",
|
|
299
|
-
PICTURE: "",
|
|
300
|
-
AGCY: 0,
|
|
301
|
-
DVSN: 0,
|
|
302
|
-
SECT: 0,
|
|
303
|
-
DEPT: "0,0",
|
|
304
|
-
AGCY_NAME: "",
|
|
305
|
-
DVSN_NAME: "",
|
|
306
|
-
SECT_NAME: ""
|
|
307
|
-
}
|
|
308
|
-
};
|
|
309
|
-
var info = () => `sdk ${version}`;
|
|
310
|
-
var init = (params) => {
|
|
311
|
-
if (params?.svcWorker) svcWorker(params.svcWorker);
|
|
312
|
-
if (params?.webNotify) webNotify();
|
|
313
|
-
if (params?.wakeLock) wakeLock();
|
|
314
|
-
if (params?.btnToTop) btnToTop();
|
|
315
|
-
if (params?.hideTabbar) hideTabbar();
|
|
316
|
-
};
|
|
317
|
-
var svcWorker = (worker) => {
|
|
318
|
-
if (!("serviceWorker" in navigator)) return;
|
|
319
|
-
navigator.serviceWorker.register(worker, {
|
|
320
|
-
type: "module"
|
|
321
|
-
}).catch((err) => console.warn(err));
|
|
322
|
-
};
|
|
323
|
-
var webNotify = () => {
|
|
324
|
-
if (!("Notification" in window)) return;
|
|
325
|
-
Notification.requestPermission().catch((err) => console.warn(err));
|
|
326
|
-
};
|
|
327
|
-
var wakeLock = () => {
|
|
328
|
-
if (document.hidden) return;
|
|
329
|
-
navigator.wakeLock.request("screen").catch((err) => console.warn(err));
|
|
330
|
-
};
|
|
331
|
-
var hideTabbar = () => {
|
|
332
|
-
const winHeight = window.innerHeight;
|
|
333
|
-
window.visualViewport?.addEventListener("resize", () => {
|
|
334
|
-
const tabbar = document.querySelector("#tabbar");
|
|
335
|
-
if (!tabbar) return;
|
|
336
|
-
if (winHeight != window.innerHeight) {
|
|
337
|
-
tabbar.classList.add("hide");
|
|
338
|
-
} else {
|
|
339
|
-
tabbar.classList.remove("hide");
|
|
340
|
-
}
|
|
341
|
-
});
|
|
342
|
-
};
|
|
343
|
-
var app3 = document.querySelector("#app");
|
|
344
|
-
var btnToTop = () => {
|
|
345
|
-
if (!app3) return;
|
|
346
|
-
const totop = document.createElement("div");
|
|
347
|
-
totop.id = "totop";
|
|
348
|
-
totop.innerHTML = /* html */
|
|
349
|
-
`
|
|
350
|
-
<button id="btn-totop" class="circle purple" shadow="true"
|
|
351
|
-
title="\u0E01\u0E25\u0E31\u0E1A\u0E14\u0E49\u0E32\u0E19\u0E1A\u0E19"></button>
|
|
352
|
-
`;
|
|
353
|
-
document.body.appendChild(totop);
|
|
354
|
-
totop.querySelector("#btn-totop").onclick = () => {
|
|
355
|
-
app3.scrollTo({ top: 0, behavior: "smooth" });
|
|
356
|
-
};
|
|
357
|
-
app3.addEventListener("scroll", () => {
|
|
358
|
-
if (app3.scrollTop > 1e3) {
|
|
359
|
-
totop.style.display = "block";
|
|
360
|
-
if (app3.classList.contains("tabbar")) {
|
|
361
|
-
app3.style.paddingBottom = "116px";
|
|
362
|
-
} else {
|
|
363
|
-
app3.style.paddingBottom = "60px";
|
|
364
|
-
}
|
|
365
|
-
} else {
|
|
366
|
-
totop.style.display = "";
|
|
367
|
-
app3.style.paddingBottom = "";
|
|
368
|
-
}
|
|
369
|
-
const tabsMobile = app3.querySelector(".slim-tabs.mobile .tabs-header");
|
|
370
|
-
if (!tabsMobile) return;
|
|
371
|
-
if (app3.scrollTop > 10) {
|
|
372
|
-
tabsMobile.style.boxShadow = `rgba(0, 0, 0, 0.16) 0px 1px 4px`;
|
|
373
|
-
} else {
|
|
374
|
-
tabsMobile.style.boxShadow = "";
|
|
375
|
-
}
|
|
376
|
-
});
|
|
377
|
-
};
|
|
378
|
-
|
|
379
|
-
// src/page/docs.ts
|
|
380
382
|
var privacy = async () => {
|
|
381
383
|
const url = "https://cdn.jsdelivr.net/gh/wkrdev/.github/docs/privacy.md";
|
|
382
384
|
const resp = await fetch(url);
|
|
@@ -385,9 +387,9 @@ var privacy = async () => {
|
|
|
385
387
|
}
|
|
386
388
|
return "";
|
|
387
389
|
};
|
|
388
|
-
var changelog = async (
|
|
389
|
-
const url = `/
|
|
390
|
-
const resp = await fetch(
|
|
390
|
+
var changelog = async (app8 = 1) => {
|
|
391
|
+
const url = `/apps/${app8}/logs`;
|
|
392
|
+
const resp = await fetch(cfg.hub.API + url);
|
|
391
393
|
if (resp.ok) {
|
|
392
394
|
const json = await resp.json();
|
|
393
395
|
return json.data;
|
|
@@ -829,9 +831,9 @@ var getPosition = (params) => new Promise((resolve, reject) => {
|
|
|
829
831
|
});
|
|
830
832
|
} else reject("not support geolocation");
|
|
831
833
|
});
|
|
832
|
-
var watchPosition = (success,
|
|
834
|
+
var watchPosition = (success, error2) => {
|
|
833
835
|
if (navigator.geolocation) {
|
|
834
|
-
return navigator.geolocation.watchPosition(success,
|
|
836
|
+
return navigator.geolocation.watchPosition(success, error2, {
|
|
835
837
|
enableHighAccuracy: true,
|
|
836
838
|
timeout: 5e3,
|
|
837
839
|
maximumAge: 0
|
|
@@ -862,7 +864,7 @@ __export(cookie_exports, {
|
|
|
862
864
|
});
|
|
863
865
|
var setItem = (key, val, exp) => {
|
|
864
866
|
const d = /* @__PURE__ */ new Date();
|
|
865
|
-
d.setTime(d.getTime() +
|
|
867
|
+
d.setTime(d.getTime() + 1e3 * exp);
|
|
866
868
|
const expires = "expires=" + d.toUTCString();
|
|
867
869
|
document.cookie = `${key}=${val};${expires};path=/`;
|
|
868
870
|
};
|
|
@@ -991,9 +993,9 @@ __export(mod_exports, {
|
|
|
991
993
|
// src/mod/built-in/button/index.ts
|
|
992
994
|
var button_exports = {};
|
|
993
995
|
__export(button_exports, {
|
|
994
|
-
|
|
996
|
+
loading: () => loading2
|
|
995
997
|
});
|
|
996
|
-
var
|
|
998
|
+
var loading2 = (btn, state = false) => {
|
|
997
999
|
if (state) {
|
|
998
1000
|
btn.querySelector(".btn-loader")?.remove();
|
|
999
1001
|
btn.style.color = "transparent";
|
|
@@ -1030,10 +1032,10 @@ var fitSize = (elm, delay = 0) => {
|
|
|
1030
1032
|
// src/mod/built-in/cover/index.ts
|
|
1031
1033
|
var cover_exports = {};
|
|
1032
1034
|
__export(cover_exports, {
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
+
acdInit: () => acdInit,
|
|
1036
|
+
loading: () => loading3
|
|
1035
1037
|
});
|
|
1036
|
-
var
|
|
1038
|
+
var loading3 = (cover, state = false, align = "top", hide = true) => {
|
|
1037
1039
|
const inner = cover.querySelectorAll("*");
|
|
1038
1040
|
if (state) {
|
|
1039
1041
|
cover.querySelector(".cover-loader")?.remove();
|
|
@@ -1220,12 +1222,12 @@ var camReady = (cam) => {
|
|
|
1220
1222
|
// src/mod/dialog/index.ts
|
|
1221
1223
|
var dialog_exports = {};
|
|
1222
1224
|
__export(dialog_exports, {
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1225
|
+
alert: () => alert,
|
|
1226
|
+
confirm: () => confirm,
|
|
1227
|
+
toast: () => toast
|
|
1226
1228
|
});
|
|
1227
1229
|
var app4 = document.querySelector("#app");
|
|
1228
|
-
var
|
|
1230
|
+
var confirm = (message, params) => new Promise((resolve) => {
|
|
1229
1231
|
if (!app4) return;
|
|
1230
1232
|
const doc = params && params?.target ? params.target : app4;
|
|
1231
1233
|
const color = params && params?.color ? params.color : "green";
|
|
@@ -1259,7 +1261,7 @@ var Confirm = (message, params) => new Promise((resolve) => {
|
|
|
1259
1261
|
resolve(false);
|
|
1260
1262
|
};
|
|
1261
1263
|
});
|
|
1262
|
-
var
|
|
1264
|
+
var alert = (message, params) => new Promise((resolve) => {
|
|
1263
1265
|
if (!app4) return;
|
|
1264
1266
|
const doc = params && params?.target ? params.target : app4;
|
|
1265
1267
|
const type = params && params?.type ? params.type : "success";
|
|
@@ -1300,7 +1302,7 @@ var Alert = (message, params) => new Promise((resolve) => {
|
|
|
1300
1302
|
resolve();
|
|
1301
1303
|
};
|
|
1302
1304
|
});
|
|
1303
|
-
var
|
|
1305
|
+
var toast = (message, params) => new Promise((resolve) => {
|
|
1304
1306
|
if (!app4) return;
|
|
1305
1307
|
const doc = params && params?.target ? params.target : app4;
|
|
1306
1308
|
const type = params && params?.type ? params.type : "success";
|
|
@@ -1322,20 +1324,20 @@ var Toast = (message, params) => new Promise((resolve) => {
|
|
|
1322
1324
|
color = "blue";
|
|
1323
1325
|
icon = "";
|
|
1324
1326
|
}
|
|
1325
|
-
const
|
|
1326
|
-
|
|
1327
|
-
|
|
1327
|
+
const toast2 = document.createElement("div");
|
|
1328
|
+
toast2.className = `slim-toast ${color}`;
|
|
1329
|
+
toast2.innerHTML = /*html*/
|
|
1328
1330
|
`
|
|
1329
1331
|
<i class="icon">${icon}</i>
|
|
1330
1332
|
<span class="text">${message}</span>
|
|
1331
1333
|
`;
|
|
1332
|
-
doc.appendChild(
|
|
1333
|
-
|
|
1334
|
+
doc.appendChild(toast2);
|
|
1335
|
+
toast2.classList.add("show");
|
|
1334
1336
|
let count = 0;
|
|
1335
|
-
|
|
1337
|
+
toast2.onanimationend = () => {
|
|
1336
1338
|
count++;
|
|
1337
1339
|
if (count == 2) {
|
|
1338
|
-
|
|
1340
|
+
toast2.remove();
|
|
1339
1341
|
resolve();
|
|
1340
1342
|
}
|
|
1341
1343
|
};
|
|
@@ -1344,13 +1346,13 @@ var Toast = (message, params) => new Promise((resolve) => {
|
|
|
1344
1346
|
// src/mod/drawer/index.ts
|
|
1345
1347
|
var drawer_exports = {};
|
|
1346
1348
|
__export(drawer_exports, {
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1349
|
+
close: () => close,
|
|
1350
|
+
create: () => create2,
|
|
1351
|
+
loading: () => loading4,
|
|
1352
|
+
ready: () => ready2
|
|
1351
1353
|
});
|
|
1352
1354
|
var app5 = document.querySelector("#app");
|
|
1353
|
-
var
|
|
1355
|
+
var create2 = (params) => {
|
|
1354
1356
|
const name = params.name ? params.name : "drawer";
|
|
1355
1357
|
const size = params.size ? params.size : "mobile";
|
|
1356
1358
|
const drawer = document.createElement("div");
|
|
@@ -1434,7 +1436,7 @@ var openMobile = (drawer) => {
|
|
|
1434
1436
|
}
|
|
1435
1437
|
};
|
|
1436
1438
|
};
|
|
1437
|
-
var
|
|
1439
|
+
var close = (drawer) => new Promise((resolve) => {
|
|
1438
1440
|
drawer.querySelector("#btn-exit").click();
|
|
1439
1441
|
drawer.addEventListener("animationend", () => resolve());
|
|
1440
1442
|
});
|
|
@@ -1459,13 +1461,13 @@ var destroy = (drawer) => {
|
|
|
1459
1461
|
const dialog = document.querySelectorAll(".slim-dialog");
|
|
1460
1462
|
dialog.forEach((el) => el.remove());
|
|
1461
1463
|
};
|
|
1462
|
-
var
|
|
1464
|
+
var loading4 = (drawer) => {
|
|
1463
1465
|
const body = drawer.querySelector(".drawer-body");
|
|
1464
1466
|
const loader = drawer.querySelector(".loader");
|
|
1465
1467
|
if (body) body.style.display = "none";
|
|
1466
1468
|
if (loader) loader.style.display = "flex";
|
|
1467
1469
|
};
|
|
1468
|
-
var
|
|
1470
|
+
var ready2 = (drawer) => {
|
|
1469
1471
|
const body = drawer.querySelector(".drawer-body");
|
|
1470
1472
|
const loader = drawer.querySelector(".loader");
|
|
1471
1473
|
if (body) body.style.display = "block";
|
|
@@ -1475,32 +1477,32 @@ var Ready2 = (drawer) => {
|
|
|
1475
1477
|
// src/mod/drop/index.ts
|
|
1476
1478
|
var drop_exports = {};
|
|
1477
1479
|
__export(drop_exports, {
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1480
|
+
clear: () => clear2,
|
|
1481
|
+
menu: () => menu,
|
|
1482
|
+
select: () => select,
|
|
1483
|
+
update: () => update
|
|
1482
1484
|
});
|
|
1483
|
-
var
|
|
1485
|
+
var menu = (drop) => {
|
|
1484
1486
|
const dropBtn = drop.querySelector(".drop-btn");
|
|
1485
1487
|
const content = drop.querySelector(".drop-content");
|
|
1486
1488
|
if (!dropBtn || !content) return;
|
|
1487
1489
|
setBtnEvent(dropBtn, content);
|
|
1488
1490
|
};
|
|
1489
|
-
var
|
|
1491
|
+
var select = (drop, icon, callBack) => {
|
|
1490
1492
|
const dropBtn = drop.querySelector(".drop-btn");
|
|
1491
1493
|
const content = drop.querySelector(".drop-content");
|
|
1492
1494
|
if (!dropBtn || !content) return;
|
|
1493
1495
|
setBtnEvent(dropBtn, content);
|
|
1494
|
-
|
|
1496
|
+
update(drop, icon, callBack);
|
|
1495
1497
|
};
|
|
1496
|
-
var
|
|
1497
|
-
const
|
|
1498
|
+
var update = (drop, icon, callBack) => {
|
|
1499
|
+
const select2 = drop.querySelector("select");
|
|
1498
1500
|
const content = drop.querySelector(".drop-content");
|
|
1499
|
-
if (!
|
|
1501
|
+
if (!select2 || !content) return;
|
|
1500
1502
|
let elmIcon = "";
|
|
1501
1503
|
if (icon) elmIcon = `<span style="margin-right: 6px;">${icon}</span>`;
|
|
1502
1504
|
content.innerHTML = "";
|
|
1503
|
-
const option =
|
|
1505
|
+
const option = select2.querySelectorAll("option");
|
|
1504
1506
|
option.forEach((opt) => {
|
|
1505
1507
|
const item = document.createElement("a");
|
|
1506
1508
|
item.innerHTML = `${elmIcon}${opt.text}`;
|
|
@@ -1514,7 +1516,7 @@ var Update = (drop, icon, callBack) => {
|
|
|
1514
1516
|
};
|
|
1515
1517
|
});
|
|
1516
1518
|
const clearSelected = () => {
|
|
1517
|
-
const index =
|
|
1519
|
+
const index = select2.selectedIndex;
|
|
1518
1520
|
const list = content.querySelectorAll("a");
|
|
1519
1521
|
list.forEach((el, i) => {
|
|
1520
1522
|
if (i == index) {
|
|
@@ -1535,7 +1537,7 @@ var setBtnEvent = (btn, content) => {
|
|
|
1535
1537
|
content.style.display = "";
|
|
1536
1538
|
};
|
|
1537
1539
|
} else {
|
|
1538
|
-
|
|
1540
|
+
clear2();
|
|
1539
1541
|
content.style.animation = "fade-in 0.4s forwards";
|
|
1540
1542
|
content.style.display = "block";
|
|
1541
1543
|
content.onanimationend = () => {
|
|
@@ -1544,7 +1546,7 @@ var setBtnEvent = (btn, content) => {
|
|
|
1544
1546
|
}
|
|
1545
1547
|
};
|
|
1546
1548
|
};
|
|
1547
|
-
var
|
|
1549
|
+
var clear2 = () => {
|
|
1548
1550
|
const drop = document.querySelectorAll(".drop-content");
|
|
1549
1551
|
drop.forEach((el) => {
|
|
1550
1552
|
if (el.style.display == "block") {
|
|
@@ -1557,18 +1559,18 @@ var Clear = () => {
|
|
|
1557
1559
|
});
|
|
1558
1560
|
};
|
|
1559
1561
|
window.addEventListener("click", (e) => {
|
|
1560
|
-
if (!e.target.matches(".drop-btn"))
|
|
1562
|
+
if (!e.target.matches(".drop-btn")) clear2();
|
|
1561
1563
|
});
|
|
1562
1564
|
|
|
1563
1565
|
// src/mod/modal/index.ts
|
|
1564
1566
|
var modal_exports = {};
|
|
1565
1567
|
__export(modal_exports, {
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1568
|
+
close: () => close2,
|
|
1569
|
+
create: () => create3,
|
|
1570
|
+
hidden: () => hidden,
|
|
1571
|
+
loading: () => loading5,
|
|
1572
|
+
ready: () => ready3,
|
|
1573
|
+
visible: () => visible
|
|
1572
1574
|
});
|
|
1573
1575
|
var app6 = document.querySelector("#app");
|
|
1574
1576
|
var tmpBtnSave = (
|
|
@@ -1595,7 +1597,7 @@ var tmpBtnClose = (
|
|
|
1595
1597
|
</button>
|
|
1596
1598
|
`
|
|
1597
1599
|
);
|
|
1598
|
-
var
|
|
1600
|
+
var create3 = (params) => {
|
|
1599
1601
|
const icon = params.icon ? params.icon : "";
|
|
1600
1602
|
const title = params.title ? params.title : "Modal Title";
|
|
1601
1603
|
const body = params.body ? params.body : "Modal Body";
|
|
@@ -1662,7 +1664,7 @@ var Create3 = (params) => {
|
|
|
1662
1664
|
if (btnClose) btnClose.onclick = done;
|
|
1663
1665
|
return modal;
|
|
1664
1666
|
};
|
|
1665
|
-
var
|
|
1667
|
+
var close2 = (modal) => new Promise((resolve) => {
|
|
1666
1668
|
modal.querySelector("#btn-exit").click();
|
|
1667
1669
|
const content = modal.querySelector(".content");
|
|
1668
1670
|
content.addEventListener("animationend", () => resolve());
|
|
@@ -1678,34 +1680,36 @@ var destroy2 = (modal) => {
|
|
|
1678
1680
|
}
|
|
1679
1681
|
});
|
|
1680
1682
|
};
|
|
1681
|
-
var
|
|
1683
|
+
var loading5 = (modal) => {
|
|
1682
1684
|
const body = modal.querySelector(".body");
|
|
1683
1685
|
const loader = modal.querySelector(".loader");
|
|
1684
1686
|
if (body) body.style.visibility = "hidden";
|
|
1685
1687
|
if (loader) loader.style.display = "flex";
|
|
1686
1688
|
};
|
|
1687
|
-
var
|
|
1689
|
+
var ready3 = (modal) => {
|
|
1688
1690
|
const body = modal.querySelector(".body");
|
|
1689
1691
|
const loader = modal.querySelector(".loader");
|
|
1690
1692
|
if (body) body.style.visibility = "visible";
|
|
1691
1693
|
if (loader) loader.style.display = "none";
|
|
1692
1694
|
};
|
|
1693
|
-
var
|
|
1695
|
+
var hidden = (modal) => {
|
|
1694
1696
|
modal.style.display = "none";
|
|
1695
1697
|
};
|
|
1696
|
-
var
|
|
1698
|
+
var visible = (modal) => {
|
|
1697
1699
|
modal.style.display = "block";
|
|
1698
1700
|
};
|
|
1699
1701
|
|
|
1700
1702
|
// src/mod/tabs/index.ts
|
|
1701
1703
|
var tabs_exports = {};
|
|
1702
1704
|
__export(tabs_exports, {
|
|
1703
|
-
|
|
1705
|
+
init: () => init2,
|
|
1706
|
+
loading: () => loading6,
|
|
1707
|
+
ready: () => ready4,
|
|
1704
1708
|
setActive: () => setActive
|
|
1705
1709
|
});
|
|
1706
1710
|
var ignore = ["camera", "drawer", "modal"];
|
|
1707
1711
|
var hashIgnore = (hash) => ignore.includes(hash);
|
|
1708
|
-
var
|
|
1712
|
+
var init2 = (tabs, onChange) => {
|
|
1709
1713
|
const tbtn = tabs.querySelectorAll(".tabs-btn");
|
|
1710
1714
|
tbtn.forEach((elm) => {
|
|
1711
1715
|
const dataHash = elm.getAttribute("data-hash");
|
|
@@ -1731,13 +1735,13 @@ var Init = (tabs, onChange) => {
|
|
|
1731
1735
|
elm.classList.remove("active");
|
|
1732
1736
|
}
|
|
1733
1737
|
});
|
|
1734
|
-
|
|
1735
|
-
onChange(index, () =>
|
|
1738
|
+
loading6(tabs, index);
|
|
1739
|
+
onChange(index, () => ready4(tabs, index));
|
|
1736
1740
|
};
|
|
1737
1741
|
tabsChange();
|
|
1738
1742
|
window.onhashchange = tabsChange;
|
|
1739
1743
|
};
|
|
1740
|
-
var
|
|
1744
|
+
var loading6 = (tabs, index) => {
|
|
1741
1745
|
const tbtn = tabs.querySelectorAll(".tabs-btn")[index];
|
|
1742
1746
|
const body = tabs.querySelector(".tabs-body");
|
|
1743
1747
|
const inner = tbtn.querySelectorAll("*");
|
|
@@ -1765,7 +1769,7 @@ var tabsLoading = (tabs, index) => {
|
|
|
1765
1769
|
}
|
|
1766
1770
|
}
|
|
1767
1771
|
};
|
|
1768
|
-
var
|
|
1772
|
+
var ready4 = (tabs, index) => {
|
|
1769
1773
|
const tbtn = tabs.querySelectorAll(".tabs-btn")[index];
|
|
1770
1774
|
const body = tabs.querySelector(".tabs-body");
|
|
1771
1775
|
const inner = tbtn.querySelectorAll("*");
|
|
@@ -1795,10 +1799,10 @@ var setActive = (tbtn, index) => {
|
|
|
1795
1799
|
// src/svchub/oauth/index.ts
|
|
1796
1800
|
var oauth_exports = {};
|
|
1797
1801
|
__export(oauth_exports, {
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
+
authMW: () => authMW,
|
|
1803
|
+
callback: () => callback,
|
|
1804
|
+
login: () => login,
|
|
1805
|
+
logout: () => logout
|
|
1802
1806
|
});
|
|
1803
1807
|
|
|
1804
1808
|
// src/svchub/oauth/template.ts
|
|
@@ -1818,25 +1822,17 @@ var tempLogout = (
|
|
|
1818
1822
|
`
|
|
1819
1823
|
);
|
|
1820
1824
|
|
|
1821
|
-
// src/svchub/api/
|
|
1822
|
-
var
|
|
1823
|
-
__export(
|
|
1824
|
-
|
|
1825
|
-
|
|
1825
|
+
// src/svchub/api/auth/index.ts
|
|
1826
|
+
var auth_exports = {};
|
|
1827
|
+
__export(auth_exports, {
|
|
1828
|
+
getToken: () => getToken,
|
|
1829
|
+
getUserInfo: () => getUserInfo
|
|
1826
1830
|
});
|
|
1827
|
-
var
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
const search = params.search ? params.search : "";
|
|
1833
|
-
if (client) query += `&client=${client}`;
|
|
1834
|
-
if (search) query += `&search=${search}`;
|
|
1835
|
-
}
|
|
1836
|
-
const url = `/agcy/${agcy}/acct/${acct}/access${query}`;
|
|
1837
|
-
fetch(gbvar.hub.API + url, {
|
|
1838
|
-
method: "GET",
|
|
1839
|
-
headers: gbvar.api.HEADERS
|
|
1831
|
+
var getToken = (params) => new Promise((resolve, reject) => {
|
|
1832
|
+
fetch(cfg.hub.OAUTH + "/token", {
|
|
1833
|
+
method: "POST",
|
|
1834
|
+
headers: { "Content-Type": "application/json; charset=utf-8" },
|
|
1835
|
+
body: JSON.stringify(params)
|
|
1840
1836
|
}).then((resp) => {
|
|
1841
1837
|
if (!resp.ok) throw resp;
|
|
1842
1838
|
return resp.json();
|
|
@@ -1844,19 +1840,15 @@ var Read = (agcy, acct, params) => new Promise((resolve, reject) => {
|
|
|
1844
1840
|
resolve(json);
|
|
1845
1841
|
}).catch((err) => reject(err));
|
|
1846
1842
|
});
|
|
1847
|
-
var
|
|
1848
|
-
|
|
1849
|
-
if (
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
device: 0,
|
|
1857
|
-
client: Number(gbvar.app.UUID),
|
|
1858
|
-
screen: screenSize
|
|
1859
|
-
})
|
|
1843
|
+
var getUserInfo = (token) => new Promise((resolve, reject) => {
|
|
1844
|
+
let headers = cfg.api.HEADERS;
|
|
1845
|
+
if (token) headers = new Headers({
|
|
1846
|
+
"Content-Type": "application/json; charset=utf-8",
|
|
1847
|
+
"Authorization": `Bearer ${token}`
|
|
1848
|
+
});
|
|
1849
|
+
fetch(cfg.hub.OAUTH + "/userinfo", {
|
|
1850
|
+
method: "GET",
|
|
1851
|
+
headers
|
|
1860
1852
|
}).then((resp) => {
|
|
1861
1853
|
if (!resp.ok) throw resp;
|
|
1862
1854
|
return resp.json();
|
|
@@ -1867,7 +1859,7 @@ var Create4 = () => new Promise((resolve, reject) => {
|
|
|
1867
1859
|
|
|
1868
1860
|
// src/svchub/oauth/midware.ts
|
|
1869
1861
|
var IGNORE = ["__NOT_FOUND__", "login", "logout", "callback"];
|
|
1870
|
-
var
|
|
1862
|
+
var authMW = async (route, ignore2) => {
|
|
1871
1863
|
ignore2?.forEach((val) => IGNORE.push(val));
|
|
1872
1864
|
if (IGNORE.includes(route)) {
|
|
1873
1865
|
console.log("ignore :", route);
|
|
@@ -1887,36 +1879,32 @@ var Midware = async (route, ignore2) => {
|
|
|
1887
1879
|
} catch {
|
|
1888
1880
|
gotoLogin();
|
|
1889
1881
|
}
|
|
1890
|
-
|
|
1891
|
-
|
|
1882
|
+
cfg.api.TOKEN = token;
|
|
1883
|
+
cfg.api.HEADERS = new Headers({
|
|
1892
1884
|
"Content-Type": "application/json; charset=utf-8",
|
|
1893
|
-
"Authorization": `Bearer ${
|
|
1885
|
+
"Authorization": `Bearer ${cfg.api.TOKEN}`
|
|
1894
1886
|
});
|
|
1895
1887
|
const session = sessionStorage.getItem("ACCESS_SESSION");
|
|
1896
1888
|
if (!session) {
|
|
1897
|
-
await
|
|
1889
|
+
await getUserInfo().then((resp) => {
|
|
1898
1890
|
const data = resp.data;
|
|
1899
|
-
setProfile(data
|
|
1891
|
+
setProfile(data);
|
|
1900
1892
|
sessionStorage.setItem("ACCESS_SESSION", JSON.stringify(data));
|
|
1901
1893
|
}).catch(() => gotoLogin());
|
|
1902
1894
|
} else {
|
|
1903
1895
|
const data = JSON.parse(session);
|
|
1904
|
-
setProfile(data
|
|
1905
|
-
}
|
|
1906
|
-
};
|
|
1907
|
-
var setProfile = (
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
gbvar.user.PICTURE = profile.picture;
|
|
1917
|
-
gbvar.user.AGCY_NAME = profile.agcy_name;
|
|
1918
|
-
gbvar.user.DVSN_NAME = profile.dvsn_name;
|
|
1919
|
-
gbvar.user.SECT_NAME = profile.sect_name;
|
|
1896
|
+
setProfile(data);
|
|
1897
|
+
}
|
|
1898
|
+
};
|
|
1899
|
+
var setProfile = (user) => {
|
|
1900
|
+
cfg.user.sub = user.sub;
|
|
1901
|
+
cfg.user.name = user.name;
|
|
1902
|
+
cfg.user.utyp = user.utyp;
|
|
1903
|
+
cfg.user.unit = user.unit;
|
|
1904
|
+
cfg.user.unit_id = user.unit_id;
|
|
1905
|
+
cfg.user.role_id = user.role_id;
|
|
1906
|
+
cfg.user.picture = user.picture ? user.picture : "";
|
|
1907
|
+
if (user.metadata) cfg.user.metadata = user.metadata;
|
|
1920
1908
|
};
|
|
1921
1909
|
var gotoLogin = () => {
|
|
1922
1910
|
clear();
|
|
@@ -1928,26 +1916,27 @@ var gotoLogin = () => {
|
|
|
1928
1916
|
|
|
1929
1917
|
// src/svchub/oauth/index.ts
|
|
1930
1918
|
var app7 = document.querySelector("#app");
|
|
1931
|
-
var
|
|
1919
|
+
var login = () => {
|
|
1932
1920
|
clearCache();
|
|
1933
1921
|
const state = Math.random().toString(36).slice(-8);
|
|
1934
1922
|
sessionStorage.setItem("OAUTH_STATE", state);
|
|
1935
1923
|
const query = new URLSearchParams({
|
|
1936
1924
|
response_type: "token",
|
|
1937
|
-
client_id:
|
|
1925
|
+
client_id: cfg.app.UUID,
|
|
1926
|
+
redirect_uri: cfg.app.CALLBACK,
|
|
1938
1927
|
state
|
|
1939
1928
|
}).toString();
|
|
1940
|
-
const url = `${
|
|
1929
|
+
const url = `${cfg.hub.LOGIN}?${query}`;
|
|
1941
1930
|
window.location.replace(url);
|
|
1942
1931
|
};
|
|
1943
|
-
var
|
|
1932
|
+
var logout = () => {
|
|
1944
1933
|
clearCache();
|
|
1945
1934
|
if (!app7) return;
|
|
1946
1935
|
app7.innerHTML = tempLogout;
|
|
1947
1936
|
app7.classList.add("full-page");
|
|
1948
1937
|
const content = app7.querySelector("#content");
|
|
1949
1938
|
const loader = app7.querySelector("#loader");
|
|
1950
|
-
new Promise((r) => setTimeout(r,
|
|
1939
|
+
new Promise((r) => setTimeout(r, 400)).then(() => {
|
|
1951
1940
|
content.style.display = "block";
|
|
1952
1941
|
loader.style.display = "none";
|
|
1953
1942
|
});
|
|
@@ -1955,7 +1944,7 @@ var Logout = () => {
|
|
|
1955
1944
|
window.location.replace("/login");
|
|
1956
1945
|
};
|
|
1957
1946
|
};
|
|
1958
|
-
var
|
|
1947
|
+
var callback = () => {
|
|
1959
1948
|
const search = window.location.search;
|
|
1960
1949
|
const query = new URLSearchParams(search);
|
|
1961
1950
|
const state = query.get("state");
|
|
@@ -1982,505 +1971,7 @@ var clearCache = () => {
|
|
|
1982
1971
|
// src/svchub/api/index.ts
|
|
1983
1972
|
var api_exports = {};
|
|
1984
1973
|
__export(api_exports, {
|
|
1985
|
-
|
|
1986
|
-
agcy: () => agcy_exports,
|
|
1987
|
-
dept: () => dept_exports,
|
|
1988
|
-
dvsn: () => dvsn_exports,
|
|
1989
|
-
oauth: () => oauth_exports2,
|
|
1990
|
-
sect: () => sect_exports,
|
|
1991
|
-
stat: () => static_exports
|
|
1992
|
-
});
|
|
1993
|
-
|
|
1994
|
-
// src/svchub/api/static/index.ts
|
|
1995
|
-
var static_exports = {};
|
|
1996
|
-
__export(static_exports, {
|
|
1997
|
-
acrole: () => acrole_exports,
|
|
1998
|
-
actype: () => actype_exports,
|
|
1999
|
-
dvtype: () => dvtype_exports,
|
|
2000
|
-
hmposn: () => hmposn_exports,
|
|
2001
|
-
hmrank: () => hmrank_exports,
|
|
2002
|
-
hmtype: () => hmtype_exports,
|
|
2003
|
-
sctype: () => sctype_exports,
|
|
2004
|
-
vdtype: () => vdtype_exports
|
|
2005
|
-
});
|
|
2006
|
-
|
|
2007
|
-
// src/svchub/api/static/acrole.ts
|
|
2008
|
-
var acrole_exports = {};
|
|
2009
|
-
__export(acrole_exports, {
|
|
2010
|
-
Read: () => Read2,
|
|
2011
|
-
Set: () => Set
|
|
2012
|
-
});
|
|
2013
|
-
var Read2 = () => new Promise((resolve, reject) => {
|
|
2014
|
-
const url = `/stat/acrole`;
|
|
2015
|
-
fetch(gbvar.hub.API + url, {
|
|
2016
|
-
method: "GET",
|
|
2017
|
-
headers: gbvar.api.HEADERS
|
|
2018
|
-
}).then((resp) => {
|
|
2019
|
-
if (!resp.ok) throw resp;
|
|
2020
|
-
return resp.json();
|
|
2021
|
-
}).then((json) => {
|
|
2022
|
-
resolve(json);
|
|
2023
|
-
}).catch((err) => reject(err));
|
|
2024
|
-
});
|
|
2025
|
-
var Set = async (elm) => {
|
|
2026
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2027
|
-
await Read2().then((resp) => {
|
|
2028
|
-
const data = resp.data;
|
|
2029
|
-
for (const val of data) {
|
|
2030
|
-
const opt = document.createElement("option");
|
|
2031
|
-
opt.value = `${val.id}`;
|
|
2032
|
-
opt.text = `${val.name}`;
|
|
2033
|
-
elm.appendChild(opt);
|
|
2034
|
-
}
|
|
2035
|
-
}).catch((err) => console.error(err));
|
|
2036
|
-
};
|
|
2037
|
-
|
|
2038
|
-
// src/svchub/api/static/actype.ts
|
|
2039
|
-
var actype_exports = {};
|
|
2040
|
-
__export(actype_exports, {
|
|
2041
|
-
Read: () => Read3,
|
|
2042
|
-
Set: () => Set2
|
|
2043
|
-
});
|
|
2044
|
-
var Read3 = () => new Promise((resolve, reject) => {
|
|
2045
|
-
const url = `/stat/actype`;
|
|
2046
|
-
fetch(gbvar.hub.API + url, {
|
|
2047
|
-
method: "GET",
|
|
2048
|
-
headers: gbvar.api.HEADERS
|
|
2049
|
-
}).then((resp) => {
|
|
2050
|
-
if (!resp.ok) throw resp;
|
|
2051
|
-
return resp.json();
|
|
2052
|
-
}).then((json) => {
|
|
2053
|
-
resolve(json);
|
|
2054
|
-
}).catch((err) => reject(err));
|
|
2055
|
-
});
|
|
2056
|
-
var Set2 = async (elm) => {
|
|
2057
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2058
|
-
await Read3().then((resp) => {
|
|
2059
|
-
const data = resp.data;
|
|
2060
|
-
for (const val of data) {
|
|
2061
|
-
const opt = document.createElement("option");
|
|
2062
|
-
opt.value = `${val.id}`;
|
|
2063
|
-
opt.text = `${val.name}`;
|
|
2064
|
-
elm.appendChild(opt);
|
|
2065
|
-
}
|
|
2066
|
-
}).catch((err) => console.error(err));
|
|
2067
|
-
};
|
|
2068
|
-
|
|
2069
|
-
// src/svchub/api/static/dvtype.ts
|
|
2070
|
-
var dvtype_exports = {};
|
|
2071
|
-
__export(dvtype_exports, {
|
|
2072
|
-
Read: () => Read4,
|
|
2073
|
-
Set: () => Set3
|
|
2074
|
-
});
|
|
2075
|
-
var Read4 = () => new Promise((resolve, reject) => {
|
|
2076
|
-
const url = `/stat/dvtype`;
|
|
2077
|
-
fetch(gbvar.hub.API + url, {
|
|
2078
|
-
method: "GET",
|
|
2079
|
-
headers: gbvar.api.HEADERS
|
|
2080
|
-
}).then((resp) => {
|
|
2081
|
-
if (!resp.ok) throw resp;
|
|
2082
|
-
return resp.json();
|
|
2083
|
-
}).then((json) => {
|
|
2084
|
-
resolve(json);
|
|
2085
|
-
}).catch((err) => reject(err));
|
|
2086
|
-
});
|
|
2087
|
-
var Set3 = async (elm) => {
|
|
2088
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2089
|
-
await Read4().then((resp) => {
|
|
2090
|
-
const data = resp.data;
|
|
2091
|
-
for (const val of data) {
|
|
2092
|
-
const opt = document.createElement("option");
|
|
2093
|
-
opt.value = `${val.id}`;
|
|
2094
|
-
opt.text = `${val.name}`;
|
|
2095
|
-
elm.appendChild(opt);
|
|
2096
|
-
}
|
|
2097
|
-
}).catch((err) => console.error(err));
|
|
2098
|
-
};
|
|
2099
|
-
|
|
2100
|
-
// src/svchub/api/static/hmtype.ts
|
|
2101
|
-
var hmtype_exports = {};
|
|
2102
|
-
__export(hmtype_exports, {
|
|
2103
|
-
Read: () => Read5,
|
|
2104
|
-
Set: () => Set4
|
|
2105
|
-
});
|
|
2106
|
-
var Read5 = () => new Promise((resolve, reject) => {
|
|
2107
|
-
const url = `/stat/hmtype`;
|
|
2108
|
-
fetch(gbvar.hub.API + url, {
|
|
2109
|
-
method: "GET",
|
|
2110
|
-
headers: gbvar.api.HEADERS
|
|
2111
|
-
}).then((resp) => {
|
|
2112
|
-
if (!resp.ok) throw resp;
|
|
2113
|
-
return resp.json();
|
|
2114
|
-
}).then((json) => {
|
|
2115
|
-
resolve(json);
|
|
2116
|
-
}).catch((err) => reject(err));
|
|
2117
|
-
});
|
|
2118
|
-
var Set4 = async (elm) => {
|
|
2119
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2120
|
-
await Read5().then((resp) => {
|
|
2121
|
-
const data = resp.data;
|
|
2122
|
-
for (const val of data) {
|
|
2123
|
-
const opt = document.createElement("option");
|
|
2124
|
-
opt.value = `${val.id}`;
|
|
2125
|
-
opt.text = `${val.name}`;
|
|
2126
|
-
elm.appendChild(opt);
|
|
2127
|
-
}
|
|
2128
|
-
}).catch((err) => console.error(err));
|
|
2129
|
-
};
|
|
2130
|
-
|
|
2131
|
-
// src/svchub/api/static/hmposn.ts
|
|
2132
|
-
var hmposn_exports = {};
|
|
2133
|
-
__export(hmposn_exports, {
|
|
2134
|
-
Read: () => Read6,
|
|
2135
|
-
Set: () => Set5
|
|
2136
|
-
});
|
|
2137
|
-
var Read6 = () => new Promise((resolve, reject) => {
|
|
2138
|
-
const url = `/stat/hmposn`;
|
|
2139
|
-
fetch(gbvar.hub.API + url, {
|
|
2140
|
-
method: "GET",
|
|
2141
|
-
headers: gbvar.api.HEADERS
|
|
2142
|
-
}).then((resp) => {
|
|
2143
|
-
if (!resp.ok) throw resp;
|
|
2144
|
-
return resp.json();
|
|
2145
|
-
}).then((json) => {
|
|
2146
|
-
resolve(json);
|
|
2147
|
-
}).catch((err) => reject(err));
|
|
2148
|
-
});
|
|
2149
|
-
var Set5 = async (elm) => {
|
|
2150
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2151
|
-
await Read6().then((resp) => {
|
|
2152
|
-
const data = resp.data;
|
|
2153
|
-
for (const val of data) {
|
|
2154
|
-
const opt = document.createElement("option");
|
|
2155
|
-
opt.value = `${val.id}`;
|
|
2156
|
-
opt.text = `${val.name}`;
|
|
2157
|
-
elm.appendChild(opt);
|
|
2158
|
-
}
|
|
2159
|
-
}).catch((err) => console.error(err));
|
|
2160
|
-
};
|
|
2161
|
-
|
|
2162
|
-
// src/svchub/api/static/hmrank.ts
|
|
2163
|
-
var hmrank_exports = {};
|
|
2164
|
-
__export(hmrank_exports, {
|
|
2165
|
-
Read: () => Read7,
|
|
2166
|
-
Set: () => Set6
|
|
2167
|
-
});
|
|
2168
|
-
var Read7 = () => new Promise((resolve, reject) => {
|
|
2169
|
-
const url = `/stat/hmrank`;
|
|
2170
|
-
fetch(gbvar.hub.API + url, {
|
|
2171
|
-
method: "GET",
|
|
2172
|
-
headers: gbvar.api.HEADERS
|
|
2173
|
-
}).then((resp) => {
|
|
2174
|
-
if (!resp.ok) throw resp;
|
|
2175
|
-
return resp.json();
|
|
2176
|
-
}).then((json) => {
|
|
2177
|
-
resolve(json);
|
|
2178
|
-
}).catch((err) => reject(err));
|
|
2179
|
-
});
|
|
2180
|
-
var Set6 = async (elm) => {
|
|
2181
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2182
|
-
await Read7().then((resp) => {
|
|
2183
|
-
const data = resp.data;
|
|
2184
|
-
for (const val of data) {
|
|
2185
|
-
const opt = document.createElement("option");
|
|
2186
|
-
opt.value = `${val.id}`;
|
|
2187
|
-
opt.text = `${val.name}`;
|
|
2188
|
-
elm.appendChild(opt);
|
|
2189
|
-
}
|
|
2190
|
-
}).catch((err) => console.error(err));
|
|
2191
|
-
};
|
|
2192
|
-
|
|
2193
|
-
// src/svchub/api/static/sctype.ts
|
|
2194
|
-
var sctype_exports = {};
|
|
2195
|
-
__export(sctype_exports, {
|
|
2196
|
-
Read: () => Read8,
|
|
2197
|
-
Set: () => Set7
|
|
2198
|
-
});
|
|
2199
|
-
var Read8 = () => new Promise((resolve, reject) => {
|
|
2200
|
-
const url = `/stat/sctype`;
|
|
2201
|
-
fetch(gbvar.hub.API + url, {
|
|
2202
|
-
method: "GET",
|
|
2203
|
-
headers: gbvar.api.HEADERS
|
|
2204
|
-
}).then((resp) => {
|
|
2205
|
-
if (!resp.ok) throw resp;
|
|
2206
|
-
return resp.json();
|
|
2207
|
-
}).then((json) => {
|
|
2208
|
-
resolve(json);
|
|
2209
|
-
}).catch((err) => reject(err));
|
|
2210
|
-
});
|
|
2211
|
-
var Set7 = async (elm) => {
|
|
2212
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2213
|
-
await Read8().then((resp) => {
|
|
2214
|
-
const data = resp.data;
|
|
2215
|
-
for (const val of data) {
|
|
2216
|
-
const opt = document.createElement("option");
|
|
2217
|
-
opt.value = `${val.id}`;
|
|
2218
|
-
opt.text = `${val.name}`;
|
|
2219
|
-
elm.appendChild(opt);
|
|
2220
|
-
}
|
|
2221
|
-
}).catch((err) => console.error(err));
|
|
2222
|
-
};
|
|
2223
|
-
|
|
2224
|
-
// src/svchub/api/static/vdtype.ts
|
|
2225
|
-
var vdtype_exports = {};
|
|
2226
|
-
__export(vdtype_exports, {
|
|
2227
|
-
Read: () => Read9,
|
|
2228
|
-
Set: () => Set8
|
|
2229
|
-
});
|
|
2230
|
-
var Read9 = () => new Promise((resolve, reject) => {
|
|
2231
|
-
const url = `/stat/vdtype`;
|
|
2232
|
-
fetch(gbvar.hub.API + url, {
|
|
2233
|
-
method: "GET",
|
|
2234
|
-
headers: gbvar.api.HEADERS
|
|
2235
|
-
}).then((resp) => {
|
|
2236
|
-
if (!resp.ok) throw resp;
|
|
2237
|
-
return resp.json();
|
|
2238
|
-
}).then((json) => {
|
|
2239
|
-
resolve(json);
|
|
2240
|
-
}).catch((err) => reject(err));
|
|
2241
|
-
});
|
|
2242
|
-
var Set8 = async (elm) => {
|
|
2243
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2244
|
-
await Read9().then((resp) => {
|
|
2245
|
-
const data = resp.data;
|
|
2246
|
-
for (const val of data) {
|
|
2247
|
-
const opt = document.createElement("option");
|
|
2248
|
-
opt.value = `${val.id}`;
|
|
2249
|
-
opt.text = `${val.name}`;
|
|
2250
|
-
elm.appendChild(opt);
|
|
2251
|
-
}
|
|
2252
|
-
}).catch((err) => console.error(err));
|
|
2253
|
-
};
|
|
2254
|
-
|
|
2255
|
-
// src/svchub/api/oauth/index.ts
|
|
2256
|
-
var oauth_exports2 = {};
|
|
2257
|
-
__export(oauth_exports2, {
|
|
2258
|
-
Token: () => Token,
|
|
2259
|
-
UserInfo: () => UserInfo
|
|
2260
|
-
});
|
|
2261
|
-
var Token = (params) => new Promise((resolve, reject) => {
|
|
2262
|
-
fetch(gbvar.hub.OAUTH + "/token", {
|
|
2263
|
-
method: "POST",
|
|
2264
|
-
headers: { "Content-Type": "application/json; charset=utf-8" },
|
|
2265
|
-
body: JSON.stringify(params)
|
|
2266
|
-
}).then((resp) => {
|
|
2267
|
-
if (!resp.ok) throw resp;
|
|
2268
|
-
return resp.json();
|
|
2269
|
-
}).then((json) => {
|
|
2270
|
-
resolve(json);
|
|
2271
|
-
}).catch((err) => reject(err));
|
|
2272
|
-
});
|
|
2273
|
-
var UserInfo = (token) => new Promise((resolve, reject) => {
|
|
2274
|
-
let headers = gbvar.api.HEADERS;
|
|
2275
|
-
if (token) headers = new Headers({
|
|
2276
|
-
"Content-Type": "application/json; charset=utf-8",
|
|
2277
|
-
"Authorization": `Bearer ${token}`
|
|
2278
|
-
});
|
|
2279
|
-
fetch(gbvar.hub.OAUTH + "/userinfo", {
|
|
2280
|
-
method: "GET",
|
|
2281
|
-
headers
|
|
2282
|
-
}).then((resp) => {
|
|
2283
|
-
if (!resp.ok) throw resp;
|
|
2284
|
-
return resp.json();
|
|
2285
|
-
}).then((json) => {
|
|
2286
|
-
resolve(json);
|
|
2287
|
-
}).catch((err) => reject(err));
|
|
2288
|
-
});
|
|
2289
|
-
|
|
2290
|
-
// src/svchub/api/agency/agcy.ts
|
|
2291
|
-
var agcy_exports = {};
|
|
2292
|
-
__export(agcy_exports, {
|
|
2293
|
-
Read: () => Read10,
|
|
2294
|
-
Set: () => Set9
|
|
2295
|
-
});
|
|
2296
|
-
var Read10 = (agcy) => new Promise((resolve, reject) => {
|
|
2297
|
-
let url = `/agcy`;
|
|
2298
|
-
if (agcy) url = `/agcy/${agcy}`;
|
|
2299
|
-
fetch(gbvar.hub.API + url, {
|
|
2300
|
-
method: "GET",
|
|
2301
|
-
headers: gbvar.api.HEADERS
|
|
2302
|
-
}).then((resp) => {
|
|
2303
|
-
if (!resp.ok) throw resp;
|
|
2304
|
-
return resp.json();
|
|
2305
|
-
}).then((json) => {
|
|
2306
|
-
resolve(json);
|
|
2307
|
-
}).catch((err) => reject(err));
|
|
2308
|
-
});
|
|
2309
|
-
var Set9 = async (elm) => {
|
|
2310
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2311
|
-
await Read10().then((resp) => {
|
|
2312
|
-
const data = resp.data;
|
|
2313
|
-
for (const val of data) {
|
|
2314
|
-
const name = val.short ? val.short : val.name;
|
|
2315
|
-
const opt = document.createElement("option");
|
|
2316
|
-
opt.value = `${val.id}`;
|
|
2317
|
-
opt.text = name;
|
|
2318
|
-
elm.appendChild(opt);
|
|
2319
|
-
}
|
|
2320
|
-
}).catch((err) => console.error(err));
|
|
2321
|
-
};
|
|
2322
|
-
|
|
2323
|
-
// src/svchub/api/agency/dvsn.ts
|
|
2324
|
-
var dvsn_exports = {};
|
|
2325
|
-
__export(dvsn_exports, {
|
|
2326
|
-
Read: () => Read11,
|
|
2327
|
-
Set: () => Set10
|
|
2328
|
-
});
|
|
2329
|
-
var Read11 = (agcy, dvsn) => new Promise((resolve, reject) => {
|
|
2330
|
-
let url = `/agcy/${agcy}/dvsn`;
|
|
2331
|
-
if (dvsn) url = `/agcy/${agcy}/dvsn/${dvsn}`;
|
|
2332
|
-
fetch(gbvar.hub.API + url, {
|
|
2333
|
-
method: "GET",
|
|
2334
|
-
headers: gbvar.api.HEADERS
|
|
2335
|
-
}).then((resp) => {
|
|
2336
|
-
if (!resp.ok) throw resp;
|
|
2337
|
-
return resp.json();
|
|
2338
|
-
}).then((json) => {
|
|
2339
|
-
resolve(json);
|
|
2340
|
-
}).catch((err) => reject(err));
|
|
2341
|
-
});
|
|
2342
|
-
var Set10 = async (agcy, elm) => {
|
|
2343
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2344
|
-
await Read11(agcy).then((resp) => {
|
|
2345
|
-
const data = resp.data;
|
|
2346
|
-
for (const val of data) {
|
|
2347
|
-
const name = val.short ? val.short : val.name;
|
|
2348
|
-
const opt = document.createElement("option");
|
|
2349
|
-
opt.value = `${val.id}`;
|
|
2350
|
-
opt.text = name;
|
|
2351
|
-
elm.appendChild(opt);
|
|
2352
|
-
}
|
|
2353
|
-
}).catch((err) => console.error(err));
|
|
2354
|
-
};
|
|
2355
|
-
|
|
2356
|
-
// src/svchub/api/agency/sect.ts
|
|
2357
|
-
var sect_exports = {};
|
|
2358
|
-
__export(sect_exports, {
|
|
2359
|
-
Read: () => Read12,
|
|
2360
|
-
Set: () => Set11
|
|
2361
|
-
});
|
|
2362
|
-
var Read12 = (agcy, dvsn, sect) => new Promise((resolve, reject) => {
|
|
2363
|
-
let url = `/agcy/${agcy}/dvsn/${dvsn}/sect`;
|
|
2364
|
-
if (sect) url = `/agcy/${agcy}/dvsn/${dvsn}/sect/${sect}`;
|
|
2365
|
-
fetch(gbvar.hub.API + url, {
|
|
2366
|
-
method: "GET",
|
|
2367
|
-
headers: gbvar.api.HEADERS
|
|
2368
|
-
}).then((resp) => {
|
|
2369
|
-
if (!resp.ok) throw resp;
|
|
2370
|
-
return resp.json();
|
|
2371
|
-
}).then((json) => {
|
|
2372
|
-
resolve(json);
|
|
2373
|
-
}).catch((err) => reject(err));
|
|
2374
|
-
});
|
|
2375
|
-
var Set11 = async (agcy, dvsn, elm) => {
|
|
2376
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2377
|
-
await Read12(agcy, dvsn).then((resp) => {
|
|
2378
|
-
const data = resp.data;
|
|
2379
|
-
for (const val of data) {
|
|
2380
|
-
const name = val.short ? val.short : val.name;
|
|
2381
|
-
const opt = document.createElement("option");
|
|
2382
|
-
opt.value = `${val.id}`;
|
|
2383
|
-
opt.text = name;
|
|
2384
|
-
elm.appendChild(opt);
|
|
2385
|
-
}
|
|
2386
|
-
}).catch((err) => console.error(err));
|
|
2387
|
-
};
|
|
2388
|
-
|
|
2389
|
-
// src/svchub/api/agency/dept.ts
|
|
2390
|
-
var dept_exports = {};
|
|
2391
|
-
__export(dept_exports, {
|
|
2392
|
-
Read: () => Read13,
|
|
2393
|
-
Set: () => Set12
|
|
2394
|
-
});
|
|
2395
|
-
var Read13 = (agcy) => new Promise((resolve, reject) => {
|
|
2396
|
-
const url = `/agcy/${agcy}/dept`;
|
|
2397
|
-
fetch(gbvar.hub.API + url, {
|
|
2398
|
-
method: "GET",
|
|
2399
|
-
headers: gbvar.api.HEADERS
|
|
2400
|
-
}).then((resp) => {
|
|
2401
|
-
if (!resp.ok) throw resp;
|
|
2402
|
-
return resp.json();
|
|
2403
|
-
}).then((json) => {
|
|
2404
|
-
resolve(json);
|
|
2405
|
-
}).catch((err) => reject(err));
|
|
2406
|
-
});
|
|
2407
|
-
var Set12 = async (agcy, elm) => {
|
|
2408
|
-
elm.innerHTML = '<option value="">- \u0E40\u0E25\u0E37\u0E2D\u0E01 -</option>';
|
|
2409
|
-
await Read13(agcy).then((resp) => {
|
|
2410
|
-
const data = resp.data;
|
|
2411
|
-
for (const val of data) {
|
|
2412
|
-
const opt = document.createElement("option");
|
|
2413
|
-
opt.value = `${val.dvsn},${val.sect}`;
|
|
2414
|
-
if (val.sect == 0) {
|
|
2415
|
-
opt.text = `${val.name}`;
|
|
2416
|
-
opt.style.fontWeight = "600";
|
|
2417
|
-
} else {
|
|
2418
|
-
opt.text = `- ${val.name}`;
|
|
2419
|
-
opt.style.fontStyle = "italic";
|
|
2420
|
-
}
|
|
2421
|
-
elm.appendChild(opt);
|
|
2422
|
-
}
|
|
2423
|
-
}).catch((err) => console.error(err));
|
|
2424
|
-
};
|
|
2425
|
-
|
|
2426
|
-
// src/svchub/api/account/index.ts
|
|
2427
|
-
var account_exports = {};
|
|
2428
|
-
__export(account_exports, {
|
|
2429
|
-
Create: () => Create5,
|
|
2430
|
-
Read: () => Read14,
|
|
2431
|
-
Update: () => Update2,
|
|
2432
|
-
access: () => access_exports
|
|
2433
|
-
});
|
|
2434
|
-
var Read14 = (agcy, acct, params) => new Promise((resolve, reject) => {
|
|
2435
|
-
const status = params && params.status ? params.status : 1;
|
|
2436
|
-
let query = `?status=${status}`;
|
|
2437
|
-
if (params) {
|
|
2438
|
-
const dvsn = params.dvsn ? params.dvsn : 0;
|
|
2439
|
-
const sect = params.sect ? params.sect : 0;
|
|
2440
|
-
const actype = params.actype ? params.actype : 0;
|
|
2441
|
-
const acrole = params.acrole ? params.acrole : 0;
|
|
2442
|
-
if (dvsn) query += `&dvsn=${dvsn}`;
|
|
2443
|
-
if (sect) query += `§=${sect}`;
|
|
2444
|
-
if (actype) query += `&actype=${actype}`;
|
|
2445
|
-
if (acrole) query += `&acrole=${acrole}`;
|
|
2446
|
-
}
|
|
2447
|
-
let url = `/agcy/${agcy}/acct${query}`;
|
|
2448
|
-
if (acct) url = `/agcy/${agcy}/acct/${acct}`;
|
|
2449
|
-
fetch(gbvar.hub.API + url, {
|
|
2450
|
-
method: "GET",
|
|
2451
|
-
headers: gbvar.api.HEADERS
|
|
2452
|
-
}).then((resp) => {
|
|
2453
|
-
if (!resp.ok) throw resp;
|
|
2454
|
-
return resp.json();
|
|
2455
|
-
}).then((json) => {
|
|
2456
|
-
resolve(json);
|
|
2457
|
-
}).catch((err) => reject(err));
|
|
2458
|
-
});
|
|
2459
|
-
var Create5 = (agcy, params) => new Promise((resolve, reject) => {
|
|
2460
|
-
const url = `/agcy/${agcy}/acct`;
|
|
2461
|
-
fetch(gbvar.hub.API + url, {
|
|
2462
|
-
method: "POST",
|
|
2463
|
-
headers: gbvar.api.HEADERS,
|
|
2464
|
-
body: JSON.stringify(params)
|
|
2465
|
-
}).then((resp) => {
|
|
2466
|
-
if (!resp.ok) throw resp;
|
|
2467
|
-
return resp.json();
|
|
2468
|
-
}).then((json) => {
|
|
2469
|
-
resolve(json);
|
|
2470
|
-
}).catch((err) => reject(err));
|
|
2471
|
-
});
|
|
2472
|
-
var Update2 = (agcy, acct, params) => new Promise((resolve, reject) => {
|
|
2473
|
-
const url = `/agcy/${agcy}/acct/${acct}`;
|
|
2474
|
-
fetch(gbvar.hub.API + url, {
|
|
2475
|
-
method: "PUT",
|
|
2476
|
-
headers: gbvar.api.HEADERS,
|
|
2477
|
-
body: JSON.stringify(params)
|
|
2478
|
-
}).then((resp) => {
|
|
2479
|
-
if (!resp.ok) throw resp;
|
|
2480
|
-
return resp.json();
|
|
2481
|
-
}).then((json) => {
|
|
2482
|
-
resolve(json);
|
|
2483
|
-
}).catch((err) => reject(err));
|
|
1974
|
+
auth: () => auth_exports
|
|
2484
1975
|
});
|
|
2485
1976
|
|
|
2486
1977
|
// src/svchub/wss/index.ts
|
|
@@ -2491,25 +1982,25 @@ __export(wss_exports, {
|
|
|
2491
1982
|
});
|
|
2492
1983
|
var newTask = (worker) => {
|
|
2493
1984
|
if (!window.Worker) return;
|
|
2494
|
-
|
|
2495
|
-
|
|
1985
|
+
cfg.hub.TASK = new worker();
|
|
1986
|
+
cfg.hub.TASK.postMessage({
|
|
2496
1987
|
head: "INIT",
|
|
2497
1988
|
data: {
|
|
2498
|
-
url:
|
|
2499
|
-
app:
|
|
2500
|
-
uid:
|
|
2501
|
-
ver:
|
|
1989
|
+
url: cfg.hub.WSS,
|
|
1990
|
+
app: cfg.app.NAME,
|
|
1991
|
+
uid: cfg.app.UUID,
|
|
1992
|
+
ver: cfg.app.VERSION
|
|
2502
1993
|
}
|
|
2503
1994
|
});
|
|
2504
|
-
|
|
1995
|
+
cfg.hub.TASK.addEventListener("message", (e) => {
|
|
2505
1996
|
const json = e.data;
|
|
2506
1997
|
const head = json.head ? json.head : "";
|
|
2507
1998
|
const data = json.data ? json.data : "";
|
|
2508
1999
|
if (head == "ACCEPT") {
|
|
2509
2000
|
rspAccept(data);
|
|
2510
|
-
|
|
2001
|
+
cfg.hub.TASK?.postMessage({
|
|
2511
2002
|
head: "VERIFY",
|
|
2512
|
-
data:
|
|
2003
|
+
data: cfg.api.TOKEN
|
|
2513
2004
|
});
|
|
2514
2005
|
}
|
|
2515
2006
|
if (head == "DISCON") rspDiscon();
|
|
@@ -2522,11 +2013,11 @@ var newTask = (worker) => {
|
|
|
2522
2013
|
};
|
|
2523
2014
|
var checkUpdate = (min = 10) => {
|
|
2524
2015
|
return setInterval(() => {
|
|
2525
|
-
|
|
2016
|
+
cfg.hub.TASK?.postMessage({
|
|
2526
2017
|
head: "LATEST",
|
|
2527
2018
|
data: {
|
|
2528
|
-
app:
|
|
2529
|
-
uid:
|
|
2019
|
+
app: cfg.app.NAME,
|
|
2020
|
+
uid: cfg.app.UUID
|
|
2530
2021
|
}
|
|
2531
2022
|
});
|
|
2532
2023
|
}, 1e3 * 60 * min);
|
|
@@ -2534,30 +2025,30 @@ var checkUpdate = (min = 10) => {
|
|
|
2534
2025
|
var rspBrdMsg = (brd) => {
|
|
2535
2026
|
if (brd.cmd == "LOGS") console.log(brd.msg);
|
|
2536
2027
|
if (brd.cmd == "TIME") setTime(brd.msg);
|
|
2537
|
-
if (brd.cmd == "RESULT" && brd.to ==
|
|
2028
|
+
if (brd.cmd == "RESULT" && brd.to == cfg.hub.UUID) {
|
|
2538
2029
|
console.log(brd.cmd, "From:", brd.from);
|
|
2539
2030
|
console.log(brd.msg);
|
|
2540
2031
|
}
|
|
2541
|
-
if (brd.cmd == "CONRST" && (brd.to ==
|
|
2032
|
+
if (brd.cmd == "CONRST" && (brd.to == cfg.hub.UUID || brd.to == "@all")) {
|
|
2542
2033
|
sessionStorage.clear();
|
|
2543
2034
|
window.location.reload();
|
|
2544
2035
|
}
|
|
2545
|
-
if (brd.cmd == "LOGOUT" && (brd.to ==
|
|
2036
|
+
if (brd.cmd == "LOGOUT" && (brd.to == cfg.hub.UUID || brd.to == "@all")) {
|
|
2546
2037
|
localStorage.clear();
|
|
2547
2038
|
sessionStorage.clear();
|
|
2548
2039
|
window.location.reload();
|
|
2549
2040
|
}
|
|
2550
|
-
if (brd.cmd == "NOTIFY" && (brd.to ==
|
|
2041
|
+
if (brd.cmd == "NOTIFY" && (brd.to == cfg.hub.UUID || brd.to == "@all")) {
|
|
2551
2042
|
brdNotify(brd.msg);
|
|
2552
2043
|
}
|
|
2553
2044
|
if (brd.cmd == "") console.log(brd.msg);
|
|
2554
2045
|
};
|
|
2555
2046
|
var rspAccept = (data) => {
|
|
2556
|
-
|
|
2557
|
-
console.log("hub-uuid:",
|
|
2047
|
+
cfg.hub.UUID = data.uuid ? data.uuid : "";
|
|
2048
|
+
console.log("hub-uuid:", cfg.hub.UUID);
|
|
2558
2049
|
const boxTime = document.querySelector("#topbar #box-time");
|
|
2559
2050
|
if (boxTime) boxTime.classList.remove("offline");
|
|
2560
|
-
|
|
2051
|
+
toast("\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D Server \u0E2A\u0E33\u0E40\u0E23\u0E47\u0E08.!", { type: "success" });
|
|
2561
2052
|
};
|
|
2562
2053
|
var rspDiscon = () => {
|
|
2563
2054
|
const boxTime = document.querySelector("#topbar #box-time");
|
|
@@ -2568,23 +2059,23 @@ var rspDiscon = () => {
|
|
|
2568
2059
|
if (svTime) svTime.innerText = "server";
|
|
2569
2060
|
if (svDate) svDate.innerText = "OFFLINE";
|
|
2570
2061
|
}
|
|
2571
|
-
|
|
2062
|
+
toast("\u0E02\u0E32\u0E14\u0E01\u0E32\u0E23\u0E40\u0E0A\u0E37\u0E48\u0E2D\u0E21\u0E15\u0E48\u0E2D Server.!", { type: "failure" });
|
|
2572
2063
|
};
|
|
2573
2064
|
var rspLatest = (data) => {
|
|
2574
|
-
if (
|
|
2065
|
+
if (cfg.app.UUID == data.appuuid && cfg.app.NAME == data.appname) {
|
|
2575
2066
|
const path = window.location.pathname;
|
|
2576
|
-
if (path != "/changelog" &&
|
|
2067
|
+
if (path != "/changelog" && cfg.app.RELEASE != data.release) {
|
|
2577
2068
|
window.location.replace("/changelog");
|
|
2578
2069
|
}
|
|
2579
2070
|
}
|
|
2580
2071
|
};
|
|
2581
2072
|
var setTime = (data) => {
|
|
2582
2073
|
if (typeof data.unix != "number") return;
|
|
2583
|
-
|
|
2074
|
+
cfg.UNIX_TIME = Number(data.unix);
|
|
2584
2075
|
const svTime = document.querySelector("#topbar #box-time #sv-time");
|
|
2585
2076
|
const svDate = document.querySelector("#topbar #box-time #sv-date");
|
|
2586
2077
|
if (svTime && svDate) {
|
|
2587
|
-
const [date, time] = timeToStr(
|
|
2078
|
+
const [date, time] = timeToStr(cfg.UNIX_TIME).split(" ");
|
|
2588
2079
|
svTime.innerText = time;
|
|
2589
2080
|
svDate.innerText = thaiDate(date, 11);
|
|
2590
2081
|
}
|
|
@@ -2602,8 +2093,8 @@ var brdNotify = (data) => {
|
|
|
2602
2093
|
};
|
|
2603
2094
|
export {
|
|
2604
2095
|
api_exports as apiHub,
|
|
2096
|
+
cfg,
|
|
2605
2097
|
docs_exports as docs,
|
|
2606
|
-
gbvar,
|
|
2607
2098
|
info,
|
|
2608
2099
|
init,
|
|
2609
2100
|
lib_exports as lib,
|