@@ -1049,6 +1104,11 @@ const tabsView = (val:any,types:number) => {
+
+
+ {{writeListTitle(scope.row,viewPage.list)}}
+
+
{{ scope.column.label }}
@@ -1123,7 +1183,7 @@ const tabsView = (val:any,types:number) => {
-
+
@@ -1206,7 +1266,7 @@ const tabsView = (val:any,types:number) => {
- 的事发生飞洒地方撒旦撒旦发
+
diff --git a/src/views/matrix/index.vue b/src/views/matrix/index.vue
index 4e6e4d7..1ad8d52 100644
--- a/src/views/matrix/index.vue
+++ b/src/views/matrix/index.vue
@@ -84,7 +84,7 @@ function searchMatrixList() {
loading.value = true
getMatrixList(searchArchiveQuery)
.then(({ data }) => {
- console.log("获取矩阵列表->", data)
+ // console.log("获取矩阵列表->", data)
matrixContList.value = data.list
total.value = data.total
}).finally(() => { loading.value = false })
diff --git a/src/views/matrix/matrixcont/setupmatrixuser_black.vue b/src/views/matrix/matrixcont/setupmatrixuser_black.vue
index a0da94c..101a572 100644
--- a/src/views/matrix/matrixcont/setupmatrixuser_black.vue
+++ b/src/views/matrix/matrixcont/setupmatrixuser_black.vue
@@ -73,7 +73,7 @@ function initData(){
if(props.userShow){
getMatrixField({id:props.matrixcont.id})
.then(({data})=>{
- console.log("监听数据---->",data)
+ // console.log("监听数据---->",data)
data.factor.forEach(item=>{
tabelColumn.push({
id:item.id,
diff --git a/src/views/sysworkflow/flow/index.vue b/src/views/sysworkflow/flow/index.vue
index 5cdab2b..8b7fea2 100644
--- a/src/views/sysworkflow/flow/index.vue
+++ b/src/views/sysworkflow/flow/index.vue
@@ -20,8 +20,8 @@ const customerFormKey = ref()
const scrollContainer = ref(null)
const fixedElement = ref(null)
const scrollToFixed = () =>{
- console.log("scrollToFixed",scrollContainer.value?.offsetTop)
- console.log("scrollToFixed",fixedElement.value?.offsetTop)
+ // console.log("scrollToFixed",scrollContainer.value?.offsetTop)
+ // console.log("scrollToFixed",fixedElement.value?.offsetTop)
scrollContainer.value.scrollIntoView({
behavior: "smooth"
})
diff --git a/src/views/sysworkflow/lowcodepage/appCardPage.vue b/src/views/sysworkflow/lowcodepage/appCardPage.vue
index 07e49ae..9ec1d30 100644
--- a/src/views/sysworkflow/lowcodepage/appCardPage.vue
+++ b/src/views/sysworkflow/lowcodepage/appCardPage.vue
@@ -192,7 +192,8 @@ const state = reactive({
isClick:false,
form:{
sortWord:"",
- sortClass:1
+ sortClass:1,
+ title:[]
}
},
date:{
@@ -201,7 +202,8 @@ const state = reactive({
form:{
startTime:"",
endTime:"",
- dayType:1
+ dayType:1,
+ title:[]
}
}
,
@@ -210,7 +212,8 @@ const state = reactive({
isClick:false,
form:{
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -222,7 +225,8 @@ const state = reactive({
endTime:"",
dayType:2,
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -232,7 +236,8 @@ const state = reactive({
form:{
mapWord:"",
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
},
card:{
@@ -248,7 +253,8 @@ const state = reactive({
imgPadding:2,
titleWork:"",
describe:"",
- ranks:3
+ ranks:3,
+ title:[]
}
}
}
diff --git a/src/views/sysworkflow/lowcodepage/appListPage.vue b/src/views/sysworkflow/lowcodepage/appListPage.vue
index e30583a..1ff34b0 100644
--- a/src/views/sysworkflow/lowcodepage/appListPage.vue
+++ b/src/views/sysworkflow/lowcodepage/appListPage.vue
@@ -179,7 +179,8 @@ const state = reactive({
isClick:false,
form:{
sortWord:"",
- sortClass:1
+ sortClass:1,
+ title:[]
}
},
date:{
@@ -188,7 +189,8 @@ const state = reactive({
form:{
startTime:"",
endTime:"",
- dayType:1
+ dayType:1,
+ title:[]
}
}
,
@@ -197,7 +199,8 @@ const state = reactive({
isClick:false,
form:{
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -209,7 +212,8 @@ const state = reactive({
endTime:"",
dayType:2,
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -219,7 +223,8 @@ const state = reactive({
form:{
mapWord:"",
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
},
card:{
@@ -235,7 +240,8 @@ const state = reactive({
imgPadding:2,
titleWork:"",
describe:"",
- ranks:3
+ ranks:3,
+ title:[]
}
}
}
diff --git a/src/views/sysworkflow/lowcodepage/pageFlow/appTableFlow.vue b/src/views/sysworkflow/lowcodepage/pageFlow/appTableFlow.vue
index 09d8fd4..bb3f1fe 100644
--- a/src/views/sysworkflow/lowcodepage/pageFlow/appTableFlow.vue
+++ b/src/views/sysworkflow/lowcodepage/pageFlow/appTableFlow.vue
@@ -78,18 +78,7 @@ const drawerOpenOrClose = computed({
},
});
-const drawbox = computed({
- get: () => {
- if(props.drawerwith > 1200){
- return '50%';
- }else{
- return props.drawerwith
- }
- },
- set: (val:number) => {
- return val
- },
-});
+const drawbox = ref(props.drawerwith)
const isFlowTable = ref(false) //判断是不是流程表单
//获取表单数据
const getTaskFormData = () =>{
@@ -129,7 +118,11 @@ const getTaskFormData = () =>{
//监听页面变化
watch(()=>props.isopen,()=>{
if(props.isopen){
-
+ if(isFlow.value == 2){
+ drawbox.value = 800 + 350
+ }else{
+ drawbox.value = 800
+ }
// getTaskFormData();
initLoadData();
}else{
diff --git a/src/views/sysworkflow/lowcodepage/pageFlow/tableFlow.vue b/src/views/sysworkflow/lowcodepage/pageFlow/tableFlow.vue
index 52d49ee..14a6c8c 100644
--- a/src/views/sysworkflow/lowcodepage/pageFlow/tableFlow.vue
+++ b/src/views/sysworkflow/lowcodepage/pageFlow/tableFlow.vue
@@ -75,6 +75,10 @@ const drawbox = computed({
if(props.drawerwith > 1200){
return '50%';
}else{
+ console.log("isFlowTable",isFlowTable.value)
+ if(isFlowTable.value){
+ return '90%'
+ }
return props.drawerwith
}
},
diff --git a/src/views/sysworkflow/lowcodepage/runApp/runAppForm.vue b/src/views/sysworkflow/lowcodepage/runApp/runAppForm.vue
index b18b6d7..a16bfac 100644
--- a/src/views/sysworkflow/lowcodepage/runApp/runAppForm.vue
+++ b/src/views/sysworkflow/lowcodepage/runApp/runAppForm.vue
@@ -77,7 +77,8 @@ const stateList = reactive({
isClick:false,
form:{
sortWord:"",
- sortClass:1
+ sortClass:1,
+ title:[]
}
},
date:{
@@ -86,7 +87,8 @@ const stateList = reactive({
form:{
startTime:"",
endTime:"",
- dayType:1
+ dayType:1,
+ title:[]
}
}
,
@@ -95,7 +97,8 @@ const stateList = reactive({
isClick:false,
form:{
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -107,7 +110,8 @@ const stateList = reactive({
endTime:"",
dayType:2,
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
}
,
@@ -117,7 +121,8 @@ const stateList = reactive({
form:{
mapWord:"",
sortWord:"",
- sort:1
+ sort:1,
+ title:[]
}
},
card:{
@@ -133,7 +138,8 @@ const stateList = reactive({
imgPadding:2,
titleWork:"",
describe:"",
- ranks:3
+ ranks:3,
+ title:[]
}
}
}
diff --git a/src/widget/org/index.vue b/src/widget/org/index.vue
index bec622b..dfba62f 100644
--- a/src/widget/org/index.vue
+++ b/src/widget/org/index.vue
@@ -170,7 +170,7 @@ function haveOrgTreeInfo(){
}
//加载数据
onMounted(() => {
- console.log("加载叔叔");
+ // console.log("加载叔叔");
haveOrgTreeInfo();
});
diff --git a/vite.config.ts.timestamp-1721866180182-c3260d9fac85d.mjs b/vite.config.ts.timestamp-1721866180182-c3260d9fac85d.mjs
new file mode 100644
index 0000000..af7c12e
--- /dev/null
+++ b/vite.config.ts.timestamp-1721866180182-c3260d9fac85d.mjs
@@ -0,0 +1,196 @@
+// vite.config.ts
+import vue from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/@vitejs/plugin-vue/dist/index.mjs";
+import { loadEnv, defineConfig } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/vite/dist/node/index.js";
+import AutoImport from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-auto-import/dist/vite.js";
+import Components from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-vue-components/dist/vite.mjs";
+import { ElementPlusResolver } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-vue-components/dist/resolvers.mjs";
+import Icons from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-icons/dist/vite.mjs";
+import IconsResolver from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unplugin-icons/dist/resolver.mjs";
+import { createSvgIconsPlugin } from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/vite-plugin-svg-icons/dist/index.mjs";
+import UnoCSS from "file:///E:/f_pang/object/my_object_html/ShutongInterconnectedChemicalCloudPlatform/node_modules/unocss/dist/vite.mjs";
+import path from "path";
+var __vite_injected_original_dirname = "E:\\f_pang\\object\\my_object_html\\ShutongInterconnectedChemicalCloudPlatform";
+var pathSrc = path.resolve(__vite_injected_original_dirname, "src");
+var vite_config_default = defineConfig(({ mode }) => {
+ const env = loadEnv(mode, process.cwd());
+ return {
+ resolve: {
+ alias: {
+ "@": pathSrc
+ }
+ },
+ css: {
+ // CSS 预处理器
+ preprocessorOptions: {
+ //define global scss variable
+ scss: {
+ javascriptEnabled: true,
+ additionalData: `
+ @use "@/styles/variables.scss" as *;
+ `
+ }
+ }
+ },
+ server: {
+ host: "0.0.0.0",
+ port: Number(env.VITE_APP_PORT),
+ open: true,
+ // 运行是否自动打开浏览器
+ proxy: {
+ // 反向代理解决跨域
+ [env.VITE_APP_BASE_API]: {
+ target: env.VITE_APP_BASE_URL,
+ // 线上接口地址
+ // target: "http://vapi.youlai.tech", // 线上接口地址
+ // target: 'http://localhost:8989', // 本地接口地址 , 后端工程仓库地址:https://gitee.com/youlaiorg/youlai-boot
+ changeOrigin: true,
+ rewrite: (path2) => path2.replace(new RegExp("^" + env.VITE_APP_BASE_API), "")
+ // 替换 /dev-api 为 target 接口地址
+ }
+ // '/dev-api/kpiapi': {
+ // target: 'http://127.0.0.1:6666',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/kpiapi'), ""),
+ // },
+ // '/dev-api/systemapi': {
+ // target: 'http://127.0.0.1:17777',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/systemapi'), ""),
+ // },
+ // '/dev-api/hrapi': {
+ // target: 'http://127.0.0.1:39168',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/hrapi'), ""),
+ // },
+ // '/dev-api/api': {
+ // target: 'http://127.0.0.1:8888',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/api'), ""),
+ // },
+ // '/dev-api/javasys': {
+ // target: 'http://172.20.2.87:8111',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/javasys'), ""),
+ // },
+ // '/dev-api/javasys/lowCode ': {
+ // target: 'http://172.20.2.87:8112',
+ // changeOrigin: true,
+ // rewrite: (path) =>
+ // path.replace(new RegExp("^" + '/dev-api/javasys/lowCode '), ""),
+ // }
+ }
+ },
+ plugins: [
+ vue(),
+ UnoCSS({
+ /* options */
+ }),
+ AutoImport({
+ // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等
+ imports: ["vue", "@vueuse/core"],
+ //ignore: ['h'], // 自动添加 import { h } from '/node_modules/.vite/deps/vue.js 代码问题处理
+ eslintrc: {
+ enabled: false,
+ // Default `false`
+ filepath: "./.eslintrc-auto-import.json",
+ // Default `./.eslintrc-auto-import.json`
+ globalsPropValue: true
+ // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
+ },
+ resolvers: [
+ // 自动导入 Element Plus 相关函数,如:ElMessage, ElMessageBox... (带样式)
+ ElementPlusResolver(),
+ // 自动导入图标组件
+ IconsResolver({})
+ ],
+ vueTemplate: true,
+ // 是否在 vue 模板中自动导入
+ dts: path.resolve(pathSrc, "types", "auto-imports.d.ts")
+ // 自动导入组件类型声明文件位置,默认根目录; false 关闭自动生成
+ }),
+ Components({
+ resolvers: [
+ // 自动注册图标组件
+ IconsResolver({
+ enabledCollections: ["ep"]
+ //@iconify-json/ep 是 Element Plus 的图标库
+ }),
+ // 自动导入 Element Plus 组件
+ ElementPlusResolver()
+ ],
+ dts: path.resolve(pathSrc, "types", "components.d.ts")
+ // 自动导入组件类型声明文件位置,默认根目录; false 关闭自动生成
+ }),
+ Icons({
+ // 自动安装图标库
+ autoInstall: true
+ }),
+ createSvgIconsPlugin({
+ // 指定需要缓存的图标文件夹
+ iconDirs: [path.resolve(pathSrc, "assets/icons")],
+ // 指定symbolId格式
+ symbolId: "icon-[dir]-[name]"
+ })
+ ],
+ optimizeDeps: {
+ include: [
+ "vue",
+ "vue-router",
+ "pinia",
+ "axios",
+ "element-plus/es/components/form/style/css",
+ "element-plus/es/components/form-item/style/css",
+ "element-plus/es/components/button/style/css",
+ "element-plus/es/components/input/style/css",
+ "element-plus/es/components/input-number/style/css",
+ "element-plus/es/components/switch/style/css",
+ "element-plus/es/components/upload/style/css",
+ "element-plus/es/components/menu/style/css",
+ "element-plus/es/components/col/style/css",
+ "element-plus/es/components/icon/style/css",
+ "element-plus/es/components/row/style/css",
+ "element-plus/es/components/tag/style/css",
+ "element-plus/es/components/dialog/style/css",
+ "element-plus/es/components/loading/style/css",
+ "element-plus/es/components/radio/style/css",
+ "element-plus/es/components/radio-group/style/css",
+ "element-plus/es/components/popover/style/css",
+ "element-plus/es/components/scrollbar/style/css",
+ "element-plus/es/components/tooltip/style/css",
+ "element-plus/es/components/dropdown/style/css",
+ "element-plus/es/components/dropdown-menu/style/css",
+ "element-plus/es/components/dropdown-item/style/css",
+ "element-plus/es/components/sub-menu/style/css",
+ "element-plus/es/components/menu-item/style/css",
+ "element-plus/es/components/divider/style/css",
+ "element-plus/es/components/card/style/css",
+ "element-plus/es/components/link/style/css",
+ "element-plus/es/components/breadcrumb/style/css",
+ "element-plus/es/components/breadcrumb-item/style/css",
+ "element-plus/es/components/table/style/css",
+ "element-plus/es/components/tree-select/style/css",
+ "element-plus/es/components/table-column/style/css",
+ "element-plus/es/components/select/style/css",
+ "element-plus/es/components/option/style/css",
+ "element-plus/es/components/pagination/style/css",
+ "element-plus/es/components/tree/style/css",
+ "element-plus/es/components/alert/style/css",
+ "@vueuse/core",
+ "path-to-regexp",
+ "echarts",
+ "@wangeditor/editor",
+ "@wangeditor/editor-for-vue",
+ "vue-i18n"
+ ]
+ }
+ };
+});
+export {
+ vite_config_default as default
+};
+//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJFOlxcXFxmX3BhbmdcXFxcb2JqZWN0XFxcXG15X29iamVjdF9odG1sXFxcXFNodXRvbmdJbnRlcmNvbm5lY3RlZENoZW1pY2FsQ2xvdWRQbGF0Zm9ybVwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRTpcXFxcZl9wYW5nXFxcXG9iamVjdFxcXFxteV9vYmplY3RfaHRtbFxcXFxTaHV0b25nSW50ZXJjb25uZWN0ZWRDaGVtaWNhbENsb3VkUGxhdGZvcm1cXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0U6L2ZfcGFuZy9vYmplY3QvbXlfb2JqZWN0X2h0bWwvU2h1dG9uZ0ludGVyY29ubmVjdGVkQ2hlbWljYWxDbG91ZFBsYXRmb3JtL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHZ1ZSBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tdnVlXCI7XHJcblxyXG5pbXBvcnQgeyBVc2VyQ29uZmlnLCBDb25maWdFbnYsIGxvYWRFbnYsIGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlXCI7XHJcblxyXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiO1xyXG5pbXBvcnQgQ29tcG9uZW50cyBmcm9tIFwidW5wbHVnaW4tdnVlLWNvbXBvbmVudHMvdml0ZVwiO1xyXG5pbXBvcnQgeyBFbGVtZW50UGx1c1Jlc29sdmVyIH0gZnJvbSBcInVucGx1Z2luLXZ1ZS1jb21wb25lbnRzL3Jlc29sdmVyc1wiO1xyXG5cclxuaW1wb3J0IEljb25zIGZyb20gXCJ1bnBsdWdpbi1pY29ucy92aXRlXCI7XHJcbmltcG9ydCBJY29uc1Jlc29sdmVyIGZyb20gXCJ1bnBsdWdpbi1pY29ucy9yZXNvbHZlclwiO1xyXG5cclxuaW1wb3J0IHsgY3JlYXRlU3ZnSWNvbnNQbHVnaW4gfSBmcm9tIFwidml0ZS1wbHVnaW4tc3ZnLWljb25zXCI7XHJcblxyXG5pbXBvcnQgVW5vQ1NTIGZyb20gXCJ1bm9jc3Mvdml0ZVwiO1xyXG5cclxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcclxuY29uc3QgcGF0aFNyYyA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwic3JjXCIpO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKCh7IG1vZGUgfTogQ29uZmlnRW52KTogVXNlckNvbmZpZyA9PiB7XHJcbiAgY29uc3QgZW52ID0gbG9hZEVudihtb2RlLCBwcm9jZXNzLmN3ZCgpKTtcclxuICByZXR1cm4ge1xyXG4gICAgcmVzb2x2ZToge1xyXG4gICAgICBhbGlhczoge1xyXG4gICAgICAgIFwiQFwiOiBwYXRoU3JjLFxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICAgIGNzczoge1xyXG4gICAgICAvLyBDU1MgXHU5ODg0XHU1OTA0XHU3NDA2XHU1NjY4XHJcbiAgICAgIHByZXByb2Nlc3Nvck9wdGlvbnM6IHtcclxuICAgICAgICAvL2RlZmluZSBnbG9iYWwgc2NzcyB2YXJpYWJsZVxyXG4gICAgICAgIHNjc3M6IHtcclxuICAgICAgICAgIGphdmFzY3JpcHRFbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgYWRkaXRpb25hbERhdGE6IGBcclxuICAgICAgICAgICAgQHVzZSBcIkAvc3R5bGVzL3ZhcmlhYmxlcy5zY3NzXCIgYXMgKjtcclxuICAgICAgICAgIGAsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH0sXHJcbiAgICBzZXJ2ZXI6IHtcclxuICAgICAgaG9zdDogXCIwLjAuMC4wXCIsXHJcbiAgICAgIHBvcnQ6IE51bWJlcihlbnYuVklURV9BUFBfUE9SVCksXHJcbiAgICAgIG9wZW46IHRydWUsIC8vIFx1OEZEMFx1ODg0Q1x1NjYyRlx1NTQyNlx1ODFFQVx1NTJBOFx1NjI1M1x1NUYwMFx1NkQ0Rlx1ODlDOFx1NTY2OFxyXG4gICAgICBwcm94eToge1xyXG4gICAgICAgIC8vIFx1NTNDRFx1NTQxMVx1NEVFM1x1NzQwNlx1ODlFM1x1NTFCM1x1OERFOFx1NTdERlxyXG4gICAgICAgIFtlbnYuVklURV9BUFBfQkFTRV9BUEldOiB7XHJcbiAgICAgICAgICB0YXJnZXQ6IGVudi5WSVRFX0FQUF9CQVNFX1VSTCwgLy8gXHU3RUJGXHU0RTBBXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwXHJcbiAgICAgICAgICAvLyB0YXJnZXQ6IFwiaHR0cDovL3ZhcGkueW91bGFpLnRlY2hcIiwgLy8gXHU3RUJGXHU0RTBBXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwXHJcbiAgICAgICAgICAvLyB0YXJnZXQ6ICdodHRwOi8vbG9jYWxob3N0Ojg5ODknLCAgLy8gXHU2NzJDXHU1NzMwXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwICwgXHU1NDBFXHU3QUVGXHU1REU1XHU3QTBCXHU0RUQzXHU1RTkzXHU1NzMwXHU1NzQwXHVGRjFBaHR0cHM6Ly9naXRlZS5jb20veW91bGFpb3JnL3lvdWxhaS1ib290XHJcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgICByZXdyaXRlOiAocGF0aCkgPT5cclxuICAgICAgICAgICAgcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCJeXCIgKyBlbnYuVklURV9BUFBfQkFTRV9BUEkpLCBcIlwiKSwgLy8gXHU2NkZGXHU2MzYyIC9kZXYtYXBpIFx1NEUzQSB0YXJnZXQgXHU2M0E1XHU1M0UzXHU1NzMwXHU1NzQwXHJcbiAgICAgICAgfSxcclxuICAgICAgICAvLyAnL2Rldi1hcGkva3BpYXBpJzoge1xyXG4gICAgICAgIC8vICAgdGFyZ2V0OiAnaHR0cDovLzEyNy4wLjAuMTo2NjY2JyxcclxuICAgICAgICAvLyAgIGNoYW5nZU9yaWdpbjogdHJ1ZSxcclxuICAgICAgICAvLyAgIHJld3JpdGU6IChwYXRoKSA9PlxyXG4gICAgICAgIC8vICAgICBwYXRoLnJlcGxhY2UobmV3IFJlZ0V4cChcIl5cIiArICcvZGV2LWFwaS9rcGlhcGknKSwgXCJcIiksXHJcbiAgICAgICAgLy8gfSxcclxuXHJcbiAgICAgICAgLy8gJy9kZXYtYXBpL3N5c3RlbWFwaSc6IHtcclxuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6MTc3NzcnLFxyXG4gICAgICAgIC8vICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxyXG4gICAgICAgIC8vICAgcmV3cml0ZTogKHBhdGgpID0+XHJcbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL3N5c3RlbWFwaScpLCBcIlwiKSxcclxuICAgICAgICAvLyB9LFxyXG4gICAgICAgIC8vICcvZGV2LWFwaS9ocmFwaSc6IHtcclxuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6MzkxNjgnLFxyXG4gICAgICAgIC8vICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxyXG4gICAgICAgIC8vICAgcmV3cml0ZTogKHBhdGgpID0+XHJcbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL2hyYXBpJyksIFwiXCIpLFxyXG4gICAgICAgIC8vIH0sXHJcbiAgICAgICAgLy8gJy9kZXYtYXBpL2FwaSc6IHtcclxuICAgICAgICAvLyAgIHRhcmdldDogJ2h0dHA6Ly8xMjcuMC4wLjE6ODg4OCcsXHJcbiAgICAgICAgLy8gICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cclxuICAgICAgICAvLyAgICAgcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCJeXCIgKyAnL2Rldi1hcGkvYXBpJyksIFwiXCIpLFxyXG4gICAgICAgIC8vIH0sXHJcbiAgICAgICAgLy8gJy9kZXYtYXBpL2phdmFzeXMnOiB7XHJcbiAgICAgICAgLy8gICB0YXJnZXQ6ICdodHRwOi8vMTcyLjIwLjIuODc6ODExMScsXHJcbiAgICAgICAgLy8gICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgLy8gICByZXdyaXRlOiAocGF0aCkgPT5cclxuICAgICAgICAvLyAgICAgcGF0aC5yZXBsYWNlKG5ldyBSZWdFeHAoXCJeXCIgKyAnL2Rldi1hcGkvamF2YXN5cycpLCBcIlwiKSxcclxuICAgICAgICAvLyB9LFxyXG4gICAgICAgIC8vICcvZGV2LWFwaS9qYXZhc3lzL2xvd0NvZGUgJzoge1xyXG4gICAgICAgIC8vICAgdGFyZ2V0OiAnaHR0cDovLzE3Mi4yMC4yLjg3OjgxMTInLFxyXG4gICAgICAgIC8vICAgY2hhbmdlT3JpZ2luOiB0cnVlLFxyXG4gICAgICAgIC8vICAgcmV3cml0ZTogKHBhdGgpID0+XHJcbiAgICAgICAgLy8gICAgIHBhdGgucmVwbGFjZShuZXcgUmVnRXhwKFwiXlwiICsgJy9kZXYtYXBpL2phdmFzeXMvbG93Q29kZSAnKSwgXCJcIiksXHJcbiAgICAgICAgLy8gfVxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuXHJcbiAgICBwbHVnaW5zOiBbXHJcblxyXG4gICAgICB2dWUoKSxcclxuICAgICAgVW5vQ1NTKHtcclxuICAgICAgICAvKiBvcHRpb25zICovXHJcbiAgICAgIH0pLFxyXG4gICAgICBBdXRvSW1wb3J0KHtcclxuICAgICAgICAvLyBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjUgVnVlIFx1NzZGOFx1NTE3M1x1NTFGRFx1NjU3MFx1RkYwQ1x1NTk4Mlx1RkYxQXJlZiwgcmVhY3RpdmUsIHRvUmVmIFx1N0I0OVxyXG4gICAgICAgIGltcG9ydHM6IFtcInZ1ZVwiLCBcIkB2dWV1c2UvY29yZVwiXSxcclxuICAgICAgICAvL2lnbm9yZTogWydoJ10sIC8vIFx1ODFFQVx1NTJBOFx1NkRGQlx1NTJBMCBpbXBvcnQgeyBoIH0gZnJvbSAnL25vZGVfbW9kdWxlcy8udml0ZS9kZXBzL3Z1ZS5qcyBcdTRFRTNcdTc4MDFcdTk1RUVcdTk4OThcdTU5MDRcdTc0MDZcclxuICAgICAgICBlc2xpbnRyYzoge1xyXG4gICAgICAgICAgZW5hYmxlZDogZmFsc2UsIC8vICBEZWZhdWx0IGBmYWxzZWBcclxuICAgICAgICAgIGZpbGVwYXRoOiBcIi4vLmVzbGludHJjLWF1dG8taW1wb3J0Lmpzb25cIiwgLy8gRGVmYXVsdCBgLi8uZXNsaW50cmMtYXV0by1pbXBvcnQuanNvbmBcclxuICAgICAgICAgIGdsb2JhbHNQcm9wVmFsdWU6IHRydWUsIC8vIERlZmF1bHQgYHRydWVgLCAodHJ1ZSB8IGZhbHNlIHwgJ3JlYWRvbmx5JyB8ICdyZWFkYWJsZScgfCAnd3JpdGFibGUnIHwgJ3dyaXRlYWJsZScpXHJcbiAgICAgICAgfSxcclxuICAgICAgICByZXNvbHZlcnM6IFtcclxuICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NSBFbGVtZW50IFBsdXMgXHU3NkY4XHU1MTczXHU1MUZEXHU2NTcwXHVGRjBDXHU1OTgyXHVGRjFBRWxNZXNzYWdlLCBFbE1lc3NhZ2VCb3guLi4gKFx1NUUyNlx1NjgzN1x1NUYwRilcclxuICAgICAgICAgIEVsZW1lbnRQbHVzUmVzb2x2ZXIoKSxcclxuICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NVx1NTZGRVx1NjgwN1x1N0VDNFx1NEVGNlxyXG4gICAgICAgICAgSWNvbnNSZXNvbHZlcih7fSksXHJcbiAgICAgICAgXSxcclxuICAgICAgICB2dWVUZW1wbGF0ZTogdHJ1ZSwgLy8gXHU2NjJGXHU1NDI2XHU1NzI4IHZ1ZSBcdTZBMjFcdTY3N0ZcdTRFMkRcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjVcclxuICAgICAgICBkdHM6IHBhdGgucmVzb2x2ZShwYXRoU3JjLCBcInR5cGVzXCIsIFwiYXV0by1pbXBvcnRzLmQudHNcIiksIC8vICBcdTgxRUFcdTUyQThcdTVCRkNcdTUxNjVcdTdFQzRcdTRFRjZcdTdDN0JcdTU3OEJcdTU4RjBcdTY2MEVcdTY1ODdcdTRFRjZcdTRGNERcdTdGNkVcdUZGMENcdTlFRDhcdThCQTRcdTY4MzlcdTc2RUVcdTVGNTU7IGZhbHNlIFx1NTE3M1x1OTVFRFx1ODFFQVx1NTJBOFx1NzUxRlx1NjIxMFxyXG4gICAgICB9KSxcclxuXHJcbiAgICAgIENvbXBvbmVudHMoe1xyXG4gICAgICAgIHJlc29sdmVyczogW1xyXG4gICAgICAgICAgLy8gXHU4MUVBXHU1MkE4XHU2Q0U4XHU1MThDXHU1NkZFXHU2ODA3XHU3RUM0XHU0RUY2XHJcbiAgICAgICAgICBJY29uc1Jlc29sdmVyKHtcclxuICAgICAgICAgICAgZW5hYmxlZENvbGxlY3Rpb25zOiBbXCJlcFwiXSwgLy9AaWNvbmlmeS1qc29uL2VwIFx1NjYyRiBFbGVtZW50IFBsdXMgXHU3Njg0XHU1NkZFXHU2ODA3XHU1RTkzXHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIC8vIFx1ODFFQVx1NTJBOFx1NUJGQ1x1NTE2NSBFbGVtZW50IFBsdXMgXHU3RUM0XHU0RUY2XHJcbiAgICAgICAgICBFbGVtZW50UGx1c1Jlc29sdmVyKCksXHJcbiAgICAgICAgXSxcclxuICAgICAgICBkdHM6IHBhdGgucmVzb2x2ZShwYXRoU3JjLCBcInR5cGVzXCIsIFwiY29tcG9uZW50cy5kLnRzXCIpLCAvLyAgXHU4MUVBXHU1MkE4XHU1QkZDXHU1MTY1XHU3RUM0XHU0RUY2XHU3QzdCXHU1NzhCXHU1OEYwXHU2NjBFXHU2NTg3XHU0RUY2XHU0RjREXHU3RjZFXHVGRjBDXHU5RUQ4XHU4QkE0XHU2ODM5XHU3NkVFXHU1RjU1OyBmYWxzZSBcdTUxNzNcdTk1RURcdTgxRUFcdTUyQThcdTc1MUZcdTYyMTBcclxuICAgICAgfSksXHJcblxyXG4gICAgICBJY29ucyh7XHJcbiAgICAgICAgLy8gXHU4MUVBXHU1MkE4XHU1Qjg5XHU4OEM1XHU1NkZFXHU2ODA3XHU1RTkzXHJcbiAgICAgICAgYXV0b0luc3RhbGw6IHRydWUsXHJcbiAgICAgIH0pLFxyXG5cclxuICAgICAgY3JlYXRlU3ZnSWNvbnNQbHVnaW4oe1xyXG4gICAgICAgIC8vIFx1NjMwN1x1NUI5QVx1OTcwMFx1ODk4MVx1N0YxM1x1NUI1OFx1NzY4NFx1NTZGRVx1NjgwN1x1NjU4N1x1NEVGNlx1NTkzOVxyXG4gICAgICAgIGljb25EaXJzOiBbcGF0aC5yZXNvbHZlKHBhdGhTcmMsIFwiYXNzZXRzL2ljb25zXCIpXSxcclxuICAgICAgICAvLyBcdTYzMDdcdTVCOUFzeW1ib2xJZFx1NjgzQ1x1NUYwRlxyXG4gICAgICAgIHN5bWJvbElkOiBcImljb24tW2Rpcl0tW25hbWVdXCIsXHJcbiAgICAgIH0pLFxyXG4gICAgXSxcclxuXHJcbiAgICBvcHRpbWl6ZURlcHM6IHtcclxuICAgICAgaW5jbHVkZTogW1xyXG4gICAgICAgIFwidnVlXCIsXHJcbiAgICAgICAgXCJ2dWUtcm91dGVyXCIsXHJcbiAgICAgICAgXCJwaW5pYVwiLFxyXG4gICAgICAgIFwiYXhpb3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2Zvcm0vc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9mb3JtLWl0ZW0vc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9idXR0b24vc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9pbnB1dC9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2lucHV0LW51bWJlci9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3N3aXRjaC9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3VwbG9hZC9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL21lbnUvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9jb2wvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9pY29uL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvcm93L3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvdGFnL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvZGlhbG9nL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvbG9hZGluZy9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3JhZGlvL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvcmFkaW8tZ3JvdXAvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9wb3BvdmVyL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvc2Nyb2xsYmFyL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvdG9vbHRpcC9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2Ryb3Bkb3duL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvZHJvcGRvd24tbWVudS9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2Ryb3Bkb3duLWl0ZW0vc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9zdWItbWVudS9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL21lbnUtaXRlbS9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2RpdmlkZXIvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9jYXJkL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvbGluay9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL2JyZWFkY3J1bWIvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9icmVhZGNydW1iLWl0ZW0vc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy90YWJsZS9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3RyZWUtc2VsZWN0L3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvdGFibGUtY29sdW1uL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvc2VsZWN0L3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvb3B0aW9uL3N0eWxlL2Nzc1wiLFxyXG4gICAgICAgIFwiZWxlbWVudC1wbHVzL2VzL2NvbXBvbmVudHMvcGFnaW5hdGlvbi9zdHlsZS9jc3NcIixcclxuICAgICAgICBcImVsZW1lbnQtcGx1cy9lcy9jb21wb25lbnRzL3RyZWUvc3R5bGUvY3NzXCIsXHJcbiAgICAgICAgXCJlbGVtZW50LXBsdXMvZXMvY29tcG9uZW50cy9hbGVydC9zdHlsZS9jc3NcIixcclxuICAgICAgICBcIkB2dWV1c2UvY29yZVwiLFxyXG5cclxuICAgICAgICBcInBhdGgtdG8tcmVnZXhwXCIsXHJcbiAgICAgICAgXCJlY2hhcnRzXCIsXHJcbiAgICAgICAgXCJAd2FuZ2VkaXRvci9lZGl0b3JcIixcclxuICAgICAgICBcIkB3YW5nZWRpdG9yL2VkaXRvci1mb3ItdnVlXCIsXHJcbiAgICAgICAgXCJ2dWUtaTE4blwiLFxyXG4gICAgICBdLFxyXG4gICAgfSxcclxuICB9O1xyXG59KTtcclxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUEwWixPQUFPLFNBQVM7QUFFMWEsU0FBZ0MsU0FBUyxvQkFBb0I7QUFFN0QsT0FBTyxnQkFBZ0I7QUFDdkIsT0FBTyxnQkFBZ0I7QUFDdkIsU0FBUywyQkFBMkI7QUFFcEMsT0FBTyxXQUFXO0FBQ2xCLE9BQU8sbUJBQW1CO0FBRTFCLFNBQVMsNEJBQTRCO0FBRXJDLE9BQU8sWUFBWTtBQUVuQixPQUFPLFVBQVU7QUFmakIsSUFBTSxtQ0FBbUM7QUFnQnpDLElBQU0sVUFBVSxLQUFLLFFBQVEsa0NBQVcsS0FBSztBQUU3QyxJQUFPLHNCQUFRLGFBQWEsQ0FBQyxFQUFFLEtBQUssTUFBNkI7QUFDL0QsUUFBTSxNQUFNLFFBQVEsTUFBTSxRQUFRLElBQUksQ0FBQztBQUN2QyxTQUFPO0FBQUEsSUFDTCxTQUFTO0FBQUEsTUFDUCxPQUFPO0FBQUEsUUFDTCxLQUFLO0FBQUEsTUFDUDtBQUFBLElBQ0Y7QUFBQSxJQUNBLEtBQUs7QUFBQTtBQUFBLE1BRUgscUJBQXFCO0FBQUE7QUFBQSxRQUVuQixNQUFNO0FBQUEsVUFDSixtQkFBbUI7QUFBQSxVQUNuQixnQkFBZ0I7QUFBQTtBQUFBO0FBQUEsUUFHbEI7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLElBQ0EsUUFBUTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sTUFBTSxPQUFPLElBQUksYUFBYTtBQUFBLE1BQzlCLE1BQU07QUFBQTtBQUFBLE1BQ04sT0FBTztBQUFBO0FBQUEsUUFFTCxDQUFDLElBQUksaUJBQWlCLEdBQUc7QUFBQSxVQUN2QixRQUFRLElB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