mirror of
https://github.com/bunkerity/bunkerweb
synced 2026-05-24 09:28:37 +00:00
services table format and base UI component done
* update tailwind css config to fit new folder names * move table cell on dedicated components for better lisibility * services data format done * base UI table for services done
This commit is contained in:
parent
784c231198
commit
7b57f63cc5
13 changed files with 454 additions and 257 deletions
51
src/ui/client/dashboard/components/Icons/Pen.vue
Normal file
51
src/ui/client/dashboard/components/Icons/Pen.vue
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<script setup>
|
||||
import { defineProps, reactive } from "vue";
|
||||
/**
|
||||
@name Icons/Pen.vue
|
||||
@description This component is a svg icon representing pen.
|
||||
@example
|
||||
{
|
||||
color: 'orange',
|
||||
}
|
||||
@param {string} [iconClass="icon-default"] - The class of the icon.
|
||||
@param {string} [color="orange"] - The color of the icon between some tailwind css available colors (purple, green, red, orange, blue, yellow, gray, dark, amber, emerald, teal, indigo, cyan, sky, pink...). Darker colors are also available using the base color and adding '-darker' (e.g. 'red-darker').
|
||||
@param {boolean} [disabled=false] - If true, the icon will be disabled.
|
||||
*/
|
||||
|
||||
const props = defineProps({
|
||||
iconClass: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: "icon-default",
|
||||
},
|
||||
color: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: "orange",
|
||||
},
|
||||
disabled: { type: Boolean, required: false, default: false },
|
||||
});
|
||||
|
||||
const icon = reactive({
|
||||
color: props.color || "orange",
|
||||
});
|
||||
</script>
|
||||
<template>
|
||||
<svg
|
||||
:data-color="icon.color"
|
||||
:aria-disabled="props.disabled ? 'true' : 'false'"
|
||||
data-svg="pen"
|
||||
role="img"
|
||||
aria-hidden="true"
|
||||
:class="[props.iconClass, icon.color, 'fill']"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 24 24"
|
||||
fill="currentColor"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10"
|
||||
/>
|
||||
</svg>
|
||||
</template>
|
||||
51
src/ui/client/dashboard/components/Widget/Cell.vue
Normal file
51
src/ui/client/dashboard/components/Widget/Cell.vue
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<script setup>
|
||||
import { reactive, computed, ref, onMounted, watch } from "vue";
|
||||
import Text from "@components/Widget/Text.vue";
|
||||
import Icons from "@components/Widget/Icons.vue";
|
||||
import Fields from "@components/Form/Fields.vue";
|
||||
import Button from "@components/Widget/Button.vue";
|
||||
import ButtonGroup from "@components/Widget/ButtonGroup.vue";
|
||||
|
||||
/**
|
||||
@name Builder/Cell.vue
|
||||
@description This component includes all elements that can be shown in a table cell.
|
||||
@example
|
||||
{ type : "button",
|
||||
data : {
|
||||
id: "open-modal-btn",
|
||||
text: "Open modal",
|
||||
disabled: false,
|
||||
hideText: true,
|
||||
color: "green",
|
||||
size: "normal",
|
||||
iconName: "modal",
|
||||
attrs: { data-toggle: "modal", "data-target": "#modal"},
|
||||
}
|
||||
}
|
||||
@param {string} type - The type of the cell. This needs to be a Vue component.
|
||||
@param {object} data - The data to display in the cell. This needs to be the props of the Vue component.
|
||||
*/
|
||||
|
||||
const props = defineProps({
|
||||
type: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
data: {
|
||||
type: Object,
|
||||
required: true,
|
||||
},
|
||||
});
|
||||
|
||||
const cell = reactive({
|
||||
name: computed(() => props.type.toLowerCase()),
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<Text v-if="cell.name === 'text'" v-bind="props.data" />
|
||||
<Icons v-if="cell.name === 'icons'" v-bind="props.data" />
|
||||
<Fields v-if="cell.name === 'fields'" v-bind="props.data" />
|
||||
<Button v-if="cell.name === 'button'" v-bind="props.data" />
|
||||
<ButtonGroup v-if="cell.name === 'buttongroup'" v-bind="props.data" />
|
||||
</template>
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
<script setup>
|
||||
import { defineProps, reactive, onMounted, ref } from "vue";
|
||||
import { defineProps, reactive, onMounted, ref, computed } from "vue";
|
||||
import Box from "@components/Icons/Box.vue";
|
||||
import Carton from "@components/Icons/Carton.vue";
|
||||
import Core from "@components/Icons/Core.vue";
|
||||
|
|
@ -82,6 +82,7 @@ const props = defineProps({
|
|||
const icon = reactive({
|
||||
color: props.color,
|
||||
class: props.iconClass,
|
||||
name: computed(() => props.iconName.toLowerCase()),
|
||||
});
|
||||
|
||||
const iconEl = ref();
|
||||
|
|
@ -96,197 +97,197 @@ onMounted(() => {
|
|||
<template>
|
||||
<div ref="iconEl" :class="[props.isStick ? 'stick' : '', 'icon-container']">
|
||||
<Exclamation
|
||||
v-if="props.iconName === 'exclamation'"
|
||||
v-if="icon.name === 'exclamation'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Box
|
||||
v-if="props.iconName === 'box'"
|
||||
v-if="icon.name === 'box'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Carton
|
||||
v-if="props.iconName === 'carton'"
|
||||
v-if="icon.name === 'carton'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Core
|
||||
v-if="props.iconName === 'core'"
|
||||
v-if="icon.name === 'core'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<External
|
||||
v-if="props.iconName === 'external'"
|
||||
v-if="icon.name === 'external'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Search
|
||||
v-if="props.iconName === 'search'"
|
||||
v-if="icon.name === 'search'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Trash
|
||||
v-if="props.iconName === 'trash'"
|
||||
v-if="icon.name === 'trash'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Lock
|
||||
v-if="props.iconName === 'lock'"
|
||||
v-if="icon.name === 'lock'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Crown
|
||||
v-if="props.iconName === 'crown'"
|
||||
v-if="icon.name === 'crown'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Discord
|
||||
v-if="props.iconName === 'discord'"
|
||||
v-if="icon.name === 'discord'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Disk
|
||||
v-if="props.iconName === 'disk'"
|
||||
v-if="icon.name === 'disk'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Disks
|
||||
v-if="props.iconName === 'disks'"
|
||||
v-if="icon.name === 'disks'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Globe
|
||||
v-if="props.iconName === 'globe'"
|
||||
v-if="icon.name === 'globe'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Info
|
||||
v-if="props.iconName === 'info'"
|
||||
v-if="icon.name === 'info'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Flag
|
||||
v-if="props.iconName === 'flag'"
|
||||
v-if="icon.name === 'flag'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Gear
|
||||
v-if="props.iconName === 'gear'"
|
||||
v-if="icon.name === 'gear'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Github
|
||||
v-if="props.iconName === 'github'"
|
||||
v-if="icon.name === 'github'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<House
|
||||
v-if="props.iconName === 'house'"
|
||||
v-if="icon.name === 'house'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<List
|
||||
v-if="props.iconName === 'list'"
|
||||
v-if="icon.name === 'list'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Key
|
||||
v-if="props.iconName === 'key'"
|
||||
v-if="icon.name === 'key'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Linkedin
|
||||
v-if="props.iconName === 'linkedin'"
|
||||
v-if="icon.name === 'linkedin'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Plus
|
||||
v-if="props.iconName === 'plus'"
|
||||
v-if="icon.name === 'plus'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Puzzle
|
||||
v-if="props.iconName === 'puzzle'"
|
||||
v-if="icon.name === 'puzzle'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Settings
|
||||
v-if="props.iconName === 'settings'"
|
||||
v-if="icon.name === 'settings'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Task
|
||||
v-if="props.iconName === 'task'"
|
||||
v-if="icon.name === 'task'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Trespass
|
||||
v-if="props.iconName === 'trespass'"
|
||||
v-if="icon.name === 'trespass'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Check
|
||||
v-if="props.iconName === 'check'"
|
||||
v-if="icon.name === 'check'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Cross
|
||||
v-if="props.iconName === 'cross'"
|
||||
v-if="icon.name === 'cross'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Twitter
|
||||
v-if="props.iconName === 'twitter'"
|
||||
v-if="icon.name === 'twitter'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Wire
|
||||
v-if="props.iconName === 'wire'"
|
||||
v-if="icon.name === 'wire'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Funnel
|
||||
v-if="props.iconName === 'funnel'"
|
||||
v-if="icon.name === 'funnel'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Redirect
|
||||
v-if="props.iconName === 'redirect'"
|
||||
v-if="icon.name === 'redirect'"
|
||||
:iconClass="icon.class"
|
||||
:color="props.color"
|
||||
:disabled="props.disabled"
|
||||
/>
|
||||
<Close v-if="props.iconName === 'close'" :iconClass="icon.class" />
|
||||
<Close v-if="icon.name === 'close'" :iconClass="icon.class" />
|
||||
</div>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -3,10 +3,7 @@ import { reactive, computed, ref, onMounted, watch } from "vue";
|
|||
import { v4 as uuidv4 } from "uuid";
|
||||
import MessageUnmatch from "@components/Message/Unmatch.vue";
|
||||
import Container from "@components/Widget/Container.vue";
|
||||
import Text from "@components/Widget/Text.vue";
|
||||
import Icons from "@components/Widget/Icons.vue";
|
||||
import Fields from "@components/Form/Fields.vue";
|
||||
import Button from "@components/Widget/Button.vue";
|
||||
import Cell from "@components/Widget/Cell.vue";
|
||||
import Filter from "@components/Widget/Filter.vue";
|
||||
|
||||
/**
|
||||
|
|
@ -240,10 +237,7 @@ onMounted(() => {
|
|||
`col-span-${props.positions[id]}`,
|
||||
]"
|
||||
>
|
||||
<Text v-if="col.type === 'Text'" v-bind="col.data" />
|
||||
<Icons v-if="col.type === 'Icons'" v-bind="col.data" />
|
||||
<Fields v-if="col.type === 'Fields'" v-bind="col.data" />
|
||||
<Button v-if="col.type === 'Button'" v-bind="col.data" />
|
||||
<Cell :data="col.data" :type="col.type" />
|
||||
</td>
|
||||
</template>
|
||||
</tr>
|
||||
|
|
|
|||
|
|
@ -266,10 +266,7 @@
|
|||
"services_title": "Services",
|
||||
"services_table_name": "Name",
|
||||
"services_table_method": "Method",
|
||||
"services_table_settings": "Settings",
|
||||
"services_table_manage": "Manage",
|
||||
"services_table_is_draft": "Draft status",
|
||||
"services_table_delete": "Delete",
|
||||
"services_table_actions": "Actions",
|
||||
"services_search": "Search services",
|
||||
"services_search_desc": "Search within service name",
|
||||
"services_methods": "Methods",
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
></div>
|
||||
<div
|
||||
class="hidden"
|
||||
data-server-builder="W3sidHlwZSI6ICJjYXJkIiwgImNvbnRhaW5lckNvbHVtbnMiOiB7InBjIjogMTIsICJ0YWJsZXQiOiAxMiwgIm1vYmlsZSI6IDEyfSwgIndpZGdldHMiOiBbeyJ0eXBlIjogIlRpdGxlIiwgImRhdGEiOiB7InRpdGxlIjogInNlcnZpY2VzX3RpdGxlIn19LCB7InR5cGUiOiAiVGFibGUiLCAiZGF0YSI6IHsidGl0bGUiOiAic2VydmljZXNfdGFibGVfdGl0bGUiLCAibWluV2lkdGgiOiAibGciLCAiaGVhZGVyIjogWyJzZXJ2aWNlc190YWJsZV9uYW1lIiwgInNlcnZpY2VzX3RhYmxlX21ldGhvZCIsICJzZXJ2aWNlc190YWJsZV9zZXR0aW5ncyIsICJzZXJ2aWNlc190YWJsZV9tYW5hZ2UiLCAic2VydmljZXNfdGFibGVfaXNfZHJhZnQiLCAic2VydmljZXNfdGFibGVfZGVsZXRlIl0sICJwb3NpdGlvbnMiOiBbMiwgMiwgMiwgMiwgMiwgMl0sICJpdGVtcyI6IFtbeyJuYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAidHlwZSI6ICJUZXh0IiwgImRhdGEiOiB7InRleHQiOiAiYXBwMS5leGFtcGxlLmNvbSJ9fSwgeyJtZXRob2QiOiAic2NoZWR1bGVyIiwgInR5cGUiOiAiVGV4dCIsICJkYXRhIjogeyJ0ZXh0IjogInNjaGVkdWxlciJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJpZCI6ICJvcGVuLW1vZGFsLXNldHRpbmdzLTAiLCAidGV4dCI6ICJzZXR0aW5ncyIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImluZm8iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAic2V0dGluZ3MifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAiYXBwMS5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1tYW5hZ2UtMCIsICJ0ZXh0IjogIm1hbmFnZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImdyZWVuIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogIm1hbmFnZSJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJhcHAxLmV4YW1wbGUuY29tIiwgImRhdGEtaXMtZHJhZnQiOiAibm8ifSwgImlkIjogIm9wZW4tbW9kYWwtZHJhZnQtMCIsICJ0ZXh0IjogIm9ubGluZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImN5YW4iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAib25saW5lIn19LCB7InR5cGUiOiAiQnV0dG9uIiwgImRhdGEiOiB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtZGVsZXRlLTAiLCAidGV4dCI6ICJkZWxldGUiLCAiZGlzYWJsZWQiOiB0cnVlLCAiaGlkZVRleHQiOiBmYWxzZSwgIiBjb2xvciI6ICJyZWQiLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAidHJhc2gifX1dLCBbeyJuYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJ3d3cuZXhhbXBsZS5jb20ifX0sIHsibWV0aG9kIjogInNjaGVkdWxlciIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJzY2hlZHVsZXIifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiaWQiOiAib3Blbi1tb2RhbC1zZXR0aW5ncy0xIiwgInRleHQiOiAic2V0dGluZ3MiLCAiaGlkZVRleHQiOiBmYWxzZSwgIiBjb2xvciI6ICJpbmZvIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInNldHRpbmdzIn19LCB7InR5cGUiOiAiQnV0dG9uIiwgImRhdGEiOiB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogInd3dy5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1tYW5hZ2UtMSIsICJ0ZXh0IjogIm1hbmFnZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImdyZWVuIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogIm1hbmFnZSJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20iLCAiZGF0YS1pcy1kcmFmdCI6ICJubyJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kcmFmdC0xIiwgInRleHQiOiAib25saW5lIiwgImhpZGVUZXh0IjogZmFsc2UsICIgY29sb3IiOiAiY3lhbiIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJvbmxpbmUifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAid3d3LmV4YW1wbGUuY29tIn0sICJpZCI6ICJvcGVuLW1vZGFsLWRlbGV0ZS0xIiwgInRleHQiOiAiZGVsZXRlIiwgImRpc2FibGVkIjogdHJ1ZSwgImhpZGVUZXh0IjogZmFsc2UsICIgY29sb3IiOiAicmVkIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInRyYXNoIn19XV0sICJmaWx0ZXJzIjogW3siZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAia2V5d29yZCIsICJ0eXBlIjogImtleXdvcmQiLCAidmFsdWUiOiAiIiwgImtleXMiOiBbIm5hbWUiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgInZhbHVlIjogIiIsICJ0eXBlIjogInRleHQiLCAibmFtZSI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgImxhYmVsIjogInNlcnZpY2VzX3NlYXJjaCIsICJwbGFjZWhvbGRlciI6ICJpbnBfa2V5d29yZCIsICJpc0NsaXBib2FyZCI6IGZhbHNlLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX3NlYXJjaF9kZXNjIiwgImljb25OYW1lIjogImluZm8ifV0sICJjb2x1bW5zIjogeyJwYyI6IDMsICJ0YWJsZXQiOiA0LCAibW9iaWxlIjogMTJ9fX0sIHsiZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAibWV0aG9kIiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJtZXRob2QiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbInNjaGVkdWxlciJdLCAibmFtZSI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgIm9ubHlEb3duIjogdHJ1ZSwgImxhYmVsIjogInNlcnZpY2VzX21ldGhvZHMiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX21ldGhvZHNfZGVzYyIsICJpY29uTmFtZSI6ICJpbmZvIn1dLCAiY29sdW1ucyI6IHsicGMiOiAzLCAidGFibGV0IjogNCwgIm1vYmlsZSI6IDEyfX19LCB7ImZpbHRlciI6ICJ0YWJsZSIsICJmaWx0ZXJOYW1lIjogImRyYWZ0IiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJkcmFmdCJdLCAiZmllbGQiOiB7ImlkIjogInNlcnZpY2VzLWRyYWZ0IiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbImFsbCIsICJvbmxpbmUiLCAiZHJhZnQiXSwgIm5hbWUiOiAic2VydmljZXMtZHJhZnQiLCAib25seURvd24iOiB0cnVlLCAibGFiZWwiOiAic2VydmljZXNfZHJhZnQiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX2RyYWZ0X2Rlc2MiLCAiaWNvbk5hbWUiOiAiaW5mbyJ9XSwgImNvbHVtbnMiOiB7InBjIjogMywgInRhYmxldCI6IDQsICJtb2JpbGUiOiAxMn19fV19fV19XQ"
|
||||
data-server-builder="W3sidHlwZSI6ICJjYXJkIiwgImNvbnRhaW5lckNvbHVtbnMiOiB7InBjIjogMTIsICJ0YWJsZXQiOiAxMiwgIm1vYmlsZSI6IDEyfSwgIndpZGdldHMiOiBbeyJ0eXBlIjogIlRpdGxlIiwgImRhdGEiOiB7InRpdGxlIjogInNlcnZpY2VzX3RpdGxlIn19LCB7InR5cGUiOiAiVGFibGUiLCAiZGF0YSI6IHsidGl0bGUiOiAic2VydmljZXNfdGFibGVfdGl0bGUiLCAibWluV2lkdGgiOiAibWQiLCAiaGVhZGVyIjogWyJzZXJ2aWNlc190YWJsZV9uYW1lIiwgInNlcnZpY2VzX3RhYmxlX21ldGhvZCIsICJzZXJ2aWNlc190YWJsZV9hY3Rpb25zIl0sICJwb3NpdGlvbnMiOiBbNCwgNCwgNF0sICJpdGVtcyI6IFtbeyJuYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAidHlwZSI6ICJUZXh0IiwgImRhdGEiOiB7InRleHQiOiAiYXBwMS5leGFtcGxlLmNvbSJ9fSwgeyJtZXRob2QiOiAic2NoZWR1bGVyIiwgInR5cGUiOiAiVGV4dCIsICJkYXRhIjogeyJ0ZXh0IjogInNjaGVkdWxlciJ9fSwgeyJ0eXBlIjogIkJ1dHRvbkdyb3VwIiwgImRhdGEiOiB7ImJ1dHRvbnMiOiBbeyJpZCI6ICJvcGVuLW1vZGFsLXNldHRpbmdzLTAiLCAidGV4dCI6ICJzZXR0aW5ncyIsICJoaWRlVGV4dCI6IHRydWUsICJjb2xvciI6ICJpbmZvIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInNldHRpbmdzIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtbWFuYWdlLTAiLCAidGV4dCI6ICJtYW5hZ2UiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAic3VjY2VzcyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnZWFyIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAiZGF0YS1pcy1kcmFmdCI6ICJubyJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kcmFmdC0wIiwgInRleHQiOiAib25saW5lIiwgImhpZGVUZXh0IjogdHJ1ZSwgImNvbG9yIjogImN5YW4iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAiZ2xvYmUiLCAiaWNvbkNvbG9yIjogIndoaXRlIn0sIHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAiYXBwMS5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kZWxldGUtMCIsICJ0ZXh0IjogImRlbGV0ZSIsICJkaXNhYmxlZCI6IHRydWUsICJoaWRlVGV4dCI6IHRydWUsICJjb2xvciI6ICJyZWQiLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAidHJhc2giLCAiaWNvbkNvbG9yIjogIndoaXRlIn1dfX1dLCBbeyJuYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJ3d3cuZXhhbXBsZS5jb20ifX0sIHsibWV0aG9kIjogInNjaGVkdWxlciIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJzY2hlZHVsZXIifX0sIHsidHlwZSI6ICJCdXR0b25Hcm91cCIsICJkYXRhIjogeyJidXR0b25zIjogW3siaWQiOiAib3Blbi1tb2RhbC1zZXR0aW5ncy0xIiwgInRleHQiOiAic2V0dGluZ3MiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAiaW5mbyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJzZXR0aW5ncyIsICJpY29uQ29sb3IiOiAid2hpdGUifSwgeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtbWFuYWdlLTEiLCAidGV4dCI6ICJtYW5hZ2UiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAic3VjY2VzcyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnZWFyIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJkYXRhLWlzLWRyYWZ0IjogIm5vIn0sICJpZCI6ICJvcGVuLW1vZGFsLWRyYWZ0LTEiLCAidGV4dCI6ICJvbmxpbmUiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAiY3lhbiIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnbG9iZSIsICJpY29uQ29sb3IiOiAid2hpdGUifSwgeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtZGVsZXRlLTEiLCAidGV4dCI6ICJkZWxldGUiLCAiZGlzYWJsZWQiOiB0cnVlLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAicmVkIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInRyYXNoIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9XX19XV0sICJmaWx0ZXJzIjogW3siZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAia2V5d29yZCIsICJ0eXBlIjogImtleXdvcmQiLCAidmFsdWUiOiAiIiwgImtleXMiOiBbIm5hbWUiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgInZhbHVlIjogIiIsICJ0eXBlIjogInRleHQiLCAibmFtZSI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgImxhYmVsIjogInNlcnZpY2VzX3NlYXJjaCIsICJwbGFjZWhvbGRlciI6ICJpbnBfa2V5d29yZCIsICJpc0NsaXBib2FyZCI6IGZhbHNlLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX3NlYXJjaF9kZXNjIiwgImljb25OYW1lIjogImluZm8ifV0sICJjb2x1bW5zIjogeyJwYyI6IDMsICJ0YWJsZXQiOiA0LCAibW9iaWxlIjogMTJ9fX0sIHsiZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAibWV0aG9kIiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJtZXRob2QiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbInNjaGVkdWxlciJdLCAibmFtZSI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgIm9ubHlEb3duIjogdHJ1ZSwgImxhYmVsIjogInNlcnZpY2VzX21ldGhvZHMiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX21ldGhvZHNfZGVzYyIsICJpY29uTmFtZSI6ICJpbmZvIn1dLCAiY29sdW1ucyI6IHsicGMiOiAzLCAidGFibGV0IjogNCwgIm1vYmlsZSI6IDEyfX19LCB7ImZpbHRlciI6ICJ0YWJsZSIsICJmaWx0ZXJOYW1lIjogImRyYWZ0IiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJkcmFmdCJdLCAiZmllbGQiOiB7ImlkIjogInNlcnZpY2VzLWRyYWZ0IiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbImFsbCIsICJvbmxpbmUiLCAiZHJhZnQiXSwgIm5hbWUiOiAic2VydmljZXMtZHJhZnQiLCAib25seURvd24iOiB0cnVlLCAibGFiZWwiOiAic2VydmljZXNfZHJhZnQiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX2RyYWZ0X2Rlc2MiLCAiaWNvbk5hbWUiOiAiaW5mbyJ9XSwgImNvbHVtbnMiOiB7InBjIjogMywgInRhYmxldCI6IDQsICJtb2JpbGUiOiAxMn19fV19fV19XQ"
|
||||
></div>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="services.js"></script>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { createApp } from "vue";
|
||||
import { createPinia } from "pinia";
|
||||
import { getI18n } from "@utils/lang.js";
|
||||
import Services from "./services.vue";
|
||||
import Services from "./Services.vue";
|
||||
|
||||
const pinia = createPinia();
|
||||
|
||||
|
|
|
|||
|
|
@ -179,7 +179,6 @@ body {
|
|||
@apply font-bold text-red-500 absolute;
|
||||
}
|
||||
|
||||
|
||||
.input-error-dropdown-msg {
|
||||
@apply text-red-500 text-sm mb-0 font-semibold leading-normal tracking-normal;
|
||||
}
|
||||
|
|
@ -305,7 +304,7 @@ body {
|
|||
}
|
||||
|
||||
.open.select-dropdown-container,
|
||||
.open.list-dropdown-container{
|
||||
.open.list-dropdown-container {
|
||||
animation: dropOpen 0.1s linear;
|
||||
}
|
||||
|
||||
|
|
@ -540,7 +539,6 @@ body {
|
|||
@apply mt-4 rounded border border-gray-500/50 dark:border-gray-500 p-4 sm:gap-x-8 gap-y-8 col-span-12 grid grid-cols-12 w-full relative bg-gray-200/50 dark:bg-gray-900/10;
|
||||
}
|
||||
|
||||
|
||||
/* MESSAGE */
|
||||
.msg-container {
|
||||
@apply col-span-12 w-full;
|
||||
|
|
@ -1131,7 +1129,6 @@ body {
|
|||
|
||||
/* BTN GROUP */
|
||||
|
||||
|
||||
.button-group-content {
|
||||
@apply flex justify-center items-center mx-4;
|
||||
}
|
||||
|
|
@ -1148,6 +1145,10 @@ body {
|
|||
@apply flex justify-center items-center mt-4 mx-4;
|
||||
}
|
||||
|
||||
.button-group-table {
|
||||
@apply col-span-12 flex justify-start items-center mx-0;
|
||||
}
|
||||
|
||||
/* LIST COMPONENT */
|
||||
|
||||
.list-pairs-container {
|
||||
|
|
@ -1368,38 +1369,6 @@ body {
|
|||
@apply flex justify-center items-end leading-none tracking-wide dark:brightness-90 inline-block font-bold text-center text-white uppercase align-middle transition-all rounded-lg cursor-pointer leading-normal ease-in shadow-xs hover:-translate-y-px active:opacity-85 hover:shadow-md disabled:cursor-not-allowed dark:disabled:text-gray-300 disabled:text-gray-700 disabled:bg-gray-400 disabled:border-gray-400/0 dark:disabled:bg-gray-700 dark:disabled:border-gray-700/0 disabled:hover:translate-y-0 disabled:hover:bg-gray-400 disabled:hover:border-gray-400/0 dark:disabled:hover:translate-y-0 dark:disabled:hover:bg-gray-700 dark:disabled:hover:border-gray-700/0;
|
||||
}
|
||||
|
||||
.btn.close:not([disabled]) {
|
||||
@apply bg-white text-red-500 border border-red-500 hover:border-red-500/80 focus:border-red-500/80 hover:text-red-500/80 focus:text-red-500/80;
|
||||
}
|
||||
|
||||
.btn.delete:not([disabled]),
|
||||
.btn.error:not([disabled]) {
|
||||
@apply bg-red-500 hover:bg-red-500/80 focus:bg-red-500/80;
|
||||
}
|
||||
|
||||
.btn.valid:not([disabled]),
|
||||
.btn.success:not([disabled]) {
|
||||
@apply bg-green-500 hover:bg-green-500/80 focus:bg-green-500/80;
|
||||
}
|
||||
|
||||
.btn.edit:not([disabled]),
|
||||
.btn.warning:not([disabled]) {
|
||||
@apply bg-yellow-500 hover:bg-yellow-500/80 focus:bg-yellow-500/80;
|
||||
}
|
||||
|
||||
.btn.info:not([disabled]),
|
||||
.btn.load:not([disabled]) {
|
||||
@apply bg-sky-500 hover:bg-sky-500/80 focus:bg-sky-500/80;
|
||||
}
|
||||
|
||||
.btn.primary:not([disabled]) {
|
||||
@apply bg-primary hover:bg-primary/80 focus:bg-primary/80;
|
||||
}
|
||||
|
||||
.btn.secondary:not([disabled]) {
|
||||
@apply bg-secondary hover:bg-secondary/80 focus:bg-secondary/80;
|
||||
}
|
||||
|
||||
.btn.xl {
|
||||
@apply px-6 py-3;
|
||||
}
|
||||
|
|
@ -1909,6 +1878,158 @@ body {
|
|||
@apply text-lime-600;
|
||||
}
|
||||
|
||||
/* BUTTON BACKGROUND COLOR MODIFIER */
|
||||
|
||||
.btn.close:not([disabled]) {
|
||||
@apply bg-white text-red-500 border border-red-500 hover:border-red-500/80 focus:border-red-500/80 hover:text-red-500/80 focus:text-red-500/80;
|
||||
}
|
||||
|
||||
.btn.delete:not([disabled]),
|
||||
.btn.error:not([disabled]),
|
||||
.btn.red:not([disabled]) {
|
||||
@apply bg-red-500 hover:bg-red-500/80 focus:bg-red-500/80;
|
||||
}
|
||||
|
||||
.btn.valid:not([disabled]),
|
||||
.btn.success:not([disabled]),
|
||||
.btn.green:not([disabled]) {
|
||||
@apply bg-green-500 hover:bg-green-500/80 focus:bg-green-500/80;
|
||||
}
|
||||
|
||||
.btn.edit:not([disabled]),
|
||||
.btn.warning:not([disabled]),
|
||||
.btn.yellow:not([disabled]) {
|
||||
@apply bg-yellow-500 hover:bg-yellow-500/80 focus:bg-yellow-500/80;
|
||||
}
|
||||
|
||||
.btn.info:not([disabled]),
|
||||
.btn.load:not([disabled]) {
|
||||
@apply bg-sky-500 hover:bg-sky-500/80 focus:bg-sky-500/80;
|
||||
}
|
||||
|
||||
.btn.primary:not([disabled]) {
|
||||
@apply bg-primary hover:bg-primary/80 focus:bg-primary/80;
|
||||
}
|
||||
|
||||
.btn.secondary:not([disabled]) {
|
||||
@apply bg-secondary hover:bg-secondary/80 focus:bg-secondary/80;
|
||||
}
|
||||
|
||||
.btn.purple:not([disabled]) {
|
||||
@apply bg-purple-500 hover:bg-purple-500/80 focus:bg-purple-500/80;
|
||||
}
|
||||
|
||||
.btn.orange:not([disabled]) {
|
||||
@apply bg-orange-500 hover:bg-orange-500/80 focus:bg-orange-500/80;
|
||||
}
|
||||
|
||||
.btn.blue:not([disabled]) {
|
||||
@apply bg-blue-500 hover:bg-blue-500/80 focus:bg-blue-500/80;
|
||||
}
|
||||
|
||||
.btn.gray:not([disabled]) {
|
||||
@apply bg-gray-500 hover:bg-gray-500/80 focus:bg-gray-500/80;
|
||||
}
|
||||
|
||||
.btn.dark:not([disabled]) {
|
||||
@apply bg-slate-500 hover:bg-gray-500/80 focus:bg-gray-500/80;
|
||||
}
|
||||
|
||||
.btn.amber:not([disabled]) {
|
||||
@apply bg-amber-500 hover:bg-amber-500/80 focus:bg-amber-500/80;
|
||||
}
|
||||
|
||||
.btn.emerald:not([disabled]) {
|
||||
@apply bg-emerald-500 hover:bg-emerald-500/80 focus:bg-emerald-500/80;
|
||||
}
|
||||
|
||||
.btn.teal:not([disabled]) {
|
||||
@apply bg-teal-500 hover:bg-teal-500/80 focus:bg-teal-500/80;
|
||||
}
|
||||
|
||||
.btn.indigo:not([disabled]) {
|
||||
@apply bg-indigo-500 hover:bg-indigo-500/80 focus:bg-indigo-500/80;
|
||||
}
|
||||
|
||||
.btn.cyan:not([disabled]) {
|
||||
@apply bg-cyan-500 hover:bg-cyan-500/80 focus:bg-cyan-500/80;
|
||||
}
|
||||
|
||||
.btn.sky:not([disabled]) {
|
||||
@apply bg-sky-500 hover:bg-sky-500/80 focus:bg-sky-500/80;
|
||||
}
|
||||
|
||||
.btn.pink:not([disabled]) {
|
||||
@apply bg-pink-500 hover:bg-pink-500/80 focus:bg-pink-500/80;
|
||||
}
|
||||
|
||||
.btn.lime:not([disabled]) {
|
||||
@apply bg-lime-500 hover:bg-lime-500/80 focus:bg-lime-500/80;
|
||||
}
|
||||
|
||||
.btn.purple-darker:not([disabled]) {
|
||||
@apply bg-purple-600 hover:bg-purple-600/80 focus:bg-purple-600/80;
|
||||
}
|
||||
|
||||
.btn.green-darker:not([disabled]) {
|
||||
@apply bg-green-700 hover:bg-green-700/80 focus:bg-green-700/80;
|
||||
}
|
||||
|
||||
.btn.red-darker:not([disabled]) {
|
||||
@apply bg-red-700 hover:bg-red-700/80 focus:bg-red-700/80;
|
||||
}
|
||||
|
||||
.btn.orange-darker:not([disabled]) {
|
||||
@apply bg-orange-600 hover:bg-orange-600/80 focus:bg-orange-600/80;
|
||||
}
|
||||
|
||||
.btn.blue-darker:not([disabled]) {
|
||||
@apply bg-blue-600 hover:bg-blue-600/80 focus:bg-blue-600/80 dark:bg-blue-500 dark:hover:bg-blue-500/80 dark:focus:bg-blue-500/80;
|
||||
}
|
||||
|
||||
.btn.yellow-darker:not([disabled]) {
|
||||
@apply bg-yellow-600 hover:bg-yellow-600/80 focus:bg-yellow-600/80;
|
||||
}
|
||||
|
||||
.btn.gray-darker:not([disabled]) {
|
||||
@apply bg-gray-600 hover:bg-gray-600/80 focus:bg-gray-600/80;
|
||||
}
|
||||
|
||||
.btn.dark-darker:not([disabled]) {
|
||||
@apply bg-slate-600 hover:bg-slate-600/80 focus:bg-slate-600/80 dark:bg-slate-500 dark:hover:bg-slate-500/80 dark:focus:bg-slate-500/80;
|
||||
}
|
||||
|
||||
.btn.amber-darker:not([disabled]) {
|
||||
@apply bg-amber-600 hover:bg-amber-600/80 focus:bg-amber-600/80;
|
||||
}
|
||||
|
||||
.btn.emerald-darker:not([disabled]) {
|
||||
@apply bg-emerald-600 hover:bg-emerald-600/80 focus:bg-emerald-600/80;
|
||||
}
|
||||
|
||||
.btn.teal-darker:not([disabled]) {
|
||||
@apply bg-teal-600 hover:bg-teal-600/80 focus:bg-teal-600/80;
|
||||
}
|
||||
|
||||
.btn.indigo-darker:not([disabled]) {
|
||||
@apply bg-indigo-600 hover:bg-indigo-600/80 focus:bg-indigo-600/80;
|
||||
}
|
||||
|
||||
.btn.cyan-darker:not([disabled]) {
|
||||
@apply bg-cyan-600 hover:bg-cyan-600/80 focus:bg-cyan-600/80;
|
||||
}
|
||||
|
||||
.btn.sky-darker:not([disabled]) {
|
||||
@apply bg-sky-700 hover:bg-sky-700/80 focus:bg-sky-700/80;
|
||||
}
|
||||
|
||||
.btn.pink-darker:not([disabled]) {
|
||||
@apply bg-pink-600 hover:bg-pink-600/80 focus:bg-pink-600/80;
|
||||
}
|
||||
|
||||
.btn.lime-darker:not([disabled]) {
|
||||
@apply bg-lime-600 hover:bg-lime-600/80 focus:bg-lime-600/80;
|
||||
}
|
||||
/* BACKGROUND COLOR MODIFIER */
|
||||
|
||||
.bg-el {
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -3,8 +3,8 @@ const plugin = require("tailwindcss/plugin");
|
|||
/** @type {import('tailwindcss').Config} */
|
||||
export default {
|
||||
content: [
|
||||
"./src/pages/**/*.{js,vue,ts,jsx,tsx,mdx, html}",
|
||||
"./src/components/**/*.{js,vue,ts,jsx,tsx,mdx}",
|
||||
"./dashboard/pages/**/*.{js,vue,ts,jsx,tsx,mdx, html}",
|
||||
"./dashboard/components/**/*.{js,vue,ts,jsx,tsx,mdx}",
|
||||
"../setup/src/*.{js,vue,ts,jsx,tsx,mdx}",
|
||||
],
|
||||
safelist: [
|
||||
|
|
|
|||
|
|
@ -17,22 +17,16 @@
|
|||
"type": "Table",
|
||||
"data": {
|
||||
"title": "services_table_title",
|
||||
"minWidth": "lg",
|
||||
"minWidth": "md",
|
||||
"header": [
|
||||
"services_table_name",
|
||||
"services_table_method",
|
||||
"services_table_settings",
|
||||
"services_table_manage",
|
||||
"services_table_is_draft",
|
||||
"services_table_delete"
|
||||
"services_table_actions"
|
||||
],
|
||||
"positions": [
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2,
|
||||
2
|
||||
4,
|
||||
4,
|
||||
4
|
||||
],
|
||||
"items": [
|
||||
[
|
||||
|
|
@ -51,58 +45,57 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"type": "ButtonGroup",
|
||||
"data": {
|
||||
"id": "open-modal-settings-0",
|
||||
"text": "settings",
|
||||
"hideText": false,
|
||||
" color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com"
|
||||
},
|
||||
"id": "open-modal-manage-0",
|
||||
"text": "manage",
|
||||
"hideText": false,
|
||||
" color": "green",
|
||||
"size": "normal",
|
||||
"iconName": "manage"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com",
|
||||
"data-is-draft": "no"
|
||||
},
|
||||
"id": "open-modal-draft-0",
|
||||
"text": "online",
|
||||
"hideText": false,
|
||||
" color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "online"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com"
|
||||
},
|
||||
"id": "open-modal-delete-0",
|
||||
"text": "delete",
|
||||
"disabled": true,
|
||||
"hideText": false,
|
||||
" color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash"
|
||||
"buttons": [
|
||||
{
|
||||
"id": "open-modal-settings-0",
|
||||
"text": "settings",
|
||||
"hideText": true,
|
||||
"color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com"
|
||||
},
|
||||
"id": "open-modal-manage-0",
|
||||
"text": "manage",
|
||||
"hideText": true,
|
||||
"color": "success",
|
||||
"size": "normal",
|
||||
"iconName": "gear",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com",
|
||||
"data-is-draft": "no"
|
||||
},
|
||||
"id": "open-modal-draft-0",
|
||||
"text": "online",
|
||||
"hideText": true,
|
||||
"color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "globe",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "app1.example.com"
|
||||
},
|
||||
"id": "open-modal-delete-0",
|
||||
"text": "delete",
|
||||
"disabled": true,
|
||||
"hideText": true,
|
||||
"color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash",
|
||||
"iconColor": "white"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
|
|
@ -122,58 +115,57 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"type": "ButtonGroup",
|
||||
"data": {
|
||||
"id": "open-modal-settings-1",
|
||||
"text": "settings",
|
||||
"hideText": false,
|
||||
" color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com"
|
||||
},
|
||||
"id": "open-modal-manage-1",
|
||||
"text": "manage",
|
||||
"hideText": false,
|
||||
" color": "green",
|
||||
"size": "normal",
|
||||
"iconName": "manage"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com",
|
||||
"data-is-draft": "no"
|
||||
},
|
||||
"id": "open-modal-draft-1",
|
||||
"text": "online",
|
||||
"hideText": false,
|
||||
" color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "online"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com"
|
||||
},
|
||||
"id": "open-modal-delete-1",
|
||||
"text": "delete",
|
||||
"disabled": true,
|
||||
"hideText": false,
|
||||
" color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash"
|
||||
"buttons": [
|
||||
{
|
||||
"id": "open-modal-settings-1",
|
||||
"text": "settings",
|
||||
"hideText": true,
|
||||
"color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com"
|
||||
},
|
||||
"id": "open-modal-manage-1",
|
||||
"text": "manage",
|
||||
"hideText": true,
|
||||
"color": "success",
|
||||
"size": "normal",
|
||||
"iconName": "gear",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com",
|
||||
"data-is-draft": "no"
|
||||
},
|
||||
"id": "open-modal-draft-1",
|
||||
"text": "online",
|
||||
"hideText": true,
|
||||
"color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "globe",
|
||||
"iconColor": "white"
|
||||
},
|
||||
{
|
||||
"attrs": {
|
||||
"data-server-name": "www.example.com"
|
||||
},
|
||||
"id": "open-modal-delete-1",
|
||||
"text": "delete",
|
||||
"disabled": true,
|
||||
"hideText": true,
|
||||
"color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash",
|
||||
"iconColor": "white"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -68,57 +68,50 @@ def get_services_list(services):
|
|||
item.append({"method": server_method, "type": "Text", "data": {"text": server_method}})
|
||||
item.append(
|
||||
{
|
||||
"type": "Button",
|
||||
"type": "ButtonGroup",
|
||||
"data": {
|
||||
"id": f"open-modal-settings-{index}",
|
||||
"text": "settings",
|
||||
"hideText": False,
|
||||
" color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings",
|
||||
},
|
||||
}
|
||||
)
|
||||
item.append(
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {"data-server-name": server_name},
|
||||
"id": f"open-modal-manage-{index}",
|
||||
"text": "manage",
|
||||
"hideText": False,
|
||||
" color": "green",
|
||||
"size": "normal",
|
||||
"iconName": "manage",
|
||||
},
|
||||
}
|
||||
)
|
||||
item.append(
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {"data-server-name": server_name, "data-is-draft": "yes" if is_draft else "no"},
|
||||
"id": f"open-modal-draft-{index}",
|
||||
"text": "draft" if is_draft else "online",
|
||||
"hideText": False,
|
||||
" color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "draft" if is_draft else "online",
|
||||
},
|
||||
}
|
||||
)
|
||||
item.append(
|
||||
{
|
||||
"type": "Button",
|
||||
"data": {
|
||||
"attrs": {"data-server-name": server_name},
|
||||
"id": f"open-modal-delete-{index}",
|
||||
"text": "delete",
|
||||
"disabled": not is_deletable,
|
||||
"hideText": False,
|
||||
" color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash",
|
||||
"buttons": [
|
||||
{
|
||||
"id": f"open-modal-settings-{index}",
|
||||
"text": "settings",
|
||||
"hideText": True,
|
||||
"color": "info",
|
||||
"size": "normal",
|
||||
"iconName": "settings",
|
||||
"iconColor": "white",
|
||||
},
|
||||
{
|
||||
"attrs": {"data-server-name": server_name},
|
||||
"id": f"open-modal-manage-{index}",
|
||||
"text": "manage",
|
||||
"hideText": True,
|
||||
"color": "success",
|
||||
"size": "normal",
|
||||
"iconName": "gear",
|
||||
"iconColor": "white",
|
||||
},
|
||||
{
|
||||
"attrs": {"data-server-name": server_name, "data-is-draft": "yes" if is_draft else "no"},
|
||||
"id": f"open-modal-draft-{index}",
|
||||
"text": "draft" if is_draft else "online",
|
||||
"hideText": True,
|
||||
"color": "cyan",
|
||||
"size": "normal",
|
||||
"iconName": "pen" if is_draft else "globe",
|
||||
"iconColor": "white",
|
||||
},
|
||||
{
|
||||
"attrs": {"data-server-name": server_name},
|
||||
"id": f"open-modal-delete-{index}",
|
||||
"text": "delete",
|
||||
"disabled": not is_deletable,
|
||||
"hideText": True,
|
||||
"color": "red",
|
||||
"size": "normal",
|
||||
"iconName": "trash",
|
||||
"iconColor": "white",
|
||||
},
|
||||
]
|
||||
},
|
||||
}
|
||||
)
|
||||
|
|
@ -141,14 +134,11 @@ def services_builder(services):
|
|||
"widgets": [
|
||||
title_widget("services_title"),
|
||||
table_widget(
|
||||
positions=[2, 2, 2, 2, 2, 2],
|
||||
positions=[4, 4, 4],
|
||||
header=[
|
||||
"services_table_name",
|
||||
"services_table_method",
|
||||
"services_table_settings",
|
||||
"services_table_manage",
|
||||
"services_table_is_draft",
|
||||
"services_table_delete",
|
||||
"services_table_actions",
|
||||
],
|
||||
items=services_list,
|
||||
filters=[
|
||||
|
|
@ -220,7 +210,7 @@ def services_builder(services):
|
|||
},
|
||||
},
|
||||
],
|
||||
minWidth="lg",
|
||||
minWidth="md",
|
||||
title="services_table_title",
|
||||
),
|
||||
],
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
W3sidHlwZSI6ICJjYXJkIiwgImNvbnRhaW5lckNvbHVtbnMiOiB7InBjIjogMTIsICJ0YWJsZXQiOiAxMiwgIm1vYmlsZSI6IDEyfSwgIndpZGdldHMiOiBbeyJ0eXBlIjogIlRpdGxlIiwgImRhdGEiOiB7InRpdGxlIjogInNlcnZpY2VzX3RpdGxlIn19LCB7InR5cGUiOiAiVGFibGUiLCAiZGF0YSI6IHsidGl0bGUiOiAic2VydmljZXNfdGFibGVfdGl0bGUiLCAibWluV2lkdGgiOiAibGciLCAiaGVhZGVyIjogWyJzZXJ2aWNlc190YWJsZV9uYW1lIiwgInNlcnZpY2VzX3RhYmxlX21ldGhvZCIsICJzZXJ2aWNlc190YWJsZV9zZXR0aW5ncyIsICJzZXJ2aWNlc190YWJsZV9tYW5hZ2UiLCAic2VydmljZXNfdGFibGVfaXNfZHJhZnQiLCAic2VydmljZXNfdGFibGVfZGVsZXRlIl0sICJwb3NpdGlvbnMiOiBbMiwgMiwgMiwgMiwgMiwgMl0sICJpdGVtcyI6IFtbeyJuYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAidHlwZSI6ICJUZXh0IiwgImRhdGEiOiB7InRleHQiOiAiYXBwMS5leGFtcGxlLmNvbSJ9fSwgeyJtZXRob2QiOiAic2NoZWR1bGVyIiwgInR5cGUiOiAiVGV4dCIsICJkYXRhIjogeyJ0ZXh0IjogInNjaGVkdWxlciJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJpZCI6ICJvcGVuLW1vZGFsLXNldHRpbmdzLTAiLCAidGV4dCI6ICJzZXR0aW5ncyIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImluZm8iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAic2V0dGluZ3MifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAiYXBwMS5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1tYW5hZ2UtMCIsICJ0ZXh0IjogIm1hbmFnZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImdyZWVuIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogIm1hbmFnZSJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJhcHAxLmV4YW1wbGUuY29tIiwgImRhdGEtaXMtZHJhZnQiOiAibm8ifSwgImlkIjogIm9wZW4tbW9kYWwtZHJhZnQtMCIsICJ0ZXh0IjogIm9ubGluZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImN5YW4iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAib25saW5lIn19LCB7InR5cGUiOiAiQnV0dG9uIiwgImRhdGEiOiB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtZGVsZXRlLTAiLCAidGV4dCI6ICJkZWxldGUiLCAiZGlzYWJsZWQiOiB0cnVlLCAiaGlkZVRleHQiOiBmYWxzZSwgIiBjb2xvciI6ICJyZWQiLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAidHJhc2gifX1dLCBbeyJuYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJ3d3cuZXhhbXBsZS5jb20ifX0sIHsibWV0aG9kIjogInNjaGVkdWxlciIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJzY2hlZHVsZXIifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiaWQiOiAib3Blbi1tb2RhbC1zZXR0aW5ncy0xIiwgInRleHQiOiAic2V0dGluZ3MiLCAiaGlkZVRleHQiOiBmYWxzZSwgIiBjb2xvciI6ICJpbmZvIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInNldHRpbmdzIn19LCB7InR5cGUiOiAiQnV0dG9uIiwgImRhdGEiOiB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogInd3dy5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1tYW5hZ2UtMSIsICJ0ZXh0IjogIm1hbmFnZSIsICJoaWRlVGV4dCI6IGZhbHNlLCAiIGNvbG9yIjogImdyZWVuIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogIm1hbmFnZSJ9fSwgeyJ0eXBlIjogIkJ1dHRvbiIsICJkYXRhIjogeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20iLCAiZGF0YS1pcy1kcmFmdCI6ICJubyJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kcmFmdC0xIiwgInRleHQiOiAib25saW5lIiwgImhpZGVUZXh0IjogZmFsc2UsICIgY29sb3IiOiAiY3lhbiIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJvbmxpbmUifX0sIHsidHlwZSI6ICJCdXR0b24iLCAiZGF0YSI6IHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAid3d3LmV4YW1wbGUuY29tIn0sICJpZCI6ICJvcGVuLW1vZGFsLWRlbGV0ZS0xIiwgInRleHQiOiAiZGVsZXRlIiwgImRpc2FibGVkIjogdHJ1ZSwgImhpZGVUZXh0IjogZmFsc2UsICIgY29sb3IiOiAicmVkIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInRyYXNoIn19XV0sICJmaWx0ZXJzIjogW3siZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAia2V5d29yZCIsICJ0eXBlIjogImtleXdvcmQiLCAidmFsdWUiOiAiIiwgImtleXMiOiBbIm5hbWUiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgInZhbHVlIjogIiIsICJ0eXBlIjogInRleHQiLCAibmFtZSI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgImxhYmVsIjogInNlcnZpY2VzX3NlYXJjaCIsICJwbGFjZWhvbGRlciI6ICJpbnBfa2V5d29yZCIsICJpc0NsaXBib2FyZCI6IGZhbHNlLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX3NlYXJjaF9kZXNjIiwgImljb25OYW1lIjogImluZm8ifV0sICJjb2x1bW5zIjogeyJwYyI6IDMsICJ0YWJsZXQiOiA0LCAibW9iaWxlIjogMTJ9fX0sIHsiZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAibWV0aG9kIiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJtZXRob2QiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbInNjaGVkdWxlciJdLCAibmFtZSI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgIm9ubHlEb3duIjogdHJ1ZSwgImxhYmVsIjogInNlcnZpY2VzX21ldGhvZHMiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX21ldGhvZHNfZGVzYyIsICJpY29uTmFtZSI6ICJpbmZvIn1dLCAiY29sdW1ucyI6IHsicGMiOiAzLCAidGFibGV0IjogNCwgIm1vYmlsZSI6IDEyfX19LCB7ImZpbHRlciI6ICJ0YWJsZSIsICJmaWx0ZXJOYW1lIjogImRyYWZ0IiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJkcmFmdCJdLCAiZmllbGQiOiB7ImlkIjogInNlcnZpY2VzLWRyYWZ0IiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbImFsbCIsICJvbmxpbmUiLCAiZHJhZnQiXSwgIm5hbWUiOiAic2VydmljZXMtZHJhZnQiLCAib25seURvd24iOiB0cnVlLCAibGFiZWwiOiAic2VydmljZXNfZHJhZnQiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX2RyYWZ0X2Rlc2MiLCAiaWNvbk5hbWUiOiAiaW5mbyJ9XSwgImNvbHVtbnMiOiB7InBjIjogMywgInRhYmxldCI6IDQsICJtb2JpbGUiOiAxMn19fV19fV19XQ==
|
||||
W3sidHlwZSI6ICJjYXJkIiwgImNvbnRhaW5lckNvbHVtbnMiOiB7InBjIjogMTIsICJ0YWJsZXQiOiAxMiwgIm1vYmlsZSI6IDEyfSwgIndpZGdldHMiOiBbeyJ0eXBlIjogIlRpdGxlIiwgImRhdGEiOiB7InRpdGxlIjogInNlcnZpY2VzX3RpdGxlIn19LCB7InR5cGUiOiAiVGFibGUiLCAiZGF0YSI6IHsidGl0bGUiOiAic2VydmljZXNfdGFibGVfdGl0bGUiLCAibWluV2lkdGgiOiAibWQiLCAiaGVhZGVyIjogWyJzZXJ2aWNlc190YWJsZV9uYW1lIiwgInNlcnZpY2VzX3RhYmxlX21ldGhvZCIsICJzZXJ2aWNlc190YWJsZV9hY3Rpb25zIl0sICJwb3NpdGlvbnMiOiBbNCwgNCwgNF0sICJpdGVtcyI6IFtbeyJuYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAidHlwZSI6ICJUZXh0IiwgImRhdGEiOiB7InRleHQiOiAiYXBwMS5leGFtcGxlLmNvbSJ9fSwgeyJtZXRob2QiOiAic2NoZWR1bGVyIiwgInR5cGUiOiAiVGV4dCIsICJkYXRhIjogeyJ0ZXh0IjogInNjaGVkdWxlciJ9fSwgeyJ0eXBlIjogIkJ1dHRvbkdyb3VwIiwgImRhdGEiOiB7ImJ1dHRvbnMiOiBbeyJpZCI6ICJvcGVuLW1vZGFsLXNldHRpbmdzLTAiLCAidGV4dCI6ICJzZXR0aW5ncyIsICJoaWRlVGV4dCI6IHRydWUsICJjb2xvciI6ICJpbmZvIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInNldHRpbmdzIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtbWFuYWdlLTAiLCAidGV4dCI6ICJtYW5hZ2UiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAic3VjY2VzcyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnZWFyIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogImFwcDEuZXhhbXBsZS5jb20iLCAiZGF0YS1pcy1kcmFmdCI6ICJubyJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kcmFmdC0wIiwgInRleHQiOiAib25saW5lIiwgImhpZGVUZXh0IjogdHJ1ZSwgImNvbG9yIjogImN5YW4iLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAiZ2xvYmUiLCAiaWNvbkNvbG9yIjogIndoaXRlIn0sIHsiYXR0cnMiOiB7ImRhdGEtc2VydmVyLW5hbWUiOiAiYXBwMS5leGFtcGxlLmNvbSJ9LCAiaWQiOiAib3Blbi1tb2RhbC1kZWxldGUtMCIsICJ0ZXh0IjogImRlbGV0ZSIsICJkaXNhYmxlZCI6IHRydWUsICJoaWRlVGV4dCI6IHRydWUsICJjb2xvciI6ICJyZWQiLCAic2l6ZSI6ICJub3JtYWwiLCAiaWNvbk5hbWUiOiAidHJhc2giLCAiaWNvbkNvbG9yIjogIndoaXRlIn1dfX1dLCBbeyJuYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJ3d3cuZXhhbXBsZS5jb20ifX0sIHsibWV0aG9kIjogInNjaGVkdWxlciIsICJ0eXBlIjogIlRleHQiLCAiZGF0YSI6IHsidGV4dCI6ICJzY2hlZHVsZXIifX0sIHsidHlwZSI6ICJCdXR0b25Hcm91cCIsICJkYXRhIjogeyJidXR0b25zIjogW3siaWQiOiAib3Blbi1tb2RhbC1zZXR0aW5ncy0xIiwgInRleHQiOiAic2V0dGluZ3MiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAiaW5mbyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJzZXR0aW5ncyIsICJpY29uQ29sb3IiOiAid2hpdGUifSwgeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtbWFuYWdlLTEiLCAidGV4dCI6ICJtYW5hZ2UiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAic3VjY2VzcyIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnZWFyIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9LCB7ImF0dHJzIjogeyJkYXRhLXNlcnZlci1uYW1lIjogInd3dy5leGFtcGxlLmNvbSIsICJkYXRhLWlzLWRyYWZ0IjogIm5vIn0sICJpZCI6ICJvcGVuLW1vZGFsLWRyYWZ0LTEiLCAidGV4dCI6ICJvbmxpbmUiLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAiY3lhbiIsICJzaXplIjogIm5vcm1hbCIsICJpY29uTmFtZSI6ICJnbG9iZSIsICJpY29uQ29sb3IiOiAid2hpdGUifSwgeyJhdHRycyI6IHsiZGF0YS1zZXJ2ZXItbmFtZSI6ICJ3d3cuZXhhbXBsZS5jb20ifSwgImlkIjogIm9wZW4tbW9kYWwtZGVsZXRlLTEiLCAidGV4dCI6ICJkZWxldGUiLCAiZGlzYWJsZWQiOiB0cnVlLCAiaGlkZVRleHQiOiB0cnVlLCAiY29sb3IiOiAicmVkIiwgInNpemUiOiAibm9ybWFsIiwgImljb25OYW1lIjogInRyYXNoIiwgImljb25Db2xvciI6ICJ3aGl0ZSJ9XX19XV0sICJmaWx0ZXJzIjogW3siZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAia2V5d29yZCIsICJ0eXBlIjogImtleXdvcmQiLCAidmFsdWUiOiAiIiwgImtleXMiOiBbIm5hbWUiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgInZhbHVlIjogIiIsICJ0eXBlIjogInRleHQiLCAibmFtZSI6ICJzZXJ2aWNlcy1rZXl3b3JkIiwgImxhYmVsIjogInNlcnZpY2VzX3NlYXJjaCIsICJwbGFjZWhvbGRlciI6ICJpbnBfa2V5d29yZCIsICJpc0NsaXBib2FyZCI6IGZhbHNlLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX3NlYXJjaF9kZXNjIiwgImljb25OYW1lIjogImluZm8ifV0sICJjb2x1bW5zIjogeyJwYyI6IDMsICJ0YWJsZXQiOiA0LCAibW9iaWxlIjogMTJ9fX0sIHsiZmlsdGVyIjogInRhYmxlIiwgImZpbHRlck5hbWUiOiAibWV0aG9kIiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJtZXRob2QiXSwgImZpZWxkIjogeyJpZCI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbInNjaGVkdWxlciJdLCAibmFtZSI6ICJzZXJ2aWNlcy1tZXRob2RzIiwgIm9ubHlEb3duIjogdHJ1ZSwgImxhYmVsIjogInNlcnZpY2VzX21ldGhvZHMiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX21ldGhvZHNfZGVzYyIsICJpY29uTmFtZSI6ICJpbmZvIn1dLCAiY29sdW1ucyI6IHsicGMiOiAzLCAidGFibGV0IjogNCwgIm1vYmlsZSI6IDEyfX19LCB7ImZpbHRlciI6ICJ0YWJsZSIsICJmaWx0ZXJOYW1lIjogImRyYWZ0IiwgInR5cGUiOiAic2VsZWN0IiwgInZhbHVlIjogImFsbCIsICJrZXlzIjogWyJkcmFmdCJdLCAiZmllbGQiOiB7ImlkIjogInNlcnZpY2VzLWRyYWZ0IiwgInZhbHVlIjogImFsbCIsICJ2YWx1ZXMiOiBbImFsbCIsICJvbmxpbmUiLCAiZHJhZnQiXSwgIm5hbWUiOiAic2VydmljZXMtZHJhZnQiLCAib25seURvd24iOiB0cnVlLCAibGFiZWwiOiAic2VydmljZXNfZHJhZnQiLCAicG9wb3ZlcnMiOiBbeyJ0ZXh0IjogInNlcnZpY2VzX2RyYWZ0X2Rlc2MiLCAiaWNvbk5hbWUiOiAiaW5mbyJ9XSwgImNvbHVtbnMiOiB7InBjIjogMywgInRhYmxldCI6IDQsICJtb2JpbGUiOiAxMn19fV19fV19XQ==
|
||||
Loading…
Reference in a new issue