summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/admin/broadcast_messages/index.js
blob: 29021043b1a326d86455d26fedca1e9740194d3b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import Vue from 'vue';
import BroadcastMessagesBase from './components/base.vue';

export default () => {
  const el = document.querySelector('#js-broadcast-messages');
  const {
    page,
    targetAccessLevelOptions,
    messagesPath,
    previewPath,
    messagesCount,
    messages,
  } = el.dataset;

  return new Vue({
    el,
    name: 'BroadcastMessages',
    provide: {
      targetAccessLevelOptions: JSON.parse(targetAccessLevelOptions),
      messagesPath,
      previewPath,
    },
    render(createElement) {
      return createElement(BroadcastMessagesBase, {
        props: {
          page: Number(page),
          messagesCount: Number(messagesCount),
          messages: JSON.parse(messages),
        },
      });
    },
  });
};