Progress on improved permissions

This commit is contained in:
Dennis Smink
2020-09-24 11:49:00 +02:00
parent 2652e7ed71
commit 7347356646
12 changed files with 2549 additions and 1629 deletions

View File

@@ -0,0 +1,44 @@
<?php
namespace App\Casts;
use Illuminate\Contracts\Database\Eloquent\CastsAttributes;
class PermissionCast implements CastsAttributes
{
/**
* Cast the given value.
*
* @param \Illuminate\Database\Eloquent\Model $model
* @param string $key
* @param mixed $value
* @param array $attributes
* @return mixed
*/
public function get($model, $key, $value, $attributes)
{
if (!$value) {
return [
'create' => false,
'update' => false,
'delete' => false,
];
}
return json_decode($value);
}
/**
* Prepare the given value for storage.
*
* @param \Illuminate\Database\Eloquent\Model $model
* @param string $key
* @param array $value
* @param array $attributes
* @return mixed
*/
public function set($model, $key, $value, $attributes)
{
return json_encode($value);
}
}

View File

@@ -34,9 +34,16 @@ class PackageRequest extends FormRequest
'numeric',
'min:0',
],
'server_creation' => [
'maximum_servers' => [
'required',
'boolean'
'numeric',
'min:0',
],
'server_permissions' => [
'array'
],
'site_permissions' => [
'array'
]
];
}

View File

@@ -2,6 +2,7 @@
namespace App\Models;
use App\Casts\PermissionCast;
use Illuminate\Database\Eloquent\Model;
class Package extends Model
@@ -10,11 +11,13 @@ class Package extends Model
'name',
'maximum_sites',
'maximum_servers',
'server_creation'
'site_permissions',
'server_permissions'
];
public $casts = [
'server_creation' => 'boolean'
'site_permissions' => PermissionCast::class,
'server_permissions' => PermissionCast::class,
];
public function users()

View File

@@ -4,6 +4,7 @@ namespace App\Policies;
use App\Models\User;
use Illuminate\Auth\Access\HandlesAuthorization;
use Illuminate\Support\Arr;
class ServerPolicy
{
@@ -17,6 +18,6 @@ class ServerPolicy
*/
public function create(User $user)
{
return $user->package->server_creation ?? false;
return Arr::get($user->package->server_permissions, 'create', false);
}
}

View File

@@ -0,0 +1,23 @@
<?php
namespace App\Policies;
use App\Models\User;
use Illuminate\Auth\Access\HandlesAuthorization;
use Illuminate\Support\Arr;
class SitePolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can create models.
*
* @param \App\Models\User $user
* @return mixed
*/
public function create(User $user)
{
return Arr::get($user->package->site_permissions, 'create', false);
}
}

View File

@@ -0,0 +1,33 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AddPermissionsToPackagesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('packages', function (Blueprint $table) {
$table->json('server_permissions')->nullable()->after('maximum_servers');
$table->json('site_permissions')->nullable()->after('server_permissions');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('packages', function (Blueprint $table) {
$table->dropColumn('server_permissions', 'site_permissions');
});
}
}

959
public/js/11.js vendored
View File

@@ -79,6 +79,56 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
@@ -129,12 +179,16 @@ __webpack_require__.r(__webpack_exports__);
Tabs: _Tabs__WEBPACK_IMPORTED_MODULE_20__["default"]
},
data: function data() {
var _this$package$server_, _this$package$site_pe;
return {
sending: false,
form: {
name: this["package"].name,
maximum_sites: this["package"].maximum_sites,
server_creation: this["package"].server_creation
maximum_servers: this["package"].maximum_servers,
server_permissions: (_this$package$server_ = this["package"].server_permissions) !== null && _this$package$server_ !== void 0 ? _this$package$server_ : [],
site_permissions: (_this$package$site_pe = this["package"].site_permissions) !== null && _this$package$site_pe !== void 0 ? _this$package$site_pe : []
}
};
},
@@ -534,112 +588,815 @@ var render = function() {
}
}),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
_c("FormInput", {
attrs: {
label: _vm.__("Maximum servers"),
type: "number",
min: "0",
errors:
_vm.$page.errors.maximum_servers
},
model: {
value: _vm.form.maximum_servers,
callback: function($$v) {
_vm.$set(
_vm.form,
"maximum_servers",
$$v
)
},
expression: "form.maximum_servers"
}
}),
_vm._v(" "),
_c(
"div",
{ staticClass: "space-y-2" },
[
_c(
"h3",
{
name: "model",
rawName: "v-model",
value:
_vm.form.server_creation,
expression:
"form.server_creation"
}
],
staticClass: "form-checkbox",
attrs: {
id: "server_creation",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form.server_creation
)
? _vm._i(
_vm.form.server_creation,
null
) > -1
: _vm.form.server_creation
},
on: {
change: function($event) {
var $$a =
_vm.form.server_creation,
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form,
"server_creation",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form,
"server_creation",
$$a
.slice(0, $$i)
.concat(
$$a.slice($$i + 1)
)
)
staticClass:
"text-base leading-6 font-medium border-b border-dotted border-medium-emphasis pb-1"
},
[_vm._v("Server permissions")]
),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.server_permissions[
"create"
],
expression:
"form.server_permissions['create']"
}
} else {
_vm.$set(
_vm.form,
"server_creation",
$$c
],
staticClass: "form-checkbox",
attrs: {
id: "server_create",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form
.server_permissions[
"create"
]
)
? _vm._i(
_vm.form
.server_permissions[
"create"
],
null
) > -1
: _vm.form
.server_permissions[
"create"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.server_permissions[
"create"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.server_permissions,
"create",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.server_permissions,
"create",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.server_permissions,
"create",
$$c
)
}
}
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "server_creation"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow server creation"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to create servers"
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "server_create"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow server creation"
)
)
) +
"\n "
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to create servers"
)
) +
"\n "
)
]
)
]
)
]),
]),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.server_permissions[
"update"
],
expression:
"form.server_permissions['update']"
}
],
staticClass: "form-checkbox",
attrs: {
id: "server_update",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form
.server_permissions[
"update"
]
)
? _vm._i(
_vm.form
.server_permissions[
"update"
],
null
) > -1
: _vm.form
.server_permissions[
"update"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.server_permissions[
"update"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.server_permissions,
"update",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.server_permissions,
"update",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.server_permissions,
"update",
$$c
)
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "server_update"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow server updating"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to update servers"
)
) +
"\n "
)
]
)
]),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.server_permissions[
"delete"
],
expression:
"form.server_permissions['delete']"
}
],
staticClass: "form-checkbox",
attrs: {
id: "server_delete",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form
.server_permissions[
"delete"
]
)
? _vm._i(
_vm.form
.server_permissions[
"delete"
],
null
) > -1
: _vm.form
.server_permissions[
"delete"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.server_permissions[
"delete"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.server_permissions,
"delete",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.server_permissions,
"delete",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.server_permissions,
"delete",
$$c
)
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "server_delete"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow server deletion"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to delete servers"
)
) +
"\n "
)
]
)
])
]
),
_vm._v(" "),
_c(
"div",
{ staticClass: "space-y-2" },
[
_c(
"h3",
{
staticClass:
"text-base leading-6 font-medium border-b border-dotted border-medium-emphasis pb-1"
},
[_vm._v("Site permissions")]
),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.site_permissions[
"create"
],
expression:
"form.site_permissions['create']"
}
],
staticClass: "form-checkbox",
attrs: {
id: "site_create",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form.site_permissions[
"create"
]
)
? _vm._i(
_vm.form
.site_permissions[
"create"
],
null
) > -1
: _vm.form
.site_permissions[
"create"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.site_permissions[
"create"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.site_permissions,
"create",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.site_permissions,
"create",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.site_permissions,
"create",
$$c
)
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "site_create"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow site creation"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to create servers"
)
) +
"\n "
)
]
)
]),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.site_permissions[
"update"
],
expression:
"form.site_permissions['update']"
}
],
staticClass: "form-checkbox",
attrs: {
id: "site_update",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form.site_permissions[
"update"
]
)
? _vm._i(
_vm.form
.site_permissions[
"update"
],
null
) > -1
: _vm.form
.site_permissions[
"update"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.site_permissions[
"update"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.site_permissions,
"update",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.site_permissions,
"update",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.site_permissions,
"update",
$$c
)
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "site_update"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow site updating"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to update servers"
)
) +
"\n "
)
]
)
]),
_vm._v(" "),
_c("div", [
_c("input", {
directives: [
{
name: "model",
rawName: "v-model",
value:
_vm.form
.site_permissions[
"delete"
],
expression:
"form.site_permissions['delete']"
}
],
staticClass: "form-checkbox",
attrs: {
id: "site_delete",
type: "checkbox"
},
domProps: {
checked: Array.isArray(
_vm.form.site_permissions[
"delete"
]
)
? _vm._i(
_vm.form
.site_permissions[
"delete"
],
null
) > -1
: _vm.form
.site_permissions[
"delete"
]
},
on: {
change: function($event) {
var $$a =
_vm.form
.site_permissions[
"delete"
],
$$el = $event.target,
$$c = $$el.checked
? true
: false
if (Array.isArray($$a)) {
var $$v = null,
$$i = _vm._i($$a, $$v)
if ($$el.checked) {
$$i < 0 &&
_vm.$set(
_vm.form
.site_permissions,
"delete",
$$a.concat([$$v])
)
} else {
$$i > -1 &&
_vm.$set(
_vm.form
.site_permissions,
"delete",
$$a
.slice(0, $$i)
.concat(
$$a.slice(
$$i + 1
)
)
)
}
} else {
_vm.$set(
_vm.form
.site_permissions,
"delete",
$$c
)
}
}
}
}),
_vm._v(" "),
_c(
"label",
{
staticClass: "ml-2 text-sm",
attrs: {
for: "site_delete"
}
},
[
_vm._v(
_vm._s(
_vm.__(
"Allow site deletion"
)
)
)
]
),
_vm._v(" "),
_c(
"p",
{
staticClass:
"text-small mt-1 text-medium-emphasis"
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"This will allow users to delete servers"
)
) +
"\n "
)
]
)
])
]
),
_vm._v(" "),
_c(
"FormActions",

687
public/js/39.js vendored
View File

@@ -1,15 +1,15 @@
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[39],{
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js&":
/*!***********************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js& ***!
\***********************************************************************************************************************************************************************/
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js&":
/*!**********************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js& ***!
\**********************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_TopBar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./../components/TopBar */ "./resources/js/Pages/Admin/components/TopBar.vue");
/* harmony import */ var _components_TopBar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/TopBar */ "./resources/js/Pages/Servers/components/TopBar.vue");
/* harmony import */ var _components_Container__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/components/Container */ "./resources/js/components/Container.vue");
/* harmony import */ var _components_Content__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/components/Content */ "./resources/js/components/Content.vue");
/* harmony import */ var _components_Page__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/Page */ "./resources/js/components/Page.vue");
@@ -22,59 +22,31 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_StatusBubble__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/components/StatusBubble */ "./resources/js/components/StatusBubble.vue");
/* harmony import */ var _components_NotificationBadge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/NotificationBadge */ "./resources/js/components/NotificationBadge.vue");
/* harmony import */ var _Layouts_MainLayout__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/Layouts/MainLayout */ "./resources/js/Layouts/MainLayout.vue");
/* harmony import */ var _components_layouts_SettingsLayout__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/components/layouts/SettingsLayout */ "./resources/js/components/layouts/SettingsLayout.vue");
/* harmony import */ var _components_SettingsSegment__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/components/SettingsSegment */ "./resources/js/components/SettingsSegment.vue");
/* harmony import */ var _components_Pagination__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @/components/Pagination */ "./resources/js/components/Pagination.vue");
/* harmony import */ var _hooks_notification__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/hooks/notification */ "./resources/js/hooks/notification.js");
/* harmony import */ var _components_forms_FormInput__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/components/forms/FormInput */ "./resources/js/components/forms/FormInput.vue");
/* harmony import */ var _Tabs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./Tabs */ "./resources/js/Pages/Admin/Users/Tabs.vue");
/* harmony import */ var _components_Table__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/Table */ "./resources/js/components/Table.vue");
/* harmony import */ var _components_TableHead__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @/components/TableHead */ "./resources/js/components/TableHead.vue");
/* harmony import */ var _components_TableHeader__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @/components/TableHeader */ "./resources/js/components/TableHeader.vue");
/* harmony import */ var _components_TableRow__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @/components/TableRow */ "./resources/js/components/TableRow.vue");
/* harmony import */ var _components_TableBody__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @/components/TableBody */ "./resources/js/components/TableBody.vue");
/* harmony import */ var _components_TableData__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @/components/TableData */ "./resources/js/components/TableData.vue");
/* harmony import */ var lodash_pickBy__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! lodash/pickBy */ "./node_modules/lodash/pickBy.js");
/* harmony import */ var lodash_pickBy__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(lodash_pickBy__WEBPACK_IMPORTED_MODULE_25__);
/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! lodash/throttle */ "./node_modules/lodash/throttle.js");
/* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(lodash_throttle__WEBPACK_IMPORTED_MODULE_26__);
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony import */ var _components_icons_IconBox__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/components/icons/IconBox */ "./resources/js/components/icons/IconBox.vue");
/* harmony import */ var _components_icons_IconGlobe__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/components/icons/IconGlobe */ "./resources/js/components/icons/IconGlobe.vue");
/* harmony import */ var _components_icons_IconStorage__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @/components/icons/IconStorage */ "./resources/js/components/icons/IconStorage.vue");
/* harmony import */ var _components_IconButton__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @/components/IconButton */ "./resources/js/components/IconButton.vue");
/* harmony import */ var _components_icons_IconMore__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @/components/icons/IconMore */ "./resources/js/components/icons/IconMore.vue");
/* harmony import */ var _components_EmptyImage__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @/components/EmptyImage */ "./resources/js/components/EmptyImage.vue");
/* harmony import */ var _components_Modal__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @/components/Modal */ "./resources/js/components/Modal.vue");
/* harmony import */ var _components_ModalContainer__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @/components/ModalContainer */ "./resources/js/components/ModalContainer.vue");
/* harmony import */ var _components_forms_FormInput__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @/components/forms/FormInput */ "./resources/js/components/forms/FormInput.vue");
/* harmony import */ var _components_FormActions__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @/components/FormActions */ "./resources/js/components/FormActions.vue");
/* harmony import */ var _components_Dropdown__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @/components/Dropdown */ "./resources/js/components/Dropdown.vue");
/* harmony import */ var _components_DropdownList__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @/components/DropdownList */ "./resources/js/components/DropdownList.vue");
/* harmony import */ var _components_DropdownListItem__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @/components/DropdownListItem */ "./resources/js/components/DropdownListItem.vue");
/* harmony import */ var _components_DropdownListItemButton__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! @/components/DropdownListItemButton */ "./resources/js/components/DropdownListItemButton.vue");
/* harmony import */ var _components_layouts_SettingsLayout__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! @/components/layouts/SettingsLayout */ "./resources/js/components/layouts/SettingsLayout.vue");
/* harmony import */ var _components_SettingsSegment__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! @/components/SettingsSegment */ "./resources/js/components/SettingsSegment.vue");
/* harmony import */ var _components_Pagination__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! @/components/Pagination */ "./resources/js/components/Pagination.vue");
/* harmony import */ var _Tabs__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./Tabs */ "./resources/js/Pages/Servers/Tabs.vue");
/* harmony import */ var _components_Table__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(/*! @/components/Table */ "./resources/js/components/Table.vue");
/* harmony import */ var _components_TableHead__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(/*! @/components/TableHead */ "./resources/js/components/TableHead.vue");
/* harmony import */ var _components_TableHeader__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(/*! @/components/TableHeader */ "./resources/js/components/TableHeader.vue");
/* harmony import */ var _components_TableRow__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(/*! @/components/TableRow */ "./resources/js/components/TableRow.vue");
/* harmony import */ var _components_TableBody__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(/*! @/components/TableBody */ "./resources/js/components/TableBody.vue");
/* harmony import */ var _components_TableData__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(/*! @/components/TableData */ "./resources/js/components/TableData.vue");
/* harmony import */ var _hooks_confirm_delete__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(/*! @/hooks/confirm-delete */ "./resources/js/hooks/confirm-delete.js");
//
//
//
@@ -124,6 +96,17 @@ __webpack_require__.r(__webpack_exports__);
@@ -137,7 +120,7 @@ __webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ({
metaInfo: function metaInfo() {
return {
title: "".concat(this.__('Users'))
title: "".concat(this.__('Servers'))
};
},
layout: _Layouts_MainLayout__WEBPACK_IMPORTED_MODULE_12__["default"],
@@ -151,63 +134,73 @@ __webpack_require__.r(__webpack_exports__);
PageBody: _components_PageBody__WEBPACK_IMPORTED_MODULE_6__["default"],
Button: _components_Button__WEBPACK_IMPORTED_MODULE_7__["default"],
List: _components_List__WEBPACK_IMPORTED_MODULE_8__["default"],
IconButton: _components_IconButton__WEBPACK_IMPORTED_MODULE_16__["default"],
IconMore: _components_icons_IconMore__WEBPACK_IMPORTED_MODULE_17__["default"],
ListItem: _components_ListItem__WEBPACK_IMPORTED_MODULE_9__["default"],
StatusBubble: _components_StatusBubble__WEBPACK_IMPORTED_MODULE_10__["default"],
NotificationBadge: _components_NotificationBadge__WEBPACK_IMPORTED_MODULE_11__["default"],
SettingsLayout: _components_layouts_SettingsLayout__WEBPACK_IMPORTED_MODULE_13__["default"],
SettingsSegment: _components_SettingsSegment__WEBPACK_IMPORTED_MODULE_14__["default"],
Pagination: _components_Pagination__WEBPACK_IMPORTED_MODULE_15__["default"],
Tabs: _Tabs__WEBPACK_IMPORTED_MODULE_18__["default"],
Table: _components_Table__WEBPACK_IMPORTED_MODULE_19__["default"],
TableHead: _components_TableHead__WEBPACK_IMPORTED_MODULE_20__["default"],
TableHeader: _components_TableHeader__WEBPACK_IMPORTED_MODULE_21__["default"],
TableRow: _components_TableRow__WEBPACK_IMPORTED_MODULE_22__["default"],
TableBody: _components_TableBody__WEBPACK_IMPORTED_MODULE_23__["default"],
TableData: _components_TableData__WEBPACK_IMPORTED_MODULE_24__["default"],
FormInput: _components_forms_FormInput__WEBPACK_IMPORTED_MODULE_17__["default"]
IconBox: _components_icons_IconBox__WEBPACK_IMPORTED_MODULE_13__["default"],
IconGlobe: _components_icons_IconGlobe__WEBPACK_IMPORTED_MODULE_14__["default"],
IconStorage: _components_icons_IconStorage__WEBPACK_IMPORTED_MODULE_15__["default"],
EmptyImage: _components_EmptyImage__WEBPACK_IMPORTED_MODULE_18__["default"],
Modal: _components_Modal__WEBPACK_IMPORTED_MODULE_19__["default"],
ModalContainer: _components_ModalContainer__WEBPACK_IMPORTED_MODULE_20__["default"],
FormInput: _components_forms_FormInput__WEBPACK_IMPORTED_MODULE_21__["default"],
FormActions: _components_FormActions__WEBPACK_IMPORTED_MODULE_22__["default"],
Dropdown: _components_Dropdown__WEBPACK_IMPORTED_MODULE_23__["default"],
DropdownList: _components_DropdownList__WEBPACK_IMPORTED_MODULE_24__["default"],
DropdownListItem: _components_DropdownListItem__WEBPACK_IMPORTED_MODULE_25__["default"],
DropdownListItemButton: _components_DropdownListItemButton__WEBPACK_IMPORTED_MODULE_26__["default"],
SettingsSegment: _components_SettingsSegment__WEBPACK_IMPORTED_MODULE_28__["default"],
SettingsLayout: _components_layouts_SettingsLayout__WEBPACK_IMPORTED_MODULE_27__["default"],
Tabs: _Tabs__WEBPACK_IMPORTED_MODULE_30__["default"],
Table: _components_Table__WEBPACK_IMPORTED_MODULE_31__["default"],
TableHead: _components_TableHead__WEBPACK_IMPORTED_MODULE_32__["default"],
TableHeader: _components_TableHeader__WEBPACK_IMPORTED_MODULE_33__["default"],
TableRow: _components_TableRow__WEBPACK_IMPORTED_MODULE_34__["default"],
TableBody: _components_TableBody__WEBPACK_IMPORTED_MODULE_35__["default"],
TableData: _components_TableData__WEBPACK_IMPORTED_MODULE_36__["default"],
Pagination: _components_Pagination__WEBPACK_IMPORTED_MODULE_29__["default"]
},
props: {
users: Object,
filters: Object
server: Object
},
data: function data() {
return {
form: {
search: this.filters.search
}
breadcrumbs: [{
title: this.$page.settings.name,
to: '/'
}, {
title: this.server.name,
to: this.route('servers.show', this.server.id)
}]
};
},
watch: {
form: {
handler: lodash_throttle__WEBPACK_IMPORTED_MODULE_26___default()(function () {
var query = lodash_pickBy__WEBPACK_IMPORTED_MODULE_25___default()(this.form);
this.$inertia.replace(this.route('admin.users.index', Object.keys(query).length ? query : {
remember: 'forget'
}));
}, 500),
deep: true
}
},
mounted: function mounted() {
if (this.$page.flash.success) {
Object(_hooks_notification__WEBPACK_IMPORTED_MODULE_16__["useNotification"])({
variant: 'success',
title: "Users",
message: this.$page.flash.success
});
}
},
methods: {
useNotification: _hooks_notification__WEBPACK_IMPORTED_MODULE_16__["useNotification"]
useConfirmDelete: _hooks_confirm_delete__WEBPACK_IMPORTED_MODULE_37__["useConfirmDelete"],
confirmDelete: function confirmDelete() {
var _this = this;
Object(_hooks_confirm_delete__WEBPACK_IMPORTED_MODULE_37__["useConfirmDelete"])({
title: this.__('Are you sure?'),
message: this.__('Your server will be deleted completely, this action is irreversible.'),
onConfirm: function onConfirm() {
return _this["delete"]();
}
});
},
"delete": function _delete() {
this.$inertia["delete"](this.route('servers.delete', this.server.id));
}
}
});
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js&":
/*!**********************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js& ***!
\**********************************************************************************************************************************************************************/
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js&":
/*!******************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js& ***!
\******************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -225,17 +218,22 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
//
//
/* harmony default export */ __webpack_exports__["default"] = ({
props: {
server: Object
},
data: function data() {
return {
items: [{
title: this.__('Overview'),
to: this.route('admin.users.index'),
active: this.route().current('admin.users.index')
title: this.__('General'),
to: this.route('servers.show', this.server.id),
active: this.route().current('servers.show')
}, {
title: this.__('Create'),
to: this.route('admin.users.create'),
active: this.route().current('admin.users.create')
title: this.__('Settings'),
to: this.route('servers.settings.show', this.server.id),
active: this.route().current('servers.settings.show')
}]
};
}
@@ -243,10 +241,10 @@ __webpack_require__.r(__webpack_exports__);
/***/ }),
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js&":
/*!*****************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js& ***!
\*****************************************************************************************************************************************************************************/
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js&":
/*!*******************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js& ***!
\*******************************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -280,44 +278,23 @@ __webpack_require__.r(__webpack_exports__);
TabBar: _components_TabBar__WEBPACK_IMPORTED_MODULE_2__["default"],
TopBarTabBarContainer: _components_TopBarTabBarContainer__WEBPACK_IMPORTED_MODULE_3__["default"]
},
props: {
breadcrumbs: Array
},
data: function data() {
return {
tabBars: [{
title: 'Dashboard',
to: this.route('admin.dashboard'),
active: this.route().current('admin.dashboard') || this.route().current('admin.settings') || this.route().current('admin.system')
title: this.__('Dashboard'),
to: this.route('dashboard'),
active: this.route().current('dashboard')
}, {
title: this.__('Users'),
to: this.route('admin.users.index'),
active: this.route().current('admin.users.*')
title: this.__('Sites'),
to: this.route('sites.index'),
active: this.route().current('sites.*')
}, {
title: this.__('Packages'),
to: this.route('admin.packages.index'),
active: this.route().current('admin.packages.*')
}, this.$page.settings.support ? {
title: "".concat(this.__('Support'), " (").concat(this.$page.openTickets, ")"),
to: this.route('admin.support.index'),
active: this.route().current('admin.support.*')
} : null, this.$page.settings.documentation ? {
title: this.__('Documentation'),
to: this.route('admin.documentation.index'),
active: this.route().current('admin.documentation.*')
} : null, {
title: 'Services',
to: this.route('admin.services.index'),
active: this.route().current('admin.services.*')
} // {
// title: 'Status',
// to: this.route('admin.status.index'),
// active: this.route().current('admin.status.*')
// }
],
breadcrumbs: [{
title: this.$page.settings.name,
to: '/'
}, {
title: this.__('Administration'),
to: this.route('admin.dashboard')
title: 'Servers',
to: this.route('servers.index'),
active: this.route().current('servers.*')
}]
};
}
@@ -361,10 +338,10 @@ __webpack_require__.r(__webpack_exports__);
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332&":
/*!***************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332& ***!
\***************************************************************************************************************************************************************************************************************/
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea&":
/*!**************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea& ***!
\**************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -379,7 +356,7 @@ var render = function() {
return _c(
"Page",
[
_c("TopBar"),
_c("TopBar", { attrs: { breadcrumbs: _vm.breadcrumbs } }),
_vm._v(" "),
_c(
"Content",
@@ -393,7 +370,9 @@ var render = function() {
key: "start",
fn: function() {
return [
_c("PageHeaderTitle", [_vm._v(_vm._s(_vm.__("Users")))])
_c("PageHeaderTitle", [
_vm._v(_vm._s(_vm.__("Settings")))
])
]
},
proxy: true
@@ -409,7 +388,7 @@ var render = function() {
{
key: "nav",
fn: function() {
return [_c("Tabs")]
return [_c("Tabs", { attrs: { server: _vm.server } })]
},
proxy: true
},
@@ -421,39 +400,9 @@ var render = function() {
scopedSlots: _vm._u([
{
key: "title",
fn: function() {
return [_vm._v(_vm._s(_vm.__("Overview")))]
},
proxy: true
},
{
key: "form",
fn: function() {
return [
_c(
"form",
{
staticClass:
"space-y-4 pb-5 mb-5 border-b border-low-emphasis"
},
[
_c("FormInput", {
attrs: { label: _vm.__("Search") },
model: {
value: _vm.form.search,
callback: function($$v) {
_vm.$set(
_vm.form,
"search",
$$v
)
},
expression: "form.search"
}
})
],
1
)
_vm._v(_vm._s(_vm.__("Danger zone")))
]
},
proxy: true
@@ -463,156 +412,13 @@ var render = function() {
fn: function() {
return [
_c(
"div",
[
_c(
"Table",
{
attrs: {
caption: "User list overview"
}
},
[
_c(
"TableHead",
[
_c(
"TableRow",
[
_c("TableHeader", [
_vm._v(
_vm._s(_vm.__("Name"))
)
]),
_vm._v(" "),
_c("TableHeader", [
_vm._v(
_vm._s(
_vm.__("User name")
)
)
]),
_vm._v(" "),
_c("TableHeader", [
_vm._v(
_vm._s(_vm.__("Role"))
)
]),
_vm._v(" "),
_c("TableHeader", [
_vm._v(
_vm._s(
_vm.__("Package")
)
)
]),
_vm._v(" "),
_c("TableHeader")
],
1
)
],
1
),
_vm._v(" "),
_c(
"TableBody",
_vm._l(_vm.users.data, function(
user
) {
return _c(
"TableRow",
{ key: user.id },
[
_c("TableData", [
_vm._v(
"\n " +
_vm._s(user.name) +
"\n\n "
),
_c(
"p",
{
staticClass:
"text-medium-emphasis"
},
[
_vm._v(
_vm._s(user.email)
)
]
)
]),
_vm._v(" "),
_c("TableData", [
_vm._v(
_vm._s(user.user_name)
)
]),
_vm._v(" "),
_c("TableData", [
_vm._v(
_vm._s(user.role)
)
]),
_vm._v(" "),
_c("TableData", [
_vm._v(
_vm._s(
user.package
? user.package
.name
: "-"
)
)
]),
_vm._v(" "),
_c(
"TableData",
[
_c(
"inertia-link",
{
staticClass:
"text-primary font-medium",
attrs: {
href: _vm.route(
"admin.users.edit",
user.id
)
}
},
[
_vm._v(
"\n " +
_vm._s(
_vm.__(
"Edit"
)
) +
"\n "
)
]
)
],
1
)
],
1
)
}),
1
)
],
1
)
],
1
),
_vm._v(" "),
_c("pagination", {
attrs: { links: _vm.users }
})
"Button",
{
attrs: { variant: "danger" },
on: { click: _vm.confirmDelete }
},
[_vm._v(_vm._s(_vm.__("Delete")))]
)
]
},
proxy: true
@@ -645,10 +451,10 @@ render._withStripped = true
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564&":
/*!**************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564& ***!
\**************************************************************************************************************************************************************************************************************/
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866&":
/*!**********************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866& ***!
\**********************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -664,24 +470,30 @@ var render = function() {
"ul",
{ staticClass: "-ml-4 space-y-1" },
_vm._l(_vm.items, function(item) {
return _c(
"li",
[
_c(
"inertia-link",
{
staticClass:
"flex items-center h-10 px-4 font-medium text-medium-emphasis",
class: {
"rounded shadow text-primary bg-surface-3": item.active
},
attrs: { href: item.to }
},
[_vm._v(_vm._s(item.title) + " " + _vm._s(item.route))]
return item
? _c(
"li",
[
_c(
item.type && item.type === "a" ? "a" : "inertia-link",
{
tag: "component",
staticClass:
"flex items-center h-10 px-4 font-medium text-medium-emphasis",
class: {
"rounded shadow text-primary bg-surface-3": item.active
},
attrs: {
target: item.type && item.type === "a" ? "_blank" : "_self",
href: item.to
}
},
[_vm._v(_vm._s(item.title) + " " + _vm._s(item.route))]
)
],
1
)
],
1
)
: _vm._e()
}),
0
)
@@ -693,10 +505,10 @@ render._withStripped = true
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de&":
/*!*********************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de& ***!
\*********************************************************************************************************************************************************************************************************************/
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f&":
/*!***********************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f& ***!
\***********************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -800,18 +612,18 @@ render._withStripped = true
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Index.vue":
/*!**************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Index.vue ***!
\**************************************************/
/***/ "./resources/js/Pages/Servers/Settings.vue":
/*!*************************************************!*\
!*** ./resources/js/Pages/Servers/Settings.vue ***!
\*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Index.vue?vue&type=template&id=5e019332& */ "./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332&");
/* harmony import */ var _Index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Index.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
/* harmony import */ var _Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Settings.vue?vue&type=template&id=d05622ea& */ "./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea&");
/* harmony import */ var _Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Settings.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
@@ -820,9 +632,9 @@ __webpack_require__.r(__webpack_exports__);
/* normalize component */
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
_Index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
_Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__["render"],
_Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
_Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
_Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__["render"],
_Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
@@ -832,55 +644,55 @@ var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_
/* hot reload */
if (false) { var api; }
component.options.__file = "resources/js/Pages/Admin/Users/Index.vue"
component.options.__file = "resources/js/Pages/Servers/Settings.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js&":
/*!***************************************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js& ***!
\***************************************************************************/
/***/ "./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js&":
/*!**************************************************************************!*\
!*** ./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js& ***!
\**************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./Index.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Index.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Index_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Settings.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Settings.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332&":
/*!*********************************************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332& ***!
\*********************************************************************************/
/***/ "./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea&":
/*!********************************************************************************!*\
!*** ./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea& ***!
\********************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../node_modules/vue-loader/lib??vue-loader-options!./Index.vue?vue&type=template&id=5e019332& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Index.vue?vue&type=template&id=5e019332&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Settings.vue?vue&type=template&id=d05622ea& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Settings.vue?vue&type=template&id=d05622ea&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Index_vue_vue_type_template_id_5e019332___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Settings_vue_vue_type_template_id_d05622ea___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Tabs.vue":
/*!*************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Tabs.vue ***!
\*************************************************/
/***/ "./resources/js/Pages/Servers/Tabs.vue":
/*!*********************************************!*\
!*** ./resources/js/Pages/Servers/Tabs.vue ***!
\*********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tabs.vue?vue&type=template&id=60fd6564& */ "./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564&");
/* harmony import */ var _Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tabs.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
/* harmony import */ var _Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Tabs.vue?vue&type=template&id=70b06866& */ "./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866&");
/* harmony import */ var _Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Tabs.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
@@ -890,8 +702,8 @@ __webpack_require__.r(__webpack_exports__);
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
_Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
_Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__["render"],
_Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
_Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__["render"],
_Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
@@ -901,54 +713,54 @@ var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_
/* hot reload */
if (false) { var api; }
component.options.__file = "resources/js/Pages/Admin/Users/Tabs.vue"
component.options.__file = "resources/js/Pages/Servers/Tabs.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js&":
/*!**************************************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js& ***!
\**************************************************************************/
/***/ "./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js&":
/*!**********************************************************************!*\
!*** ./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js& ***!
\**********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./Tabs.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=script&lang=js&");
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Tabs.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Tabs.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
/***/ "./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564&":
/*!********************************************************************************!*\
!*** ./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564& ***!
\********************************************************************************/
/***/ "./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866&":
/*!****************************************************************************!*\
!*** ./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866& ***!
\****************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../node_modules/vue-loader/lib??vue-loader-options!./Tabs.vue?vue&type=template&id=60fd6564& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/Users/Tabs.vue?vue&type=template&id=60fd6564&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Tabs.vue?vue&type=template&id=70b06866& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/Tabs.vue?vue&type=template&id=70b06866&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_60fd6564___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Tabs_vue_vue_type_template_id_70b06866___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/***/ }),
/***/ "./resources/js/Pages/Admin/components/TopBar.vue":
/*!********************************************************!*\
!*** ./resources/js/Pages/Admin/components/TopBar.vue ***!
\********************************************************/
/***/ "./resources/js/Pages/Servers/components/TopBar.vue":
/*!**********************************************************!*\
!*** ./resources/js/Pages/Servers/components/TopBar.vue ***!
\**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TopBar.vue?vue&type=template&id=293d83de& */ "./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de&");
/* harmony import */ var _TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TopBar.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js&");
/* harmony import */ var _TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./TopBar.vue?vue&type=template&id=095beb9f& */ "./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f&");
/* harmony import */ var _TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./TopBar.vue?vue&type=script&lang=js& */ "./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
@@ -959,8 +771,8 @@ __webpack_require__.r(__webpack_exports__);
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
_TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
_TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__["render"],
_TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
_TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__["render"],
_TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
@@ -970,38 +782,38 @@ var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_
/* hot reload */
if (false) { var api; }
component.options.__file = "resources/js/Pages/Admin/components/TopBar.vue"
component.options.__file = "resources/js/Pages/Servers/components/TopBar.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
/***/ "./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js&":
/*!*********************************************************************************!*\
!*** ./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js& ***!
\*********************************************************************************/
/***/ "./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js&":
/*!***********************************************************************************!*\
!*** ./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js& ***!
\***********************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./TopBar.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=script&lang=js&");
/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/babel-loader/lib??ref--4-0!../../../../../node_modules/vue-loader/lib??vue-loader-options!./TopBar.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
/***/ "./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de&":
/*!***************************************************************************************!*\
!*** ./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de& ***!
\***************************************************************************************/
/***/ "./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f&":
/*!*****************************************************************************************!*\
!*** ./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f& ***!
\*****************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../node_modules/vue-loader/lib??vue-loader-options!./TopBar.vue?vue&type=template&id=293d83de& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Admin/components/TopBar.vue?vue&type=template&id=293d83de&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../node_modules/vue-loader/lib??vue-loader-options!./TopBar.vue?vue&type=template&id=095beb9f& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/Pages/Servers/components/TopBar.vue?vue&type=template&id=095beb9f&");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_293d83de___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_TopBar_vue_vue_type_template_id_095beb9f___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
@@ -1074,6 +886,35 @@ __webpack_require__.r(__webpack_exports__);
/***/ }),
/***/ "./resources/js/hooks/confirm-delete.js":
/*!**********************************************!*\
!*** ./resources/js/hooks/confirm-delete.js ***!
\**********************************************/
/*! exports provided: useConfirmDelete */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "useConfirmDelete", function() { return useConfirmDelete; });
/* harmony import */ var _store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/store */ "./resources/js/store/index.js");
function useConfirmDelete(_ref) {
var title = _ref.title,
message = _ref.message,
_onConfirm = _ref.onConfirm;
return _store__WEBPACK_IMPORTED_MODULE_0__["default"].dispatch('confirmDelete/open', {
title: title,
message: message,
onConfirm: function onConfirm() {
_onConfirm();
_store__WEBPACK_IMPORTED_MODULE_0__["default"].dispatch('confirmDelete/close');
}
});
}
/***/ })
}]);

1225
public/js/40.js vendored

File diff suppressed because it is too large Load Diff

1104
public/js/41.js vendored

File diff suppressed because it is too large Load Diff

14
public/js/app.js vendored
View File

@@ -43,7 +43,7 @@
/******/
/******/ // script path function
/******/ function jsonpScriptSrc(chunkId) {
/******/ return __webpack_require__.p + "js/" + ({}[chunkId]||chunkId) + ".js?id=" + {"0":"0dcde053981f92959e59","1":"86db8ab9924d3be9307f","2":"e3b2b0aba5a1f9a18fe2","3":"7fdc1d14f65f44d0a5a3","4":"7fecf1f18f5ef974d222","5":"fbfbcf45610d060d921e","6":"ab69c8c404f9ccac65db","7":"140acb8c38018bb7c822","8":"2d3a3827a4fce6452a33","9":"c031adc013e72d8ca02e","10":"c99079a545f555af1d52","11":"edfc1a590a1ef0920546","12":"b3fc82c5505d1cfa7ddc","13":"82586eff842dd81a3514","14":"565bfaff62d8837441ea","15":"1145f698c07761ab21b9","16":"a71a4de4db813926d9fa","17":"8715d645a6960909b0be","18":"d57099401b23b45edcc8","19":"b8f90e39a34bc8b6f186","20":"c987356baaaceb82c365","21":"805ff5beffc848caac4e","22":"f77c6d6e204f3cb79333","23":"22dba52fed989ff789db","24":"39ab3d78672bb9a4dbbf","25":"3c868424322f0c4f4122","26":"f916f092e6e60b8d9892","27":"e5ac13ee4b4b7b6bd182","28":"f5669cef6146d069dd10","29":"7d89c6ed3820cf473a89","30":"af0a027b779bdad9adc4","31":"389c470db645e09d77fa","32":"955c99fe365280bd58a8","33":"3b12573698121b34d094","34":"5e120af5778f25fcb316","35":"16ee8ec0d1f4ea1f3e3b","36":"9d942601049dde1e2a2d","37":"bfed5c07e7ee3fc0b707","38":"16bb218999b061d4519f","39":"f0e47e8cbc2e1453b93e","40":"bb8280e4cdbbe173641a","41":"93362d4b9f97268710d3","42":"48e7726657cdf11826c4","43":"47dcbade590b0ea66800","44":"ef5fc07ba97aa3e5f709","45":"69b528c2ad010802b4be","46":"c999693fd1694c60295a","47":"affd17daf77561a07c7d","48":"e35f12fe5de48f8b0f28","49":"b502cb18b8d71e1baa5b","50":"9af9d482ea3ffa0c93b2","51":"07d6e2ad89db070a56a1","52":"e4e922eff257260d359c","53":"b30bfd568d33215522db","54":"3b2970d95700196e4ba7","55":"ab1a326cc947bf1bd794","56":"41cc9242493164547764","57":"e27a77c9376f068e9ed0","58":"352754e15a363a0d7a52","59":"e8ef223faaa64f938963","60":"1ee8c2d102b81a93f967","61":"23a0a707a4957c44012a","62":"73ef6e9e4624ea20ecf8","63":"79824fab0c635c0314d7","64":"6e8deaf9221575abd5c2","65":"b1ed2e2b326333a52ee5","66":"8adb116b3d8bcdcbb5aa","67":"a520d6a255c719de6184","68":"e997f3fa1d28a03c1a98","69":"c9af53d04391b191e7a0","70":"9f6377148a2b6a449eb1"}[chunkId] + ""
/******/ return __webpack_require__.p + "js/" + ({}[chunkId]||chunkId) + ".js?id=" + {"0":"0dcde053981f92959e59","1":"86db8ab9924d3be9307f","2":"e3b2b0aba5a1f9a18fe2","3":"7fdc1d14f65f44d0a5a3","4":"7fecf1f18f5ef974d222","5":"fbfbcf45610d060d921e","6":"ab69c8c404f9ccac65db","7":"140acb8c38018bb7c822","8":"2d3a3827a4fce6452a33","9":"c031adc013e72d8ca02e","10":"c99079a545f555af1d52","11":"9822093766328e344db8","12":"b3fc82c5505d1cfa7ddc","13":"82586eff842dd81a3514","14":"565bfaff62d8837441ea","15":"1145f698c07761ab21b9","16":"a71a4de4db813926d9fa","17":"8715d645a6960909b0be","18":"d57099401b23b45edcc8","19":"b8f90e39a34bc8b6f186","20":"c987356baaaceb82c365","21":"805ff5beffc848caac4e","22":"f77c6d6e204f3cb79333","23":"22dba52fed989ff789db","24":"39ab3d78672bb9a4dbbf","25":"3c868424322f0c4f4122","26":"f916f092e6e60b8d9892","27":"e5ac13ee4b4b7b6bd182","28":"f5669cef6146d069dd10","29":"7d89c6ed3820cf473a89","30":"af0a027b779bdad9adc4","31":"389c470db645e09d77fa","32":"955c99fe365280bd58a8","33":"3b12573698121b34d094","34":"5e120af5778f25fcb316","35":"16ee8ec0d1f4ea1f3e3b","36":"9d942601049dde1e2a2d","37":"bfed5c07e7ee3fc0b707","38":"16bb218999b061d4519f","39":"c589edfad2d14c661cb9","40":"445401b2a74ee2481c0c","41":"7eeb8744789f16540899","42":"48e7726657cdf11826c4","43":"47dcbade590b0ea66800","44":"ef5fc07ba97aa3e5f709","45":"69b528c2ad010802b4be","46":"c999693fd1694c60295a","47":"affd17daf77561a07c7d","48":"e35f12fe5de48f8b0f28","49":"b502cb18b8d71e1baa5b","50":"9af9d482ea3ffa0c93b2","51":"07d6e2ad89db070a56a1","52":"e4e922eff257260d359c","53":"b30bfd568d33215522db","54":"3b2970d95700196e4ba7","55":"ab1a326cc947bf1bd794","56":"41cc9242493164547764","57":"e27a77c9376f068e9ed0","58":"352754e15a363a0d7a52","59":"e8ef223faaa64f938963","60":"1ee8c2d102b81a93f967","61":"23a0a707a4957c44012a","62":"73ef6e9e4624ea20ecf8","63":"79824fab0c635c0314d7","64":"6e8deaf9221575abd5c2","65":"b1ed2e2b326333a52ee5","66":"8adb116b3d8bcdcbb5aa","67":"a520d6a255c719de6184","68":"e997f3fa1d28a03c1a98","69":"c9af53d04391b191e7a0","70":"9f6377148a2b6a449eb1"}[chunkId] + ""
/******/ }
/******/
/******/ // The require function
@@ -20895,7 +20895,7 @@ var map = {
1,
2,
3,
39
40
],
"./Admin/Users/Index.vue": [
"./resources/js/Pages/Admin/Users/Index.vue",
@@ -20904,7 +20904,7 @@ var map = {
1,
2,
3,
39
40
],
"./Admin/Users/Tabs": [
"./resources/js/Pages/Admin/Users/Tabs.vue",
@@ -21000,13 +21000,13 @@ var map = {
"./resources/js/Pages/Dashboard/Index.vue",
0,
1,
40
41
],
"./Dashboard/Index.vue": [
"./resources/js/Pages/Dashboard/Index.vue",
0,
1,
40
41
],
"./Dashboard/components/TopBar": [
"./resources/js/Pages/Dashboard/components/TopBar.vue",
@@ -21166,7 +21166,7 @@ var map = {
3,
4,
6,
41
39
],
"./Servers/Settings.vue": [
"./resources/js/Pages/Servers/Settings.vue",
@@ -21176,7 +21176,7 @@ var map = {
3,
4,
6,
41
39
],
"./Servers/Show": [
"./resources/js/Pages/Servers/Show.vue",

View File

@@ -22,14 +22,64 @@
<form class="space-y-4" @submit.prevent="submit">
<FormInput :label="__('Name')" :errors="$page.errors.name" v-model="form.name" />
<FormInput :label="__('Maximum sites')" type="number" min="0" :errors="$page.errors.maximum_sites" v-model="form.maximum_sites" />
<FormInput :label="__('Maximum servers')" type="number" min="0" :errors="$page.errors.maximum_servers" v-model="form.maximum_servers" />
<div>
<input id="server_creation" class="form-checkbox" type="checkbox"
v-model="form.server_creation">
<label for="server_creation" class="ml-2 text-sm">{{ __('Allow server creation') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to create servers') }}
</p>
<div class="space-y-2">
<h3 class="text-base leading-6 font-medium border-b border-dotted border-medium-emphasis pb-1">Server permissions</h3>
<div>
<input id="server_create" class="form-checkbox" type="checkbox"
v-model="form.server_permissions['create']">
<label for="server_create" class="ml-2 text-sm">{{ __('Allow server creation') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to create servers') }}
</p>
</div>
<div>
<input id="server_update" class="form-checkbox" type="checkbox"
v-model="form.server_permissions['update']">
<label for="server_update" class="ml-2 text-sm">{{ __('Allow server updating') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to update servers') }}
</p>
</div>
<div>
<input id="server_delete" class="form-checkbox" type="checkbox"
v-model="form.server_permissions['delete']">
<label for="server_delete" class="ml-2 text-sm">{{ __('Allow server deletion') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to delete servers') }}
</p>
</div>
</div>
<div class="space-y-2">
<h3 class="text-base leading-6 font-medium border-b border-dotted border-medium-emphasis pb-1">Site permissions</h3>
<div>
<input id="site_create" class="form-checkbox" type="checkbox"
v-model="form.site_permissions['create']">
<label for="site_create" class="ml-2 text-sm">{{ __('Allow site creation') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to create servers') }}
</p>
</div>
<div>
<input id="site_update" class="form-checkbox" type="checkbox"
v-model="form.site_permissions['update']">
<label for="site_update" class="ml-2 text-sm">{{ __('Allow site updating') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to update servers') }}
</p>
</div>
<div>
<input id="site_delete" class="form-checkbox" type="checkbox"
v-model="form.site_permissions['delete']">
<label for="site_delete" class="ml-2 text-sm">{{ __('Allow site deletion') }}</label>
<p class="text-small mt-1 text-medium-emphasis">
{{ __('This will allow users to delete servers') }}
</p>
</div>
</div>
<FormActions>
@@ -108,7 +158,9 @@
form: {
name: this.package.name,
maximum_sites: this.package.maximum_sites,
server_creation: this.package.server_creation,
maximum_servers: this.package.maximum_servers,
server_permissions: this.package.server_permissions ?? [],
site_permissions: this.package.site_permissions ?? [],
},
}
},