Compare commits
2 Commits
77de45b49b
...
2b7f63b907
| Author | SHA1 | Date |
|---|---|---|
|
|
2b7f63b907 | |
|
|
9a670c511d |
|
|
@ -17,7 +17,7 @@
|
|||
>
|
||||
<div class="group-container">
|
||||
<a-form-item ref="name" label="计划名称" name="taskName">
|
||||
<a-input v-model:value="submitForm.taskName" placeholder="请输入计划名称" />
|
||||
<a-input v-model:value="submitForm.taskName" placeholder="请输入计划名称" :disabled="props.workPlanStatus === 'detail'" />
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
|
|
@ -35,7 +35,7 @@
|
|||
|
||||
<a-form-item ref="workspaceId" label="选择项目" name="workspaceId">
|
||||
<div class="">
|
||||
<a-select v-model:value="submitForm.workspaceId" placeholder="请选择所属项目">
|
||||
<a-select v-model:value="submitForm.workspaceId" placeholder="请选择所属项目" :disabled="props.workPlanStatus === 'detail'" >
|
||||
<a-select-option
|
||||
v-for="(item, index) in workspaceList"
|
||||
:key="index"
|
||||
|
|
@ -60,7 +60,7 @@
|
|||
|
||||
<div class="select-item" v-show="submitForm.airLineId">
|
||||
<div class="item-name">{{ submitForm.taskAirLineName }}</div>
|
||||
<div class="item-operate" @click="selectAriLine">
|
||||
<div class="item-operate" @click="props.workPlanStatus =='create' ? selectAriLine() : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}">
|
||||
<MoreOutlined />
|
||||
<a-dropdown v-if="false">
|
||||
<MoreOutlined />
|
||||
|
|
@ -96,7 +96,7 @@
|
|||
|
||||
<div class="select-item" v-show="submitForm.taskDronePort">
|
||||
<div class="item-name">{{ submitForm.taskDronePortName }}</div>
|
||||
<div class="item-operate" @click="selectAircraft">
|
||||
<div class="item-operate" @click="props.workPlanStatus =='create' ? selectAircraft() : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}">
|
||||
<MoreOutlined />
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -115,7 +115,7 @@
|
|||
:class="
|
||||
submitForm.waylinePrecisionType == item.value ? 'radio-item-active' : 'radio-item'
|
||||
"
|
||||
@click="submitForm.waylinePrecisionType = item.value"
|
||||
@click="props.workPlanStatus =='create' ? submitForm.waylinePrecisionType = item.value : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}"
|
||||
>
|
||||
{{ item.label }}
|
||||
</div>
|
||||
|
|
@ -128,7 +128,7 @@
|
|||
v-for="(item, index) in periodicFormulaOptions"
|
||||
:key="index"
|
||||
:class="submitForm.taskType == item.value ? 'radio-item-active' : 'radio-item'"
|
||||
@click="submitForm.taskType = item.value"
|
||||
@click="props.workPlanStatus =='create' ? submitForm.taskType = item.value : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}"
|
||||
>
|
||||
{{ item.label }}
|
||||
</div>
|
||||
|
|
@ -145,6 +145,7 @@
|
|||
show-time
|
||||
placeholder="选择时间"
|
||||
@change="onOnceTimeChange"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
|
|
@ -156,6 +157,7 @@
|
|||
valueFormat="YYYY-M-D"
|
||||
style="width: 100%"
|
||||
@change="onRepeatDateChange"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
|
|
@ -166,6 +168,7 @@
|
|||
valueFormat="H:m:s"
|
||||
style="width: 100%"
|
||||
@change="onRepeatTimeChange"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
|
|
@ -180,6 +183,7 @@
|
|||
ref="select"
|
||||
v-model:value="repeatTime.type"
|
||||
@change="handleRepeatTypeChange"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
>
|
||||
<a-select-option value="date">天</a-select-option>
|
||||
<!-- <a-select-option value="week">周</a-select-option> -->
|
||||
|
|
@ -204,14 +208,44 @@
|
|||
<div style="flex: 1">智能巡检</div>
|
||||
<div>
|
||||
<a-switch
|
||||
v-model:checked="submitForm.aiInspection"
|
||||
:checked="submitForm.aiInspection == 'true'"
|
||||
checked-color="#3A57E8"
|
||||
un-checked-color="#cccccc"
|
||||
@change="changeAiInspection"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="submitForm.aiInspection == 'true'">
|
||||
<a-form-item ref="algoInstanceld" label="选择AI算法实例" name="algoInstanceld">
|
||||
<div class="">
|
||||
<a-select v-model:value="submitForm.algoInstanceld" placeholder="请选择所属项目" :disabled="props.workPlanStatus === 'detail'" >
|
||||
<a-select-option
|
||||
v-for="(item, index) in aiList"
|
||||
:key="index"
|
||||
:value="item.id"
|
||||
>
|
||||
{{ item.displayScheme }}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</div>
|
||||
</a-form-item>
|
||||
|
||||
<a-form-item ref="name" label="警告提示标题" name="">
|
||||
<a-input v-model:value="submitForm.warningTitle" placeholder="请输入警告提示标题" :disabled="props.workPlanStatus === 'detail'" />
|
||||
</a-form-item>
|
||||
|
||||
<a-form-item ref="name" label="警告提示内容" name="">
|
||||
<a-textarea rows="4" v-model:value="submitForm.warningContent" style="resize: none;" placeholder="请输入警告提示内容" :disabled="props.workPlanStatus === 'detail'" />
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="group-container">
|
||||
|
||||
|
||||
<a-form-item ref="outOfContact" label="返航高度(相对机场返航高度)" name="outOfContact">
|
||||
<div class="return-height">
|
||||
<div @click="submitForm.returnAltitude -= 100">-100</div>
|
||||
|
|
@ -223,6 +257,7 @@
|
|||
size="small"
|
||||
v-model:value="submitForm.returnAltitude"
|
||||
style="width: 40px"
|
||||
:disabled="props.workPlanStatus === 'detail'"
|
||||
></a-input>
|
||||
</div>
|
||||
<div>m</div>
|
||||
|
|
@ -240,7 +275,7 @@
|
|||
:class="
|
||||
submitForm.lossOfControlAction == item.value ? 'radio-item-active' : 'radio-item'
|
||||
"
|
||||
@click="submitForm.lossOfControlAction = item.value"
|
||||
@click="props.workPlanStatus =='create' ? submitForm.lossOfControlAction = item.value : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}"
|
||||
>
|
||||
{{ item.label }}
|
||||
</div>
|
||||
|
|
@ -260,7 +295,8 @@
|
|||
:class="
|
||||
submitForm.continuationMode == item.value ? 'radio-item-active' : 'radio-item'
|
||||
"
|
||||
@click="submitForm.continuationMode = item.value"
|
||||
@click="props.workPlanStatus =='create' ? submitForm.continuationMode = item.value : null" :style="{'cursor' : props.workPlanStatus =='create' ? '' : 'not-allowed'}"
|
||||
|
||||
>
|
||||
{{ item.label }}
|
||||
</div>
|
||||
|
|
@ -342,6 +378,7 @@
|
|||
import axios from 'axios';
|
||||
import JSZip from 'jszip';
|
||||
import { GetMediaFile } from '@/api/demo/mediaLibrary';
|
||||
import {GetAlgoInstanceList} from '@/api/demo/aiinstance';
|
||||
import { XMLParser, XMLBuilder } from 'fast-xml-parser';
|
||||
import { Modal, message } from 'ant-design-vue';
|
||||
import { useRoute, useRouter } from 'vue-router';
|
||||
|
|
@ -376,7 +413,6 @@
|
|||
returnAltitude: 100,
|
||||
lossOfControlAction: 1,
|
||||
continuationMode: 0,
|
||||
aiInspection: null,
|
||||
status: 0,
|
||||
periodicFormula: null,
|
||||
airLineId: null,
|
||||
|
|
@ -395,6 +431,10 @@
|
|||
flightId: null,
|
||||
reason: null,
|
||||
externalTaskId: null,
|
||||
aiInspection: null, // ai算法
|
||||
algoInstanceld:null,
|
||||
warningTitle:null,
|
||||
warningContent:null,
|
||||
}),
|
||||
},
|
||||
editMode: {
|
||||
|
|
@ -418,7 +458,6 @@
|
|||
returnAltitude: 20,
|
||||
lossOfControlAction: 1,
|
||||
continuationMode: 0,
|
||||
aiInspection: null,
|
||||
status: 0,
|
||||
periodicFormula: null,
|
||||
airLineId: null,
|
||||
|
|
@ -437,6 +476,10 @@
|
|||
flightId: null,
|
||||
reason: null,
|
||||
externalTaskId: null,
|
||||
aiInspection: null, // ai算法
|
||||
algoInstanceld:null,
|
||||
warningTitle:null,
|
||||
warningContent:null,
|
||||
});
|
||||
|
||||
// 获取workspace
|
||||
|
|
@ -444,6 +487,7 @@
|
|||
|
||||
const loadWorkspaceList = async () => {
|
||||
let res = await getWorkspaceList({ isjoin: 0 });
|
||||
|
||||
workspaceList.value = res;
|
||||
|
||||
if (res) {
|
||||
|
|
@ -454,6 +498,20 @@
|
|||
|
||||
loadWorkspaceList();
|
||||
|
||||
|
||||
// 获取AI算法实例实例
|
||||
const aiList = ref([]);
|
||||
|
||||
const loadAIList = async()=>{
|
||||
let res = await GetAlgoInstanceList({page:1,size:999});
|
||||
|
||||
aiList.value = res.items;
|
||||
|
||||
console.log("aiLlist",aiList.value,)
|
||||
}
|
||||
|
||||
loadAIList();
|
||||
|
||||
const weekdays = ref([
|
||||
{
|
||||
label: '周日',
|
||||
|
|
@ -737,6 +795,7 @@
|
|||
taskName: [{ required: true, message: '计划名称不能为空!', trigger: 'blur' }],
|
||||
workspaceId: [{ required: true, message: '请选择项目!', trigger: 'blur' }],
|
||||
onceTime: [{ required: true, message: '时间不能为空!', trigger: 'blur' }],
|
||||
algoInstanceld:[{ required: true, message: '算法实例不能为空!', trigger: 'blur' }]
|
||||
};
|
||||
|
||||
const onSubmit = async () => {
|
||||
|
|
@ -759,7 +818,8 @@
|
|||
|
||||
if (props.formData) {
|
||||
// 编辑
|
||||
let data = { ...submitForm.value, ...patrol.value };
|
||||
// let data = { ...submitForm.value, ...patrol.value };
|
||||
let data = { ...submitForm.value };
|
||||
|
||||
// let res = editTask(data);
|
||||
addTask(data).then((res) => {
|
||||
|
|
@ -775,9 +835,9 @@
|
|||
submitForm.value.externalTaskId = paramValue;
|
||||
}
|
||||
// 创建
|
||||
|
||||
const query = {
|
||||
...submitForm.value,
|
||||
...patrol.value,
|
||||
};
|
||||
|
||||
addTask(query).then((res) => {
|
||||
|
|
@ -921,7 +981,8 @@
|
|||
const changeAiInspection = (val) => {
|
||||
|
||||
if (val) {
|
||||
emit('intelligentPatrol');
|
||||
submitForm.value.aiInspection = 'true';
|
||||
// emit('intelligentPatrol');
|
||||
}else{
|
||||
submitForm.value.aiInspection = null;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,8 @@
|
|||
></createWorkPlan>
|
||||
</div>
|
||||
<!-- 智能巡检 -->
|
||||
<div class="patrol-box" v-if="patrolShow">
|
||||
<!-- v-if="patrolShow" -->
|
||||
<div class="patrol-box" v-if="false">
|
||||
<Patrol type="plan" @changePatrol="patrolShow = false"/>
|
||||
</div>
|
||||
|
||||
|
|
@ -242,8 +243,10 @@ const checkDronePort = (item)=>{
|
|||
}
|
||||
|
||||
|
||||
const toCreateWorkPlan = (data)=> {
|
||||
formData.value = data;
|
||||
const toCreateWorkPlan = (data)=> {
|
||||
if(data){
|
||||
formData.value = data;
|
||||
}
|
||||
workPlanFormShow.value = true;
|
||||
if(data){
|
||||
workPlanStatus.value = "edit"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,67 @@
|
|||
// vite.config.ts
|
||||
import { defineApplicationConfig } from "file:///E:/projects/DiKongGanZhiPingTai/internal/vite-config/dist/index.mjs";
|
||||
import { mars3dPlugin } from "file:///E:/projects/DiKongGanZhiPingTai/node_modules/.pnpm/registry.npmmirror.com+vite-plugin-mars3d@3.1.3_rollup@2.79.2/node_modules/vite-plugin-mars3d/dist/index.js";
|
||||
var vite_config_default = defineApplicationConfig({
|
||||
overrides: {
|
||||
optimizeDeps: {
|
||||
include: [
|
||||
"echarts/core",
|
||||
"echarts/charts",
|
||||
"echarts/components",
|
||||
"echarts/renderers",
|
||||
"qrcode",
|
||||
"@iconify/iconify",
|
||||
"ant-design-vue/es/locale/zh_CN",
|
||||
"ant-design-vue/es/locale/en_US",
|
||||
"@/../lib/vform/designer.umd.js"
|
||||
]
|
||||
},
|
||||
build: {
|
||||
/* 其他build生产打包配置省略 */
|
||||
//...
|
||||
target: "esnext",
|
||||
commonjsOptions: {
|
||||
include: [/node_modules|lib/, /node_modules|packages/]
|
||||
//这里记得把lib目录加进来,否则生产打包会报错!!
|
||||
}
|
||||
},
|
||||
server: {
|
||||
proxy: {
|
||||
"/basic-api": {
|
||||
target: "http://localhost:3000",
|
||||
changeOrigin: true,
|
||||
ws: true,
|
||||
rewrite: (path) => path.replace(new RegExp(`^/basic-api`), "")
|
||||
// only https
|
||||
// secure: false
|
||||
},
|
||||
"/upload": {
|
||||
target: "http://localhost:3300/upload",
|
||||
changeOrigin: true,
|
||||
ws: true,
|
||||
rewrite: (path) => path.replace(new RegExp(`^/upload`), "")
|
||||
}
|
||||
},
|
||||
warmup: {
|
||||
clientFiles: ["./index.html", "./src/{views,components}/*"]
|
||||
}
|
||||
},
|
||||
define: {
|
||||
"process.env": {
|
||||
BASE_URL: "/"
|
||||
}
|
||||
},
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
less: {
|
||||
javascriptEnabled: true
|
||||
}
|
||||
}
|
||||
},
|
||||
plugins: [mars3dPlugin()]
|
||||
}
|
||||
});
|
||||
export {
|
||||
vite_config_default as default
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJFOlxcXFxwcm9qZWN0c1xcXFxEaUtvbmdHYW5aaGlQaW5nVGFpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCJFOlxcXFxwcm9qZWN0c1xcXFxEaUtvbmdHYW5aaGlQaW5nVGFpXFxcXHZpdGUuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9FOi9wcm9qZWN0cy9EaUtvbmdHYW5aaGlQaW5nVGFpL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHsgZGVmaW5lQXBwbGljYXRpb25Db25maWcgfSBmcm9tICdAdmJlbi92aXRlLWNvbmZpZyc7XG5pbXBvcnQgeyBtYXJzM2RQbHVnaW4gfSBmcm9tICd2aXRlLXBsdWdpbi1tYXJzM2QnO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVBcHBsaWNhdGlvbkNvbmZpZyh7XG4gIG92ZXJyaWRlczoge1xuICAgIG9wdGltaXplRGVwczoge1xuICAgICAgaW5jbHVkZTogW1xuICAgICAgICAnZWNoYXJ0cy9jb3JlJyxcbiAgICAgICAgJ2VjaGFydHMvY2hhcnRzJyxcbiAgICAgICAgJ2VjaGFydHMvY29tcG9uZW50cycsXG4gICAgICAgICdlY2hhcnRzL3JlbmRlcmVycycsXG4gICAgICAgICdxcmNvZGUnLFxuICAgICAgICAnQGljb25pZnkvaWNvbmlmeScsXG4gICAgICAgICdhbnQtZGVzaWduLXZ1ZS9lcy9sb2NhbGUvemhfQ04nLFxuICAgICAgICAnYW50LWRlc2lnbi12dWUvZXMvbG9jYWxlL2VuX1VTJyxcbiAgICAgICAgJ0AvLi4vbGliL3Zmb3JtL2Rlc2lnbmVyLnVtZC5qcycsXG4gICAgICBdLFxuICAgIH0sXG4gICAgYnVpbGQ6IHtcbiAgICAgIC8qIFx1NTE3Nlx1NEVENmJ1aWxkXHU3NTFGXHU0RUE3XHU2MjUzXHU1MzA1XHU5MTREXHU3RjZFXHU3NzAxXHU3NTY1ICovXG4gICAgICAvLy4uLlxuICAgICAgdGFyZ2V0OiAnZXNuZXh0JyxcbiAgICAgIGNvbW1vbmpzT3B0aW9uczoge1xuICAgICAgICBpbmNsdWRlOiBbL25vZGVfbW9kdWxlc3xsaWIvLCAvbm9kZV9tb2R1bGVzfHBhY2thZ2VzL10sIC8vXHU4RkQ5XHU5MUNDXHU4QkIwXHU1Rjk3XHU2MjhBbGliXHU3NkVFXHU1RjU1XHU1MkEwXHU4RkRCXHU2NzY1XHVGRjBDXHU1NDI2XHU1MjE5XHU3NTFGXHU0RUE3XHU2MjUzXHU1MzA1XHU0RjFBXHU2MkE1XHU5NTE5XHVGRjAxXHVGRjAxXG4gICAgICB9LFxuICAgIH0sXG4gICAgc2VydmVyOiB7XG4gICAgICBwcm94eToge1xuICAgICAgICAnL2Jhc2ljLWFwaSc6IHtcbiAgICAgICAgICB0YXJnZXQ6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgICAgICAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcbiAgICAgICAgICB3czogdHJ1ZSxcbiAgICAgICAgICByZXdyaXRlOiAocGF0aCkgPT4gcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoYF4vYmFzaWMtYXBpYCksICcnKSxcbiAgICAgICAgICAvLyBvbmx5IGh0dHBzXG4gICAgICAgICAgLy8gc2VjdXJlOiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICAnL3VwbG9hZCc6IHtcbiAgICAgICAgICB0YXJnZXQ6ICdodHRwOi8vbG9jYWxob3N0OjMzMDAvdXBsb2FkJyxcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXG4gICAgICAgICAgd3M6IHRydWUsXG4gICAgICAgICAgcmV3cml0ZTogKHBhdGgpID0+IHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKGBeL3VwbG9hZGApLCAnJyksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgd2FybXVwOiB7XG4gICAgICAgIGNsaWVudEZpbGVzOiBbJy4vaW5kZXguaHRtbCcsICcuL3NyYy97dmlld3MsY29tcG9uZW50c30vKiddLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmluZToge1xuICAgICAgJ3Byb2Nlc3MuZW52Jzoge1xuICAgICAgICBCQVNFX1VSTDogJy8nLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGNzczoge1xuICAgICAgcHJlcHJvY2Vzc29yT3B0aW9uczoge1xuICAgICAgICBsZXNzOiB7XG4gICAgICAgICAgamF2YXNjcmlwdEVuYWJsZWQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0sXG4gICAgcGx1Z2luczogW21hcnMzZFBsdWdpbigpXSxcbiAgfSxcbn0pO1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFxUixTQUFTLCtCQUErQjtBQUM3VCxTQUFTLG9CQUFvQjtBQUU3QixJQUFPLHNCQUFRLHdCQUF3QjtBQUFBLEVBQ3JDLFdBQVc7QUFBQSxJQUNULGNBQWM7QUFBQSxNQUNaLFNBQVM7QUFBQSxRQUNQO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxRQUNBO0FBQUEsUUFDQTtBQUFBLFFBQ0E7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLElBQ0EsT0FBTztBQUFBO0FBQUE7QUFBQSxNQUdMLFFBQVE7QUFBQSxNQUNSLGlCQUFpQjtBQUFBLFFBQ2YsU0FBUyxDQUFDLG9CQUFvQix1QkFBdUI7QUFBQTtBQUFBLE1BQ3ZEO0FBQUEsSUFDRjtBQUFBLElBQ0EsUUFBUTtBQUFBLE1BQ04sT0FBTztBQUFBLFFBQ0wsY0FBYztBQUFBLFVBQ1osUUFBUTtBQUFBLFVBQ1IsY0FBYztBQUFBLFVBQ2QsSUFBSTtBQUFBLFVBQ0osU0FBUyxDQUFDLFNBQVMsS0FBSyxRQUFRLElBQUksT0FBTyxhQUFhLEdBQUcsRUFBRTtBQUFBO0FBQUE7QUFBQSxRQUcvRDtBQUFBLFFBQ0EsV0FBVztBQUFBLFVBQ1QsUUFBUTtBQUFBLFVBQ1IsY0FBYztBQUFBLFVBQ2QsSUFBSTtBQUFBLFVBQ0osU0FBUyxDQUFDLFNBQVMsS0FBSyxRQUFRLElBQUksT0FBTyxVQUFVLEdBQUcsRUFBRTtBQUFBLFFBQzVEO0FBQUEsTUFDRjtBQUFBLE1BQ0EsUUFBUTtBQUFBLFFBQ04sYUFBYSxDQUFDLGdCQUFnQiw0QkFBNEI7QUFBQSxNQUM1RDtBQUFBLElBQ0Y7QUFBQSxJQUNBLFFBQVE7QUFBQSxNQUNOLGVBQWU7QUFBQSxRQUNiLFVBQVU7QUFBQSxNQUNaO0FBQUEsSUFDRjtBQUFBLElBQ0EsS0FBSztBQUFBLE1BQ0gscUJBQXFCO0FBQUEsUUFDbkIsTUFBTTtBQUFBLFVBQ0osbUJBQW1CO0FBQUEsUUFDckI7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLElBQ0EsU0FBUyxDQUFDLGFBQWEsQ0FBQztBQUFBLEVBQzFCO0FBQ0YsQ0FBQzsiLAogICJuYW1lcyI6IFtdCn0K
|
||||
Loading…
Reference in New Issue