@gameap/frontend 4.1.0-dev1 → 4.1.0-dev10

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.
Files changed (72) hide show
  1. package/dist/AdminClientCertificatesView-Bg8X_Ouc.js +370 -0
  2. package/dist/AdminDaemonTaskListView-DbJp0aqQ.js +316 -0
  3. package/dist/AdminDaemonTaskOutputView-DNCHQfxx.js +87 -0
  4. package/dist/AdminGamesEdit-jco7cBfk.js +473 -0
  5. package/dist/AdminGamesList-CMjsgEpx.js +518 -0
  6. package/dist/AdminModEdit-BlRu_09M.js +529 -0
  7. package/dist/AdminNodeShowView-BHxJkjYJ.js +175 -0
  8. package/dist/AdminNodesCreateView-DihmM46W.js +87 -0
  9. package/dist/AdminNodesEditView-CVACSido.js +65 -0
  10. package/dist/AdminNodesView-CHtiU6dZ.js +167 -0
  11. package/dist/AdminPluginsView-CRjF3BPs.js +984 -0
  12. package/dist/AdminServersCreate-5f8x6eZO.js +342 -0
  13. package/dist/AdminServersEdit-CA7711nJ.js +400 -0
  14. package/dist/AdminServersList-De5ZMEGZ.js +168 -0
  15. package/dist/AdminUsersEditView-DeYo98vi.js +308 -0
  16. package/dist/AdminUsersView-C8fKEhpr.js +446 -0
  17. package/dist/CreateModForm-CqkvVLfN.js +123 -0
  18. package/dist/CreateNodeModal-DOXVtVLQ.js +100 -0
  19. package/dist/DsIpSelector-C676Y19X.js +90 -0
  20. package/dist/EmptyView-Bf6zmQQt.js +9 -0
  21. package/dist/FileManager-DSa9v4Ex.js +5932 -0
  22. package/dist/GameIcon-DaYNlnur.js +87 -0
  23. package/dist/GameModSelector-CQBT8ZLu.js +95 -0
  24. package/dist/InputManyList-DUOtepb8.js +110 -0
  25. package/dist/InputTextList-lPhVIV04.js +63 -0
  26. package/dist/PluginPendingView-DaDaN30Q.js +34 -0
  27. package/dist/ProfileView-Dw2T3X8m.js +295 -0
  28. package/dist/RconConsole-CvxNBv0B.js +74 -0
  29. package/dist/RconPlayers-odUKa0Ps.js +424 -0
  30. package/dist/ServerConsole-B9v2PcWb.js +99 -0
  31. package/dist/ServerControlButton-D_zJbxr6.js +186 -0
  32. package/dist/ServerIdView-_vGQRk7y.js +609 -0
  33. package/dist/ServerSelector-6fCqL3e9.js +52 -0
  34. package/dist/ServerSettings-C6-tkLTH.js +84 -0
  35. package/dist/ServerStatus-CcqB0h1r.js +63 -0
  36. package/dist/ServerTasks-BcaZzvz7.js +857 -0
  37. package/dist/ServersView-S_G_kuGj.js +313 -0
  38. package/dist/SettingsParameters-u3Awy4Vf.js +89 -0
  39. package/dist/SmartPortSelector-BRSQFVqT.js +174 -0
  40. package/dist/TokensView-C1RFJSB5.js +392 -0
  41. package/dist/UpdateNodeForm-BAhzQLt-.js +652 -0
  42. package/dist/UserServerPrivileges-Q2wQMyHi.js +319 -0
  43. package/dist/_createCompounder-CXjx5-CF.js +241 -0
  44. package/dist/camelCase-CSrB2MWj.js +8 -0
  45. package/dist/capitalize-BZSBvd6d.js +40 -0
  46. package/dist/clientCertificates-C0FlDwsb.js +53 -0
  47. package/dist/favicon-32x32.png +0 -0
  48. package/dist/favicon-96x96.png +0 -0
  49. package/dist/favicon.ico +0 -0
  50. package/dist/fonts/gicon.eot +0 -0
  51. package/dist/fonts/gicon.svg +33 -0
  52. package/dist/fonts/gicon.ttf +0 -0
  53. package/dist/fonts/gicon.woff +0 -0
  54. package/dist/fonts/gicon.woff2 +0 -0
  55. package/dist/frontend.css +6 -0
  56. package/dist/gameList-kucszmx0.js +115 -0
  57. package/dist/gameap.svg +3 -0
  58. package/dist/gameap_full.svg +9 -0
  59. package/dist/images/gap_logo_white.png +0 -0
  60. package/dist/images/gap_logo_white_mini.png +0 -0
  61. package/dist/images/gicon.svg +18 -0
  62. package/dist/images/icons/save-white.svg +1 -0
  63. package/dist/images/icons/save.svg +1 -0
  64. package/dist/index-9fvX7FD-.js +3840 -0
  65. package/dist/index.js +1 -0
  66. package/dist/isEmpty-D0Z8Rneq.js +263 -0
  67. package/dist/join-CmlzL0H9.js +7 -0
  68. package/dist/loader-qtG-Lf6M.js +131 -0
  69. package/dist/mockServiceWorker.js +349 -0
  70. package/dist/snakeCase-nnM4dAra.js +7 -0
  71. package/dist/validators-ChBGsKft.js +65 -0
  72. package/package.json +6 -4
@@ -0,0 +1,446 @@
1
+ import { mergeModels as E, ref as y, useModel as W, createElementBlock as T, openBlock as B, normalizeClass as I, createVNode as s, unref as e, withCtx as d, createBlock as H, createCommentVNode as J, createElementVNode as a, toDisplayString as f, computed as M, onMounted as K, Fragment as Q, h as p } from "vue";
2
+ import { b as $, t as l, l as D, _ as U, a as _, f as X, k as Y, e as b, m as Z, n as z } from "./index-9fvX7FD-.js";
3
+ import { defineStore as ee, storeToRefs as le } from "pinia";
4
+ import { NForm as se, NFormItem as w, NInput as h, NSelect as ae, NDataTable as te, NModal as A, NTable as oe } from "naive-ui";
5
+ import { d as re, a as ne, s as ie, b as ue, r as k } from "./validators-ChBGsKft.js";
6
+ const de = ee("userList", {
7
+ state: () => ({
8
+ users: [],
9
+ // This is a counter to keep track of how many API processes are running
10
+ apiProcesses: 0
11
+ }),
12
+ getters: {
13
+ loading: (i) => i.apiProcesses > 0
14
+ },
15
+ actions: {
16
+ async fetchUsers() {
17
+ this.apiProcesses++;
18
+ try {
19
+ const i = await $.get("/api/users/");
20
+ this.users = i.data;
21
+ } catch (i) {
22
+ throw i;
23
+ } finally {
24
+ this.apiProcesses--;
25
+ }
26
+ },
27
+ async createUser(i) {
28
+ this.apiProcesses++;
29
+ try {
30
+ await $.post("/api/users", i);
31
+ } catch (m) {
32
+ throw m;
33
+ } finally {
34
+ this.apiProcesses--;
35
+ }
36
+ },
37
+ async deleteUserById(i) {
38
+ this.apiProcesses++;
39
+ try {
40
+ await $.delete("/api/users/" + i);
41
+ } catch (m) {
42
+ throw m;
43
+ } finally {
44
+ this.apiProcesses--;
45
+ }
46
+ }
47
+ }
48
+ }), me = { class: "flex grid-cols-2 gap-x-4 w-full" }, ce = { class: "hidden lg:inline" }, pe = {
49
+ __name: "CreateUserForm",
50
+ props: /* @__PURE__ */ E({
51
+ loading: {
52
+ type: Boolean,
53
+ required: !1
54
+ }
55
+ }, {
56
+ modelValue: {
57
+ name: "",
58
+ password: "",
59
+ passwordConfirmation: ""
60
+ },
61
+ modelModifiers: {}
62
+ }),
63
+ emits: /* @__PURE__ */ E(["create"], ["update:modelValue"]),
64
+ setup(i, { emit: m }) {
65
+ const c = y({}), o = W(i, "modelValue"), x = {
66
+ login: {
67
+ required: !0,
68
+ validator: k(l("labels.login"))
69
+ },
70
+ email: {
71
+ required: !0,
72
+ validator: k(l("labels.email"))
73
+ },
74
+ name: {
75
+ required: !0,
76
+ validator: k(l("labels.name"))
77
+ },
78
+ password: {
79
+ required: !0,
80
+ validator: ne(
81
+ k(l("labels.password")),
82
+ ue(l("labels.password"), 8),
83
+ ie(
84
+ l("labels.password"),
85
+ l("labels.password_confirmation"),
86
+ () => o.value.passwordConfirmation
87
+ )
88
+ )
89
+ },
90
+ roles: {
91
+ required: !0,
92
+ validator: re(l("labels.roles"))
93
+ }
94
+ }, V = [
95
+ {
96
+ label: "Administrator",
97
+ value: "admin"
98
+ },
99
+ {
100
+ label: "User",
101
+ value: "user"
102
+ }
103
+ ], N = m, S = () => {
104
+ c.value.validate().then(() => {
105
+ N("create");
106
+ });
107
+ };
108
+ return (P, u) => (B(), T("div", {
109
+ class: I(P.$attrs.class)
110
+ }, [
111
+ s(e(se), {
112
+ "label-placement": "top",
113
+ "label-width": "auto",
114
+ ref_key: "formRef",
115
+ ref: c,
116
+ model: o.value,
117
+ rules: x
118
+ }, {
119
+ default: d(() => [
120
+ i.loading ? (B(), H(e(D), { key: 0 })) : J("", !0),
121
+ a("div", {
122
+ class: I(["mb-4", i.loading ? "hidden" : ""])
123
+ }, [
124
+ s(e(w), {
125
+ label: e(l)("labels.login"),
126
+ path: "login"
127
+ }, {
128
+ default: d(() => [
129
+ s(e(h), {
130
+ value: o.value.login,
131
+ "onUpdate:value": u[0] || (u[0] = (n) => o.value.login = n),
132
+ type: "text"
133
+ }, null, 8, ["value"])
134
+ ]),
135
+ _: 1
136
+ }, 8, ["label"]),
137
+ s(e(w), {
138
+ label: e(l)("labels.email"),
139
+ path: "email"
140
+ }, {
141
+ default: d(() => [
142
+ s(e(h), {
143
+ value: o.value.email,
144
+ "onUpdate:value": u[1] || (u[1] = (n) => o.value.email = n),
145
+ type: "text"
146
+ }, null, 8, ["value"])
147
+ ]),
148
+ _: 1
149
+ }, 8, ["label"]),
150
+ s(e(w), {
151
+ label: e(l)("labels.name"),
152
+ path: "name"
153
+ }, {
154
+ default: d(() => [
155
+ s(e(h), {
156
+ value: o.value.name,
157
+ "onUpdate:value": u[2] || (u[2] = (n) => o.value.name = n),
158
+ type: "text"
159
+ }, null, 8, ["value"])
160
+ ]),
161
+ _: 1
162
+ }, 8, ["label"]),
163
+ s(e(w), {
164
+ label: e(l)("labels.roles"),
165
+ path: "roles"
166
+ }, {
167
+ default: d(() => [
168
+ s(e(ae), {
169
+ value: o.value.roles,
170
+ "onUpdate:value": u[3] || (u[3] = (n) => o.value.roles = n),
171
+ multiple: "",
172
+ options: V
173
+ }, null, 8, ["value"])
174
+ ]),
175
+ _: 1
176
+ }, 8, ["label"]),
177
+ s(e(w), {
178
+ label: e(l)("labels.password"),
179
+ path: "password"
180
+ }, {
181
+ default: d(() => [
182
+ a("div", me, [
183
+ s(e(h), {
184
+ value: o.value.password,
185
+ "onUpdate:value": u[4] || (u[4] = (n) => o.value.password = n),
186
+ type: "password",
187
+ "show-password-on": "click",
188
+ "input-props": { autocomplete: "one-time-code" }
189
+ }, null, 8, ["value"]),
190
+ s(e(h), {
191
+ value: o.value.passwordConfirmation,
192
+ "onUpdate:value": u[5] || (u[5] = (n) => o.value.passwordConfirmation = n),
193
+ type: "password",
194
+ "show-password-on": "click",
195
+ "input-props": { autocomplete: "one-time-code" },
196
+ placeholder: e(l)("labels.password_confirmation")
197
+ }, null, 8, ["value", "placeholder"])
198
+ ])
199
+ ]),
200
+ _: 1
201
+ }, 8, ["label"])
202
+ ], 2)
203
+ ]),
204
+ _: 1
205
+ }, 8, ["model"]),
206
+ s(U, {
207
+ color: "green",
208
+ onClick: S
209
+ }, {
210
+ default: d(() => [
211
+ s(e(_), { name: "add-square" }),
212
+ a("span", ce, " " + f(e(l)("main.create")), 1)
213
+ ]),
214
+ _: 1
215
+ })
216
+ ], 2));
217
+ }
218
+ }, he = {
219
+ __name: "AdminUsersView",
220
+ setup(i) {
221
+ const m = de(), c = X(), o = Y(), x = M(() => [
222
+ { route: "/", text: "GameAP", icon: "gicon gicon-gameap" },
223
+ { route: { name: "admin.users.index" }, text: l("users.users") }
224
+ ]), V = () => [
225
+ {
226
+ title: l("users.name"),
227
+ key: "name"
228
+ },
229
+ {
230
+ title: "Email",
231
+ key: "email"
232
+ },
233
+ {
234
+ title: l("main.actions"),
235
+ render(t) {
236
+ return [
237
+ p(U, {
238
+ color: "green",
239
+ size: "small",
240
+ class: "mr-0.5",
241
+ onClick: () => {
242
+ j(t.id);
243
+ }
244
+ }, { default: () => [
245
+ p(_, { name: "view" }),
246
+ p("span", { class: "hidden lg:inline" }, l("main.view"))
247
+ ] }),
248
+ p(U, {
249
+ color: "blue",
250
+ size: "small",
251
+ class: "mr-0.5",
252
+ route: { name: "admin.users.edit", params: { id: t.id } }
253
+ }, { default: () => [
254
+ p(_, { name: "edit" }),
255
+ p("span", { class: "hidden lg:inline" }, l("main.edit"))
256
+ ] }),
257
+ p(U, {
258
+ color: "red",
259
+ size: "small",
260
+ disabled: o.user?.id === t.id,
261
+ text: l("main.delete"),
262
+ onClick: () => {
263
+ L(t.id);
264
+ }
265
+ }, { default: () => [
266
+ p(_, { name: "delete" }),
267
+ p("span", { class: "hidden lg:inline" }, l("main.delete"))
268
+ ] })
269
+ ];
270
+ }
271
+ }
272
+ ], { users: N } = le(m), S = y(V()), P = {
273
+ pageSize: 20
274
+ }, u = M(() => m.loading || c.loading);
275
+ K(() => {
276
+ n();
277
+ });
278
+ const n = () => {
279
+ m.fetchUsers().catch((t) => {
280
+ b(t);
281
+ });
282
+ }, F = M(() => N.value.map((t) => ({
283
+ id: t.id,
284
+ name: t.name,
285
+ email: t.email
286
+ }))), L = (t) => {
287
+ window.$dialog.success({
288
+ title: l("users.delete_confirm_msg"),
289
+ positiveText: l("main.yes"),
290
+ negativeText: l("main.no"),
291
+ closable: !1,
292
+ onPositiveClick: () => {
293
+ R(t);
294
+ },
295
+ onNegativeClick: () => {
296
+ }
297
+ });
298
+ }, R = (t) => {
299
+ if (o.user?.id === t) {
300
+ b(l("users.delete_self_error_msg"));
301
+ return;
302
+ }
303
+ m.deleteUserById(t).then(() => {
304
+ z({
305
+ content: l("users.delete_success_msg"),
306
+ type: "success"
307
+ }, () => {
308
+ n();
309
+ });
310
+ }).catch((r) => {
311
+ b(r);
312
+ });
313
+ }, q = y(!1), j = (t) => {
314
+ c.setUserId(t), c.fetchUser().then(() => {
315
+ q.value = !0;
316
+ }).catch((r) => {
317
+ b(r);
318
+ });
319
+ }, C = y(!1), v = y({
320
+ name: "",
321
+ email: ""
322
+ }), G = () => {
323
+ v.value = {}, C.value = !0;
324
+ }, O = () => {
325
+ const t = {
326
+ login: v.value.login,
327
+ email: v.value.email,
328
+ password: v.value.password,
329
+ name: v.value.name,
330
+ roles: v.value.roles
331
+ };
332
+ m.createUser(t).then(() => {
333
+ z({
334
+ content: l("users.create_success_msg"),
335
+ type: "success"
336
+ }, () => {
337
+ C.value = !1, n();
338
+ });
339
+ }).catch((r) => {
340
+ b(r);
341
+ });
342
+ };
343
+ return (t, r) => (B(), T(Q, null, [
344
+ s(e(Z), { items: x.value }, null, 8, ["items"]),
345
+ s(U, {
346
+ color: "green",
347
+ size: "middle",
348
+ class: "mb-5",
349
+ onClick: r[0] || (r[0] = (g) => G())
350
+ }, {
351
+ default: d(() => [
352
+ s(e(_), {
353
+ name: "add-square",
354
+ class: "mr-0.5"
355
+ }),
356
+ a("span", null, f(e(l)("users.create")), 1)
357
+ ]),
358
+ _: 1
359
+ }),
360
+ s(e(te), {
361
+ ref: "tableRef",
362
+ bordered: !1,
363
+ "single-line": !0,
364
+ columns: S.value,
365
+ data: F.value,
366
+ loading: u.value,
367
+ pagination: P
368
+ }, {
369
+ loading: d(() => [
370
+ s(e(D))
371
+ ]),
372
+ _: 1
373
+ }, 8, ["columns", "data", "loading"]),
374
+ s(e(A), {
375
+ show: q.value,
376
+ "onUpdate:show": r[1] || (r[1] = (g) => q.value = g),
377
+ class: "custom-card",
378
+ preset: "card",
379
+ title: e(l)("users.user"),
380
+ bordered: !1,
381
+ style: { width: "600px" },
382
+ segmented: { content: "soft", footer: "soft" }
383
+ }, {
384
+ default: d(() => [
385
+ s(e(oe), {
386
+ bordered: !1,
387
+ "single-line": !0
388
+ }, {
389
+ default: d(() => [
390
+ a("tbody", null, [
391
+ a("tr", null, [
392
+ a("td", null, [
393
+ a("strong", null, f(e(l)("users.login")) + ":", 1)
394
+ ]),
395
+ a("td", null, f(e(c).user.login), 1)
396
+ ]),
397
+ a("tr", null, [
398
+ r[4] || (r[4] = a("td", null, [
399
+ a("strong", null, "Email:")
400
+ ], -1)),
401
+ a("td", null, f(e(c).user.email), 1)
402
+ ]),
403
+ a("tr", null, [
404
+ a("td", null, [
405
+ a("strong", null, f(e(l)("users.name")) + ":", 1)
406
+ ]),
407
+ a("td", null, f(e(c).user.name), 1)
408
+ ]),
409
+ a("tr", null, [
410
+ a("td", null, [
411
+ a("strong", null, f(e(l)("users.roles")) + ":", 1)
412
+ ]),
413
+ a("td", null, f(e(c).user.roles.join(", ")), 1)
414
+ ])
415
+ ])
416
+ ]),
417
+ _: 1
418
+ })
419
+ ]),
420
+ _: 1
421
+ }, 8, ["show", "title"]),
422
+ s(e(A), {
423
+ show: C.value,
424
+ "onUpdate:show": r[3] || (r[3] = (g) => C.value = g),
425
+ class: "custom-card",
426
+ preset: "card",
427
+ title: e(l)("users.create"),
428
+ bordered: !1,
429
+ style: { width: "600px" },
430
+ segmented: { content: "soft", footer: "soft" }
431
+ }, {
432
+ default: d(() => [
433
+ s(pe, {
434
+ modelValue: v.value,
435
+ "onUpdate:modelValue": r[2] || (r[2] = (g) => v.value = g),
436
+ onCreate: O
437
+ }, null, 8, ["modelValue"])
438
+ ]),
439
+ _: 1
440
+ }, 8, ["show", "title"])
441
+ ], 64));
442
+ }
443
+ };
444
+ export {
445
+ he as default
446
+ };
@@ -0,0 +1,123 @@
1
+ import { mergeModels as x, ref as R, useModel as w, computed as C, createElementBlock as F, openBlock as N, createVNode as t, unref as e, withCtx as m, createElementVNode as V, toDisplayString as k } from "vue";
2
+ import { t as r, _ as L, a as M } from "./index-9fvX7FD-.js";
3
+ import { NForm as S, NFormItem as n, NSelect as h, NInput as u } from "naive-ui";
4
+ import { storeToRefs as q } from "pinia";
5
+ import { r as d } from "./validators-ChBGsKft.js";
6
+ import { u as U } from "./gameList-kucszmx0.js";
7
+ const W = { class: "hidden lg:inline" }, O = {
8
+ __name: "CreateModForm",
9
+ props: {
10
+ modelValue: {
11
+ game: "",
12
+ name: "",
13
+ remoteRepositoryLinux: "",
14
+ remoteRepositoryWindows: ""
15
+ },
16
+ modelModifiers: {}
17
+ },
18
+ emits: /* @__PURE__ */ x(["create"], ["update:modelValue"]),
19
+ setup(p, { emit: v }) {
20
+ const f = U(), i = R({}), a = w(p, "modelValue"), { games: _ } = q(f), b = {
21
+ game: {
22
+ required: !0,
23
+ validator: d(r("labels.game_id"))
24
+ },
25
+ name: {
26
+ required: !0,
27
+ validator: d(r("labels.name"))
28
+ }
29
+ }, c = v, y = () => {
30
+ i.value.validate().then(() => {
31
+ c("create");
32
+ });
33
+ }, g = C(() => {
34
+ let s = [];
35
+ return _.value.forEach((o) => {
36
+ s.push({
37
+ label: o.name,
38
+ value: o.code
39
+ });
40
+ }), s;
41
+ });
42
+ return (s, o) => (N(), F("div", null, [
43
+ t(e(S), {
44
+ "label-placement": "top",
45
+ "label-width": "auto",
46
+ ref_key: "modCreateFormRef",
47
+ ref: i,
48
+ model: a.value,
49
+ rules: b
50
+ }, {
51
+ default: m(() => [
52
+ t(e(n), {
53
+ label: e(r)("labels.game_id"),
54
+ path: "game"
55
+ }, {
56
+ default: m(() => [
57
+ t(e(h), {
58
+ filterable: "",
59
+ value: a.value.game,
60
+ "onUpdate:value": o[0] || (o[0] = (l) => a.value.game = l),
61
+ options: g.value
62
+ }, null, 8, ["value", "options"])
63
+ ]),
64
+ _: 1
65
+ }, 8, ["label"]),
66
+ t(e(n), {
67
+ label: e(r)("labels.name"),
68
+ path: "name"
69
+ }, {
70
+ default: m(() => [
71
+ t(e(u), {
72
+ value: a.value.name,
73
+ "onUpdate:value": o[1] || (o[1] = (l) => a.value.name = l),
74
+ type: "text"
75
+ }, null, 8, ["value"])
76
+ ]),
77
+ _: 1
78
+ }, 8, ["label"]),
79
+ t(e(n), {
80
+ label: e(r)("labels.remote_repository_linux"),
81
+ path: "remoteRepositoryLinux"
82
+ }, {
83
+ default: m(() => [
84
+ t(e(u), {
85
+ value: a.value.remoteRepositoryLinux,
86
+ "onUpdate:value": o[2] || (o[2] = (l) => a.value.remoteRepositoryLinux = l),
87
+ type: "text"
88
+ }, null, 8, ["value"])
89
+ ]),
90
+ _: 1
91
+ }, 8, ["label"]),
92
+ t(e(n), {
93
+ label: e(r)("labels.remote_repository_windows"),
94
+ path: "remoteRepositoryWindows"
95
+ }, {
96
+ default: m(() => [
97
+ t(e(u), {
98
+ value: a.value.remoteRepositoryWindows,
99
+ "onUpdate:value": o[3] || (o[3] = (l) => a.value.remoteRepositoryWindows = l),
100
+ type: "text"
101
+ }, null, 8, ["value"])
102
+ ]),
103
+ _: 1
104
+ }, 8, ["label"])
105
+ ]),
106
+ _: 1
107
+ }, 8, ["model"]),
108
+ t(L, {
109
+ color: "green",
110
+ onClick: y
111
+ }, {
112
+ default: m(() => [
113
+ t(e(M), { name: "add-square" }),
114
+ V("span", W, " " + k(e(r)("main.create")), 1)
115
+ ]),
116
+ _: 1
117
+ })
118
+ ]));
119
+ }
120
+ };
121
+ export {
122
+ O as _
123
+ };
@@ -0,0 +1,100 @@
1
+ import { NModal as f, NCard as x, NTabs as w, NTabPane as b } from "naive-ui";
2
+ import { ref as k, onMounted as v, createBlock as h, openBlock as M, withCtx as t, createVNode as n, unref as s, createElementVNode as d, createTextVNode as m } from "vue";
3
+ import { t as o, a as r } from "./index-9fvX7FD-.js";
4
+ const N = ["innerHTML"], T = ["innerHTML"], H = {
5
+ __name: "CreateNodeModal",
6
+ props: {
7
+ link: "",
8
+ host: "",
9
+ token: ""
10
+ },
11
+ setup(a) {
12
+ const l = k(!1);
13
+ return v(() => {
14
+ l.value = !0;
15
+ }), (g, e) => {
16
+ const i = b, c = w, _ = x, p = f;
17
+ return M(), h(p, {
18
+ class: "create-node-modal",
19
+ show: l.value,
20
+ "onUpdate:show": e[1] || (e[1] = (u) => l.value = u)
21
+ }, {
22
+ "header-extra": t(() => [
23
+ d("button", {
24
+ type: "button",
25
+ class: "btn-close",
26
+ "aria-label": "Close",
27
+ onClick: e[0] || (e[0] = (u) => l.value = !1)
28
+ }, [
29
+ n(s(r), { name: "close" })
30
+ ])
31
+ ]),
32
+ default: t(() => [
33
+ n(_, {
34
+ title: s(o)("dedicated_servers.autosetup_title"),
35
+ style: { "max-width": "800px", "min-height": "500px" },
36
+ bordered: !1,
37
+ size: "huge",
38
+ role: "dialog",
39
+ "aria-modal": "true"
40
+ }, {
41
+ default: t(() => [
42
+ n(c, {
43
+ type: "line",
44
+ class: "flex justify-between",
45
+ animated: ""
46
+ }, {
47
+ default: t(() => [
48
+ n(i, { name: "linux" }, {
49
+ tab: t(() => [
50
+ n(s(r), {
51
+ name: "linux",
52
+ class: "mr-1"
53
+ }),
54
+ e[2] || (e[2] = m("Linux ", -1))
55
+ ]),
56
+ default: t(() => [
57
+ d("div", {
58
+ class: "md:w-full pr-4 pl-4 m-6",
59
+ innerHTML: s(o)("dedicated_servers.autosetup_description_linux", {
60
+ host: a.host,
61
+ token: a.token
62
+ }) + "<code class='curl-link'>curl " + a.link + " | bash --</code><p class='text-center'><small>" + s(o)("dedicated_servers.autosetup_expire_msg") + "</small></p>"
63
+ }, null, 8, N)
64
+ ]),
65
+ _: 1
66
+ }),
67
+ n(i, { name: "windows" }, {
68
+ tab: t(() => [
69
+ n(s(r), {
70
+ name: "windows",
71
+ class: "mr-1"
72
+ }),
73
+ e[3] || (e[3] = m("Windows ", -1))
74
+ ]),
75
+ default: t(() => [
76
+ d("div", {
77
+ class: "md:w-full pr-4 pl-4 m-6",
78
+ innerHTML: s(o)("dedicated_servers.autosetup_description_windows", {
79
+ host: a.host,
80
+ token: a.token
81
+ }) + "<p class='text-center'><small>" + s(o)("dedicated_servers.autosetup_expire_token_msg") + "</small></p>"
82
+ }, null, 8, T)
83
+ ]),
84
+ _: 1
85
+ })
86
+ ]),
87
+ _: 1
88
+ })
89
+ ]),
90
+ _: 1
91
+ }, 8, ["title"])
92
+ ]),
93
+ _: 1
94
+ }, 8, ["show"]);
95
+ };
96
+ }
97
+ };
98
+ export {
99
+ H as default
100
+ };