summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/pipeline_editor/components/text_editor.vue
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/pipeline_editor/components/text_editor.vue')
-rw-r--r--app/assets/javascripts/pipeline_editor/components/text_editor.vue34
1 files changed, 33 insertions, 1 deletions
diff --git a/app/assets/javascripts/pipeline_editor/components/text_editor.vue b/app/assets/javascripts/pipeline_editor/components/text_editor.vue
index 22f2a32c9ac..b8d49d77ea9 100644
--- a/app/assets/javascripts/pipeline_editor/components/text_editor.vue
+++ b/app/assets/javascripts/pipeline_editor/components/text_editor.vue
@@ -1,14 +1,46 @@
<script>
import EditorLite from '~/vue_shared/components/editor_lite.vue';
+import { CiSchemaExtension } from '~/editor/extensions/editor_ci_schema_ext';
export default {
components: {
EditorLite,
},
+ inject: ['projectPath', 'projectNamespace'],
+ inheritAttrs: false,
+ props: {
+ ciConfigPath: {
+ type: String,
+ required: true,
+ },
+ commitSha: {
+ type: String,
+ required: false,
+ default: null,
+ },
+ },
+ methods: {
+ onEditorReady() {
+ const editorInstance = this.$refs.editor.getEditor();
+
+ editorInstance.use(new CiSchemaExtension());
+ editorInstance.registerCiSchema({
+ projectPath: this.projectPath,
+ projectNamespace: this.projectNamespace,
+ ref: this.commitSha,
+ });
+ },
+ },
};
</script>
<template>
<div class="gl-border-solid gl-border-gray-100 gl-border-1">
- <editor-lite file-name="*.yml" v-bind="$attrs" v-on="$listeners" />
+ <editor-lite
+ ref="editor"
+ :file-name="ciConfigPath"
+ v-bind="$attrs"
+ @editor-ready="onEditorReady"
+ v-on="$listeners"
+ />
</div>
</template>