2020-04-08 14:13:33 +05:30
|
|
|
import Vue from 'vue';
|
|
|
|
import CiVariableSettings from './components/ci_variable_settings.vue';
|
|
|
|
import createStore from './store';
|
|
|
|
import { parseBoolean } from '~/lib/utils/common_utils';
|
|
|
|
|
2020-06-23 00:09:42 +05:30
|
|
|
export default (containerId = 'js-ci-project-variables') => {
|
|
|
|
const containerEl = document.getElementById(containerId);
|
|
|
|
const {
|
|
|
|
endpoint,
|
|
|
|
projectId,
|
|
|
|
group,
|
|
|
|
maskableRegex,
|
|
|
|
protectedByDefault,
|
|
|
|
awsLogoSvgPath,
|
|
|
|
awsTipDeployLink,
|
|
|
|
awsTipCommandsLink,
|
|
|
|
awsTipLearnLink,
|
|
|
|
protectedEnvironmentVariablesLink,
|
|
|
|
maskedEnvironmentVariablesLink,
|
|
|
|
} = containerEl.dataset;
|
2020-04-08 14:13:33 +05:30
|
|
|
const isGroup = parseBoolean(group);
|
2020-05-24 23:13:21 +05:30
|
|
|
const isProtectedByDefault = parseBoolean(protectedByDefault);
|
2020-04-08 14:13:33 +05:30
|
|
|
|
|
|
|
const store = createStore({
|
|
|
|
endpoint,
|
|
|
|
projectId,
|
|
|
|
isGroup,
|
|
|
|
maskableRegex,
|
2020-05-24 23:13:21 +05:30
|
|
|
isProtectedByDefault,
|
2020-06-23 00:09:42 +05:30
|
|
|
awsLogoSvgPath,
|
|
|
|
awsTipDeployLink,
|
|
|
|
awsTipCommandsLink,
|
|
|
|
awsTipLearnLink,
|
|
|
|
protectedEnvironmentVariablesLink,
|
|
|
|
maskedEnvironmentVariablesLink,
|
2020-04-08 14:13:33 +05:30
|
|
|
});
|
|
|
|
|
|
|
|
return new Vue({
|
2020-06-23 00:09:42 +05:30
|
|
|
el: containerEl,
|
2020-04-08 14:13:33 +05:30
|
|
|
store,
|
|
|
|
render(createElement) {
|
|
|
|
return createElement(CiVariableSettings);
|
|
|
|
},
|
|
|
|
});
|
|
|
|
};
|