diff --git a/src/components/FRuleEditor/Advance/index.vue b/src/components/FRuleEditor/Advance/index.vue new file mode 100644 index 00000000..5990edea --- /dev/null +++ b/src/components/FRuleEditor/Advance/index.vue @@ -0,0 +1,70 @@ + + + \ No newline at end of file diff --git a/src/components/FRuleEditor/Debug/index.vue b/src/components/FRuleEditor/Debug/index.vue new file mode 100644 index 00000000..14257edb --- /dev/null +++ b/src/components/FRuleEditor/Debug/index.vue @@ -0,0 +1,266 @@ + + + \ No newline at end of file diff --git a/src/components/FRuleEditor/Editor/index.vue b/src/components/FRuleEditor/Editor/index.vue new file mode 100644 index 00000000..8d6ed3f0 --- /dev/null +++ b/src/components/FRuleEditor/Editor/index.vue @@ -0,0 +1,211 @@ + + + \ No newline at end of file diff --git a/src/components/FRuleEditor/Operator/index.vue b/src/components/FRuleEditor/Operator/index.vue new file mode 100644 index 00000000..39accbf5 --- /dev/null +++ b/src/components/FRuleEditor/Operator/index.vue @@ -0,0 +1,119 @@ + + + \ No newline at end of file diff --git a/src/components/FRuleEditor/Operator/typings.d.ts b/src/components/FRuleEditor/Operator/typings.d.ts new file mode 100644 index 00000000..3ab4a5cd --- /dev/null +++ b/src/components/FRuleEditor/Operator/typings.d.ts @@ -0,0 +1,10 @@ +import type { TreeNode } from '@/utils/tree'; + +interface OperatorItem extends TreeNode { + id: string; + name: string; + key: string; + description: string; + code: string; + children: OperatorItem[]; +} diff --git a/src/components/FRuleEditor/index.vue b/src/components/FRuleEditor/index.vue new file mode 100644 index 00000000..c53f55f1 --- /dev/null +++ b/src/components/FRuleEditor/index.vue @@ -0,0 +1,45 @@ + + + \ No newline at end of file diff --git a/src/components/Metadata/VirtualRuleParam/index.vue b/src/components/Metadata/VirtualRuleParam/index.vue new file mode 100644 index 00000000..94d078f4 --- /dev/null +++ b/src/components/Metadata/VirtualRuleParam/index.vue @@ -0,0 +1,36 @@ + + + \ No newline at end of file diff --git a/src/components/MonacoEditor/index.vue b/src/components/MonacoEditor/index.vue index 094f23e8..1a6698ce 100644 --- a/src/components/MonacoEditor/index.vue +++ b/src/components/MonacoEditor/index.vue @@ -73,6 +73,27 @@ watchEffect(() => { editorFormat(); }, 300); }); + +const insert = (val) => { + if (!instance) return + const position = instance.getPosition(); + instance.executeEdits(instance.getValue(), [ + { + range: new monaco.Range( + position?.lineNumber, + position?.column, + position?.lineNumber, + position?.column, + ), + text: val, + }, + ]); +} + +defineExpose({ + editorFormat, + insert, +}) \ No newline at end of file diff --git a/src/views/device/components/Metadata/Base/Edit/PropertyForm.vue b/src/views/device/components/Metadata/Base/Edit/PropertyForm.vue index 8c58661c..ccfc9b03 100644 --- a/src/views/device/components/Metadata/Base/Edit/PropertyForm.vue +++ b/src/views/device/components/Metadata/Base/Edit/PropertyForm.vue @@ -16,12 +16,10 @@ ]"> - - - - + + + + @@ -30,8 +28,18 @@ diff --git a/src/views/device/components/Metadata/Base/Edit/index.vue b/src/views/device/components/Metadata/Base/Edit/index.vue index d783b65e..bca2a281 100644 --- a/src/views/device/components/Metadata/Base/Edit/index.vue +++ b/src/views/device/components/Metadata/Base/Edit/index.vue @@ -4,7 +4,7 @@ - +