diff options
Diffstat (limited to 'app/assets/javascripts/issuable/init_csv_import_export_buttons.js')
-rw-r--r-- | app/assets/javascripts/issuable/init_csv_import_export_buttons.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/app/assets/javascripts/issuable/init_csv_import_export_buttons.js b/app/assets/javascripts/issuable/init_csv_import_export_buttons.js new file mode 100644 index 00000000000..5a720b89d33 --- /dev/null +++ b/app/assets/javascripts/issuable/init_csv_import_export_buttons.js @@ -0,0 +1,45 @@ +import Vue from 'vue'; +import { parseBoolean } from '~/lib/utils/common_utils'; +import ImportExportButtons from './components/csv_import_export_buttons.vue'; + +export default () => { + const el = document.querySelector('.js-csv-import-export-buttons'); + + if (!el) return null; + + const { + showExportButton, + showImportButton, + issuableType, + issuableCount, + email, + exportCsvPath, + importCsvIssuesPath, + containerClass, + canEdit, + projectImportJiraPath, + maxAttachmentSize, + showLabel, + } = el.dataset; + + return new Vue({ + el, + provide: { + showExportButton: parseBoolean(showExportButton), + showImportButton: parseBoolean(showImportButton), + issuableType, + issuableCount, + email, + exportCsvPath, + importCsvIssuesPath, + containerClass, + canEdit: parseBoolean(canEdit), + projectImportJiraPath, + maxAttachmentSize, + showLabel, + }, + render(h) { + return h(ImportExportButtons); + }, + }); +}; |