feat: 修复构建.

This commit is contained in:
lijiahangmax
2024-01-09 23:53:45 +08:00
parent 0bb7b5bc62
commit d78d2a2053
38 changed files with 121 additions and 73 deletions

View File

@@ -47,7 +47,7 @@
</template>
</a-button>
</a-tooltip>
<a-dropdown trigger="click" @select="changeLocale">
<a-dropdown trigger="click" @select="s => changeLocale(s as string)">
<div ref="localeRef" class="trigger-btn" />
<template #content>
<a-doption v-for="item in locales"

View File

@@ -10,7 +10,7 @@
<!-- 开关 -->
<a-switch v-else-if="type === 'switch'"
type="round"
:default-checked="defaultValue"
:default-checked="defaultValue as boolean"
size="small"
@change="handleChange" />
<!-- 单选按钮 -->

View File

@@ -1,6 +1,6 @@
import type { App } from 'vue';
import { use } from 'echarts/core';
import AQueryHeader from '@dangojs/a-query-header';
import QueryHeader from '@dangojs/a-query-header';
import { CanvasRenderer } from 'echarts/renderers';
import { BarChart, LineChart, PieChart, RadarChart } from 'echarts/charts';
import {
@@ -33,7 +33,7 @@ export default {
install(Vue: App) {
Vue.component('chart', Chart);
Vue.component('breadcrumb', Breadcrumb);
Vue.component('a-query-header', AQueryHeader);
Vue.component('query-header', QueryHeader);
Vue.component('card-list', CardList);
Vue.component('editor', Editor);
Vue.component('tab-router', TabRouter);

View File

@@ -12,7 +12,7 @@
size="mini"
v-model:current="(pagination as PaginationProps).current"
v-model:page-size="(pagination as PaginationProps).pageSize"
v-bind="pagination"
v-bind="pagination as any"
:auto-adjust="false"
@change="page => bubblesEmitter(HeaderEmitter.PAGE_CHANGE, page, (pagination as PaginationProps).pageSize)"
@page-size-change="limit => bubblesEmitter(HeaderEmitter.PAGE_CHANGE, 1, limit)" />

View File

@@ -49,7 +49,7 @@
'field-value',
field.ellipsis ? 'field-value-ellipsis' : ''
]">
<slot :name="field.slotName" :record="item" :index="index" :key="item[key]">
<slot :name="field.slotName" :record="item" :index="index" :key="item[key as string]">
<a-tooltip v-if="field.tooltip" :content="item[field.dataIndex]">
<span v-if="field.render" v-html="field.render({ record: item, index })" />
<span v-else>{{ item[field.dataIndex] }}</span>

View File

@@ -98,6 +98,6 @@ self.MonacoEnvironment = {
if (label === 'json') {
return new JsonWorker();
}
return new EditorWorker();
return new EditorWorker(label);
},
};

View File

@@ -1,9 +1,9 @@
<template>
<div ref="editorContainer"
:class="{
'editor-wrapper': true,
[containerClass]: !!containerClass
}"
class="editor-wrapper"
:class="[
!!containerClass ? containerClass : ''
]"
:style="{
...containerStyle
}" />
@@ -22,6 +22,7 @@
import { createDefaultOptions } from './core';
import { onBeforeUnmount, onMounted, ref, watch } from 'vue';
import { useAppStore } from '@/store';
import { language as shellLanguage } from 'monaco-editor/esm/vs/basic-languages/shell/shell.js';
const appStore = useAppStore();
@@ -82,6 +83,48 @@
emits('update:modelValue', value);
emits('change', value);
});
// FIXME test containerClass
// TODO
// 代码提示
monaco.languages.registerCompletionItemProvider('shell', {
provideCompletionItems() {
const suggestions: any = [];
// 这个keywords就是java.java文件中有的
shellLanguage.keywords?.forEach((item: any) => {
suggestions.push({
label: item,
kind: monaco.languages.CompletionItemKind.Keyword,
insertText: item,
});
});
shellLanguage.operators?.forEach((item: any) => {
suggestions.push({
label: item,
kind: monaco.languages.CompletionItemKind.Operator,
insertText: item,
});
});
shellLanguage.builtinFunctions?.forEach((item: any) => {
suggestions.push({
label: item,
kind: monaco.languages.CompletionItemKind.Function,
insertText: item,
});
});
shellLanguage.builtinVariables?.forEach((item: any) => {
suggestions.push({
label: item,
kind: monaco.languages.CompletionItemKind.Variable,
insertText: item,
});
});
return {
suggestions,
};
},
});
emits('editor-mounted', editor);
};

View File

@@ -11,7 +11,7 @@
:unmount-on-close="true"
:footer="false"
@close="handleClose">
<div :style="{width: '100%', 'height': height}">
<div :style="{ width: '100%', 'height': height }">
<editor v-model="value" readonly />
</div>
</a-modal>
@@ -19,7 +19,7 @@
<script lang="ts">
export default {
name: 'jsonViewModal'
name: 'jsonEditorModal'
};
</script>
@@ -44,7 +44,6 @@
const title = ref<string>();
const value = ref<string | any>();
//
const open = (editorValue: string | any, editorTitle = 'json') => {
title.value = editorTitle;
@@ -62,6 +61,7 @@
const handleClose = () => {
setVisible(false);
};
</script>
<style lang="less" scoped>