@gameap/frontend 4.1.0-dev1 → 4.1.0-dev2
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/dist/AdminClientCertificatesView-DQTMJ6LY.js +368 -0
- package/dist/AdminDaemonTaskListView-Bx3e0Miy.js +316 -0
- package/dist/AdminDaemonTaskOutputView-BJtLdoAq.js +87 -0
- package/dist/AdminGamesEdit-hDe3Pr-7.js +470 -0
- package/dist/AdminGamesList-CM1xADCW.js +500 -0
- package/dist/AdminModEdit-DDKd6Vga.js +526 -0
- package/dist/AdminNodeShowView-DMoEY2Cu.js +167 -0
- package/dist/AdminNodesCreateView-BXZDQIJ1.js +85 -0
- package/dist/AdminNodesEditView-xO7-szjJ.js +66 -0
- package/dist/AdminNodesView-ugTPiC4h.js +161 -0
- package/dist/AdminServersCreate-DOygFz_E.js +345 -0
- package/dist/AdminServersEdit-cZX6UGB1.js +400 -0
- package/dist/AdminServersList-CC50WRsv.js +165 -0
- package/dist/AdminUsersEditView-CXpMKFfI.js +305 -0
- package/dist/AdminUsersView-DGuGEHVR.js +443 -0
- package/dist/CreateModForm-CqhcrNFp.js +122 -0
- package/dist/CreateNodeModal-BvbJTKhD.js +93 -0
- package/dist/DsIpSelector-DN9IyT4L.js +90 -0
- package/dist/FileManager-8TWHezyM.js +31882 -0
- package/dist/GameModSelector-DRIaCbGY.js +94 -0
- package/dist/InputManyList-By5xECIK.js +110 -0
- package/dist/InputTextList-Bm2Ofq5J.js +63 -0
- package/dist/PluginPendingView-DHd_yijv.js +31 -0
- package/dist/RconConsole-DH9XeOu3.js +75 -0
- package/dist/RconPlayers-GrvCMJX3.js +420 -0
- package/dist/ServerConsole-BHHnpxJy.js +98 -0
- package/dist/ServerIdView-BfqrYuar.js +577 -0
- package/dist/ServerSelector-QMK1qiXa.js +52 -0
- package/dist/ServerSettings-Cz6C8Dlh.js +84 -0
- package/dist/ServerStatus-DBJW9C6H.js +63 -0
- package/dist/ServerTasks-Bs3iGYY3.js +854 -0
- package/dist/SettingsParameters-DCqhqxHk.js +87 -0
- package/dist/SmartPortSelector-DektJC6p.js +161 -0
- package/dist/UpdateNodeForm-CwirLUIK.js +648 -0
- package/dist/UserServerPrivileges-utyKdh7O.js +318 -0
- package/dist/_commonjsHelpers-C6fGbg64.js +6 -0
- package/dist/_createCompounder-DSupx5mD.js +241 -0
- package/dist/camelCase-WcUYdRB3.js +8 -0
- package/dist/capitalize-DRKkBaYR.js +40 -0
- package/dist/clientCertificates-BsJdUHYw.js +53 -0
- package/dist/favicon-32x32.png +0 -0
- package/dist/favicon-96x96.png +0 -0
- package/dist/favicon.ico +0 -0
- package/dist/fonts/gicon.eot +0 -0
- package/dist/fonts/gicon.svg +33 -0
- package/dist/fonts/gicon.ttf +0 -0
- package/dist/fonts/gicon.woff +0 -0
- package/dist/fonts/gicon.woff2 +0 -0
- package/dist/frontend.css +14 -0
- package/dist/gameList-DpGDCxFE.js +115 -0
- package/dist/images/gap_logo_white.png +0 -0
- package/dist/images/gap_logo_white_mini.png +0 -0
- package/dist/images/gicon.svg +18 -0
- package/dist/images/icons/save-white.svg +1 -0
- package/dist/images/icons/save.svg +1 -0
- package/dist/index-60qEjGuU.js +5371 -0
- package/dist/index.js +1 -0
- package/dist/loader-CrZTMKcy.js +131 -0
- package/dist/mockServiceWorker.js +349 -0
- package/dist/snakeCase-CTCA7tap.js +7 -0
- package/package.json +1 -2
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { createElementBlock as d, openBlock as m, createElementVNode as e, Fragment as f, renderList as h, withDirectives as u, toDisplayString as r, vModelText as c, withModifiers as b, createTextVNode as p } from "vue";
|
|
2
|
+
import { b as v } from "./index-60qEjGuU.js";
|
|
3
|
+
const g = {
|
|
4
|
+
name: "SettingsParameters",
|
|
5
|
+
props: {
|
|
6
|
+
initialItems: Array,
|
|
7
|
+
inputName: String
|
|
8
|
+
},
|
|
9
|
+
data: function() {
|
|
10
|
+
return {
|
|
11
|
+
items: this.initialItems || []
|
|
12
|
+
};
|
|
13
|
+
},
|
|
14
|
+
methods: {
|
|
15
|
+
addItem: function() {
|
|
16
|
+
this.items.push({
|
|
17
|
+
name: "",
|
|
18
|
+
value: ""
|
|
19
|
+
});
|
|
20
|
+
},
|
|
21
|
+
removeItem: function(n) {
|
|
22
|
+
this.items.splice(n, 1);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}, w = { class: "flex flex-col min-w-0 rounded break-words border bg-white border-1 border-stone-300 mb-2" }, _ = { class: "flex-auto p-6" }, x = { class: "mb-3" }, k = ["for"], N = ["name", "id", "onUpdate:modelValue"], y = { class: "mb-3" }, V = ["for"], S = ["name", "id", "onUpdate:modelValue", "rows"], U = ["onClick"], C = { class: "mt-2 text-center" };
|
|
26
|
+
function E(n, t, o, B, D, i) {
|
|
27
|
+
return m(), d("div", null, [
|
|
28
|
+
e("div", w, [
|
|
29
|
+
e("div", _, [
|
|
30
|
+
(m(!0), d(f, null, h(n.items, (l, a) => (m(), d("div", null, [
|
|
31
|
+
e("div", x, [
|
|
32
|
+
e("label", {
|
|
33
|
+
for: o.inputName + "[" + a + "][name]",
|
|
34
|
+
class: "control-label"
|
|
35
|
+
}, r(n.trans("labels.name")), 9, k),
|
|
36
|
+
u(e("input", {
|
|
37
|
+
name: o.inputName + "[" + a + "][name]",
|
|
38
|
+
id: o.inputName + "[" + a + "][name]",
|
|
39
|
+
"onUpdate:modelValue": (s) => l.name = s,
|
|
40
|
+
type: "text",
|
|
41
|
+
class: "block appearance-none w-full py-1 px-2 mb-1 leading-normal bg-white text-stone-800 border border-stone-200 rounded"
|
|
42
|
+
}, null, 8, N), [
|
|
43
|
+
[c, l.name]
|
|
44
|
+
])
|
|
45
|
+
]),
|
|
46
|
+
e("div", y, [
|
|
47
|
+
e("label", {
|
|
48
|
+
for: o.inputName + "[" + a + "][value]",
|
|
49
|
+
class: "control-label"
|
|
50
|
+
}, r(n.trans("labels.the_value")), 9, V),
|
|
51
|
+
u(e("textarea", {
|
|
52
|
+
name: o.inputName + "[" + a + "][value]",
|
|
53
|
+
id: o.inputName + "[" + a + "][value]",
|
|
54
|
+
"onUpdate:modelValue": (s) => l.value = s,
|
|
55
|
+
class: "block appearance-none w-full py-1 px-2 mb-1 leading-normal bg-white text-stone-800 border border-stone-200 rounded",
|
|
56
|
+
rows: (l.value.match(new RegExp(`
|
|
57
|
+
`, "g")) || []).length + 2
|
|
58
|
+
}, " ", 8, S), [
|
|
59
|
+
[c, l.value]
|
|
60
|
+
])
|
|
61
|
+
]),
|
|
62
|
+
e("button", {
|
|
63
|
+
class: "inline-block align-middle text-center select-none border font-normal whitespace-no-wrap rounded no-underline py-1.5 px-2 leading-tight text-xs bg-red-600 text-white hover:bg-red-700",
|
|
64
|
+
onClick: b((s) => i.removeItem(a), ["prevent"])
|
|
65
|
+
}, [
|
|
66
|
+
t[1] || (t[1] = e("i", { class: "fa fa-times" }, null, -1)),
|
|
67
|
+
p(" " + r(n.trans("main.delete")), 1)
|
|
68
|
+
], 8, U),
|
|
69
|
+
t[2] || (t[2] = e("hr", null, null, -1))
|
|
70
|
+
]))), 256)),
|
|
71
|
+
e("div", C, [
|
|
72
|
+
e("button", {
|
|
73
|
+
class: "inline-block align-middle text-center select-none border font-normal whitespace-no-wrap rounded no-underline py-1.5 px-2 leading-tight text-xs bg-lime-500 text-white hover:bg-lime-600",
|
|
74
|
+
onClick: t[0] || (t[0] = b((...l) => i.addItem && i.addItem(...l), ["prevent"]))
|
|
75
|
+
}, [
|
|
76
|
+
t[3] || (t[3] = e("i", { class: "fa fa-plus" }, null, -1)),
|
|
77
|
+
p(" " + r(n.trans("main.add")), 1)
|
|
78
|
+
])
|
|
79
|
+
])
|
|
80
|
+
])
|
|
81
|
+
])
|
|
82
|
+
]);
|
|
83
|
+
}
|
|
84
|
+
const T = /* @__PURE__ */ v(g, [["render", E]]);
|
|
85
|
+
export {
|
|
86
|
+
T as default
|
|
87
|
+
};
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { mergeModels as V, useModel as b, ref as T, onMounted as U, watch as i, createElementBlock as M, openBlock as B, createVNode as s, unref as o, withCtx as p, createCommentVNode as D, createElementVNode as j, toDisplayString as G } from "vue";
|
|
2
|
+
import { storeToRefs as g } from "pinia";
|
|
3
|
+
import { h as Q, q as A, u as L, t as P } from "./index-60qEjGuU.js";
|
|
4
|
+
import { NFormItem as q, NInputNumber as I } from "naive-ui";
|
|
5
|
+
const W = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "help-block"
|
|
8
|
+
}, X = {
|
|
9
|
+
__name: "SmartPortSelector",
|
|
10
|
+
props: /* @__PURE__ */ V({
|
|
11
|
+
initialServerIp: String,
|
|
12
|
+
initialServerPort: String,
|
|
13
|
+
initialQueryPort: String,
|
|
14
|
+
initialRconPort: String,
|
|
15
|
+
game: String,
|
|
16
|
+
serverPortPath: { type: String, default: "serverPort" },
|
|
17
|
+
rconPortPath: { type: String, default: "rconPort" },
|
|
18
|
+
queryPortPath: { type: String, default: "queryPort" }
|
|
19
|
+
}, {
|
|
20
|
+
serverPort: {},
|
|
21
|
+
serverPortModifiers: {},
|
|
22
|
+
queryPort: {},
|
|
23
|
+
queryPortModifiers: {},
|
|
24
|
+
rconPort: {},
|
|
25
|
+
rconPortModifiers: {}
|
|
26
|
+
}),
|
|
27
|
+
emits: /* @__PURE__ */ V(["update:serverPort", "update:rconPort", "update:queryPort"], ["update:serverPort", "update:queryPort", "update:rconPort"]),
|
|
28
|
+
setup(u, { emit: O }) {
|
|
29
|
+
const f = {
|
|
30
|
+
arma2: 2302,
|
|
31
|
+
arma2ao: 2302,
|
|
32
|
+
arma3: 2302,
|
|
33
|
+
cod4: 28960,
|
|
34
|
+
mta: 22003,
|
|
35
|
+
samp: 7777,
|
|
36
|
+
hurtworld: 12871,
|
|
37
|
+
justcause: 7777,
|
|
38
|
+
fivem: 30120,
|
|
39
|
+
ark: 7777,
|
|
40
|
+
rust: 28015,
|
|
41
|
+
minecraft: 25565,
|
|
42
|
+
rok: 7350,
|
|
43
|
+
teamspeak3: 9987,
|
|
44
|
+
default: 27015
|
|
45
|
+
}, k = {
|
|
46
|
+
arma2: [0, 0],
|
|
47
|
+
arma2ao: [0, 0],
|
|
48
|
+
arma3: [0, 0],
|
|
49
|
+
cod4: [0, 0],
|
|
50
|
+
mta: [0, 2],
|
|
51
|
+
samp: [0, 0],
|
|
52
|
+
hurtworld: [10, 0],
|
|
53
|
+
justcause: [0, 0],
|
|
54
|
+
fivem: [0, 0],
|
|
55
|
+
ark: [0, 0],
|
|
56
|
+
rust: [0, 1],
|
|
57
|
+
minecraft: [0, 1],
|
|
58
|
+
rok: [0, 0],
|
|
59
|
+
teamspeak3: [24, 35],
|
|
60
|
+
default: [0, 0]
|
|
61
|
+
}, a = u, y = O, S = Q(), R = A(), _ = L(), { nodeId: E, busyPorts: w } = g(S), { gameCode: h } = g(R), { formIp: v } = g(_), t = b(u, "serverPort"), l = b(u, "queryPort"), n = b(u, "rconPort"), d = T("");
|
|
62
|
+
function x() {
|
|
63
|
+
if (a.initialServerIp === v.value) {
|
|
64
|
+
t.value = parseInt(a.initialServerPort) || 27015, l.value = parseInt(a.initialQueryPort) || 27015, n.value = parseInt(a.initialRconPort) || 27015;
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
const e = N();
|
|
68
|
+
let r = -1;
|
|
69
|
+
do
|
|
70
|
+
r++, t.value = f[e] + r;
|
|
71
|
+
while (C(v.value, f[e] + r));
|
|
72
|
+
}
|
|
73
|
+
function F() {
|
|
74
|
+
const e = N();
|
|
75
|
+
l.value = t.value + k[e][0], n.value = t.value + k[e][1];
|
|
76
|
+
}
|
|
77
|
+
function N() {
|
|
78
|
+
return f.hasOwnProperty(h.value) ? h.value : "default";
|
|
79
|
+
}
|
|
80
|
+
function C(e, r) {
|
|
81
|
+
return typeof a.initialServerIp < "u" && typeof a.initialServerPort < "u" && e === a.initialServerIp && r === a.initialServerPort ? !1 : w.value.hasOwnProperty(e) && w.value[e].indexOf(r) !== -1;
|
|
82
|
+
}
|
|
83
|
+
function c() {
|
|
84
|
+
v.value === a.initialServerIp && t.value === a.initialServerPort && (d.value = ""), C(v.value, t.value) ? d.value = P("validation.unique", { attribute: P("labels.server_port") }) : d.value = "";
|
|
85
|
+
}
|
|
86
|
+
return U(() => {
|
|
87
|
+
S.fetchBusyPorts(c);
|
|
88
|
+
}), i(E, () => {
|
|
89
|
+
S.fetchBusyPorts(c);
|
|
90
|
+
}), i(t, (e, r) => {
|
|
91
|
+
t.value = Number(t.value), F(), c(), y("update:serverPort", t.value);
|
|
92
|
+
}), i(n, (e) => {
|
|
93
|
+
y("update:rconPort", n.value);
|
|
94
|
+
}), i(l, (e) => {
|
|
95
|
+
y("update:queryPort", l.value);
|
|
96
|
+
}), i(v, (e, r) => {
|
|
97
|
+
e && x(), c();
|
|
98
|
+
}), i(h, () => {
|
|
99
|
+
x();
|
|
100
|
+
}), (e, r) => (B(), M("div", null, [
|
|
101
|
+
s(o(q), {
|
|
102
|
+
label: o(P)("labels.server_port"),
|
|
103
|
+
path: u.serverPortPath
|
|
104
|
+
}, {
|
|
105
|
+
feedback: p(() => [
|
|
106
|
+
d.value ? (B(), M("span", W, [
|
|
107
|
+
j("strong", null, G(d.value), 1)
|
|
108
|
+
])) : D("", !0)
|
|
109
|
+
]),
|
|
110
|
+
default: p(() => [
|
|
111
|
+
s(o(I), {
|
|
112
|
+
name: "server_port",
|
|
113
|
+
id: "server_port",
|
|
114
|
+
min: 1024,
|
|
115
|
+
max: 65535,
|
|
116
|
+
value: t.value,
|
|
117
|
+
"onUpdate:value": r[0] || (r[0] = (m) => t.value = m)
|
|
118
|
+
}, null, 8, ["value"])
|
|
119
|
+
]),
|
|
120
|
+
_: 1
|
|
121
|
+
}, 8, ["label", "path"]),
|
|
122
|
+
s(o(q), {
|
|
123
|
+
label: o(P)("labels.query_port"),
|
|
124
|
+
path: u.queryPortPath
|
|
125
|
+
}, {
|
|
126
|
+
default: p(() => [
|
|
127
|
+
s(o(I), {
|
|
128
|
+
name: "query_port",
|
|
129
|
+
type: "number",
|
|
130
|
+
id: "server_port",
|
|
131
|
+
min: 1024,
|
|
132
|
+
max: 65535,
|
|
133
|
+
value: l.value,
|
|
134
|
+
"onUpdate:value": r[1] || (r[1] = (m) => l.value = m)
|
|
135
|
+
}, null, 8, ["value"])
|
|
136
|
+
]),
|
|
137
|
+
_: 1
|
|
138
|
+
}, 8, ["label", "path"]),
|
|
139
|
+
s(o(q), {
|
|
140
|
+
label: o(P)("labels.rcon_port"),
|
|
141
|
+
path: u.rconPortPath
|
|
142
|
+
}, {
|
|
143
|
+
default: p(() => [
|
|
144
|
+
s(o(I), {
|
|
145
|
+
name: "rcon_port",
|
|
146
|
+
type: "number",
|
|
147
|
+
id: "server_port",
|
|
148
|
+
min: 1024,
|
|
149
|
+
max: 65535,
|
|
150
|
+
value: n.value,
|
|
151
|
+
"onUpdate:value": r[2] || (r[2] = (m) => n.value = m)
|
|
152
|
+
}, null, 8, ["value"])
|
|
153
|
+
]),
|
|
154
|
+
_: 1
|
|
155
|
+
}, 8, ["label", "path"])
|
|
156
|
+
]));
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
export {
|
|
160
|
+
X as default
|
|
161
|
+
};
|