components.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. window.Vue = require('vue');
  2. import BootstrapVue from 'bootstrap-vue'
  3. Vue.use(BootstrapVue);
  4. window.InfiniteScroll = require('infinite-scroll');
  5. window.filesize = require('filesize');
  6. import swal from 'sweetalert';
  7. require('./components/localstorage');
  8. require('./components/likebutton');
  9. require('./components/commentform');
  10. require('./components/searchform');
  11. require('./components/bookmarkform');
  12. require('./components/statusform');
  13. require('./components/embed');
  14. require('./components/notifications');
  15. // import Echo from "laravel-echo"
  16. // window.io = require('socket.io-client');
  17. // window.pixelfed.bootEcho = function() {
  18. // window.Echo = new Echo({
  19. // broadcaster: 'socket.io',
  20. // host: window.location.hostname + ':2096',
  21. // auth: {
  22. // headers: {
  23. // Authorization: 'Bearer ' + token.content,
  24. // },
  25. // },
  26. // });
  27. // }
  28. Vue.component(
  29. 'follow-suggestions',
  30. require('./components/FollowSuggestions.vue')
  31. );
  32. Vue.component(
  33. 'discover-component',
  34. require('./components/DiscoverComponent.vue')
  35. );
  36. // Vue.component(
  37. // 'circle-panel',
  38. // require('./components/CirclePanel.vue')
  39. // );
  40. Vue.component(
  41. 'post-component',
  42. require('./components/PostComponent.vue')
  43. );
  44. Vue.component(
  45. 'post-presenter',
  46. require('./components/PostPresenter.vue')
  47. );
  48. Vue.component(
  49. 'post-comments',
  50. require('./components/PostComments.vue')
  51. );
  52. Vue.component(
  53. 'passport-clients',
  54. require('./components/passport/Clients.vue')
  55. );
  56. Vue.component(
  57. 'passport-authorized-clients',
  58. require('./components/passport/AuthorizedClients.vue')
  59. );
  60. Vue.component(
  61. 'passport-personal-access-tokens',
  62. require('./components/passport/PersonalAccessTokens.vue')
  63. );
  64. window.pixelfed.copyToClipboard = (str) => {
  65. const el = document.createElement('textarea');
  66. el.value = str;
  67. el.setAttribute('readonly', '');
  68. el.style.position = 'absolute';
  69. el.style.left = '-9999px';
  70. document.body.appendChild(el);
  71. const selected =
  72. document.getSelection().rangeCount > 0
  73. ? document.getSelection().getRangeAt(0)
  74. : false;
  75. el.select();
  76. document.execCommand('copy');
  77. document.body.removeChild(el);
  78. if (selected) {
  79. document.getSelection().removeAllRanges();
  80. document.getSelection().addRange(selected);
  81. }
  82. };
  83. $(document).ready(function() {
  84. $(function () {
  85. $('[data-toggle="tooltip"]').tooltip()
  86. });
  87. });