diff options
Diffstat (limited to 'app/assets/javascripts/organizations/index/index.js')
-rw-r--r-- | app/assets/javascripts/organizations/index/index.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/app/assets/javascripts/organizations/index/index.js b/app/assets/javascripts/organizations/index/index.js new file mode 100644 index 00000000000..7cbb9c9165d --- /dev/null +++ b/app/assets/javascripts/organizations/index/index.js @@ -0,0 +1,33 @@ +import Vue from 'vue'; +import VueApollo from 'vue-apollo'; +import createDefaultClient from '~/lib/graphql'; +import { convertObjectPropsToCamelCase } from '~/lib/utils/common_utils'; +import resolvers from '../shared/graphql/resolvers'; +import OrganizationsIndexApp from './components/app.vue'; + +export const initOrganizationsIndex = () => { + const el = document.getElementById('js-organizations-index'); + + if (!el) return false; + + const apolloProvider = new VueApollo({ + defaultClient: createDefaultClient(resolvers), + }); + + const { newOrganizationUrl, organizationsEmptyStateSvgPath } = convertObjectPropsToCamelCase( + el.dataset, + ); + + return new Vue({ + el, + name: 'OrganizationsIndexRoot', + apolloProvider, + provide: { + newOrganizationUrl, + organizationsEmptyStateSvgPath, + }, + render(createElement) { + return createElement(OrganizationsIndexApp); + }, + }); +}; |