From 57b8567cc3b83371ff21913c860133990d16b6a8 Mon Sep 17 00:00:00 2001
From: Justin Ho <hduong@gitlab.com>
Date: Fri, 23 Jul 2021 16:18:10 +0700
Subject: [PATCH] Add Vue app structure for integration overrides

Only init the app for now
---
 .../components/integration_overrides.vue      | 15 ++++++++++++
 .../integrations/overrides/index.js           | 23 +++++++++++++++++++
 .../admin/integrations/overrides/index.js     |  3 +++
 3 files changed, 41 insertions(+)
 create mode 100644 app/assets/javascripts/integrations/overrides/components/integration_overrides.vue
 create mode 100644 app/assets/javascripts/integrations/overrides/index.js
 create mode 100644 app/assets/javascripts/pages/admin/integrations/overrides/index.js

diff --git a/app/assets/javascripts/integrations/overrides/components/integration_overrides.vue b/app/assets/javascripts/integrations/overrides/components/integration_overrides.vue
new file mode 100644
index 000000000000..bfb16779854f
--- /dev/null
+++ b/app/assets/javascripts/integrations/overrides/components/integration_overrides.vue
@@ -0,0 +1,15 @@
+<script>
+export default {
+  name: 'IntegrationOverrides',
+  props: {
+    overridesPath: {
+      type: String,
+      required: true,
+    },
+  },
+};
+</script>
+
+<template>
+  <div></div>
+</template>
diff --git a/app/assets/javascripts/integrations/overrides/index.js b/app/assets/javascripts/integrations/overrides/index.js
new file mode 100644
index 000000000000..0f03b23ba218
--- /dev/null
+++ b/app/assets/javascripts/integrations/overrides/index.js
@@ -0,0 +1,23 @@
+import Vue from 'vue';
+import IntegrationOverrides from './components/integration_overrides.vue';
+
+export default () => {
+  const el = document.querySelector('.js-vue-integration-overrides');
+
+  if (!el) {
+    return null;
+  }
+
+  const { overridesPath } = el.dataset;
+
+  return new Vue({
+    el,
+    render(createElement) {
+      return createElement(IntegrationOverrides, {
+        props: {
+          overridesPath,
+        },
+      });
+    },
+  });
+};
diff --git a/app/assets/javascripts/pages/admin/integrations/overrides/index.js b/app/assets/javascripts/pages/admin/integrations/overrides/index.js
new file mode 100644
index 000000000000..b15047091443
--- /dev/null
+++ b/app/assets/javascripts/pages/admin/integrations/overrides/index.js
@@ -0,0 +1,3 @@
+import initIntegrationOverrides from '~/integrations/overrides';
+
+initIntegrationOverrides();
-- 
GitLab