summaryrefslogtreecommitdiffstats
path: root/src/main.js
diff options
context:
space:
mode:
authordevlinjunker <devlin.junker@gmail.com>2022-06-08 23:55:37 -0700
committerGitHub <noreply@github.com>2022-06-09 08:55:37 +0200
commit40d9c352aba5351c7a55a63e5bc0508141f51224 (patch)
tree1b50a4f622b40953189d99d5519fac08551f7fd1 /src/main.js
parentb036d309c27132e4f10df952e9335afdb3edfeb5 (diff)
[Vue Rewrite] Fix CI Jobs (#1816)
* attempt to fix linting Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * working linting/stylelint Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * fix npm build Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * working with node 16 and npm build Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * fix linting Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * add @babel/eslint-parser Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * remove babel-eslint Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * use node 16 in lint Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * proper syntax Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * fix syntax Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * update version Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * attempt to undo indentation changes Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * revert indentation on css and update stylelint rule for now (for simpler PR) Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * revert indentation changes in vue/js files and update eslint to pass this (for now) Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * try to cleanup disabled rules Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * remove last disabled rules in js files Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * add basic changelog Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * update calendar-js to 3.0 Signed-off-by: Devlin Junker <devlin.junker@gmail.com> * remove npm test with TODO (this will fail CI) and remove calendar-js dependency Signed-off-by: Devlin Junker <devlin.junker@gmail.com>
Diffstat (limited to 'src/main.js')
-rw-r--r--src/main.js101
1 files changed, 53 insertions, 48 deletions
diff --git a/src/main.js b/src/main.js
index 51aec5617..54fecf3d9 100644
--- a/src/main.js
+++ b/src/main.js
@@ -1,10 +1,13 @@
+
import Vue from 'vue'
import App from './App'
import VueRouter from 'vue-router'
import Explore from './components/Explore'
-import {generateUrl} from "@nextcloud/router";
+import { generateUrl } from '@nextcloud/router'
import Vuex from 'vuex'
-import axios from "@nextcloud/axios";
+import axios from '@nextcloud/axios'
+
+import { Tooltip } from '@nextcloud/vue'
Vue.prototype.t = t
Vue.prototype.n = n
@@ -14,55 +17,57 @@ Vue.prototype.OCA = OCA
Vue.use(Vuex)
Vue.use(VueRouter)
-import { Tooltip } from '@nextcloud/vue'
-
Vue.directive('tooltip', Tooltip)
-const feedUrl = generateUrl("/apps/news/feeds")
-const folderUrl = generateUrl("/apps/news/folders")
+const feedUrl = generateUrl('/apps/news/feeds')
+const folderUrl = generateUrl('/apps/news/folders')
const routes = [
{
name: 'explore',
path: '#explore',
- component: Explore
+ component: Explore,
},
]
const router = new VueRouter({
mode: 'history',
base: generateUrl('apps/news'),
- routes
-});
+ routes,
+})
const store = new Vuex.Store({
state: {
folders: [],
- feeds: []
+ feeds: [],
},
mutations: {
addFolders(state, folders) {
- folders.forEach(it => {
+ folders.forEach((it) => {
it.feedCount = 0
state.folders.push(it)
})
},
addFeeds(state, feeds) {
- feeds.forEach(it => {
+ feeds.forEach((it) => {
state.feeds.push(it)
- const folder = state.folders.find(folder => folder.id === it.folderId)
+ const folder = state.folders.find(
+ (folder) => folder.id === it.folderId
+ )
folder.feeds.push(it)
folder.feedCount += it.unreadCount
})
- }
+ },
},
actions: {
- addFolder({commit}, {folder}) {
- axios.post(folderUrl, {folderName: folder.name}).then(
- response => commit('addFolders', response.data.folders)
- );
+ addFolder({ commit }, { folder }) {
+ axios
+ .post(folderUrl, { folderName: folder.name })
+ .then((response) =>
+ commit('addFolders', response.data.folders)
+ )
},
- deleteFolder({commit}, {folder}) {
+ deleteFolder({ commit }, { folder }) {
/**
this.getByFolderId(folderId).forEach(function (feed) {
promises.push(self.reversiblyDelete(feed.id, false, true));
@@ -72,22 +77,20 @@ const store = new Vuex.Store({
*/
axios.delete(folderUrl + '/' + folder.id).then()
},
- loadFolder({commit}) {
- console.log('loading folders')
- axios.get(folderUrl).then(
- response => {
- commit('addFolders', response.data.folders);
- axios.get(feedUrl).then(
- response => commit('addFeeds', response.data.feeds)
+ loadFolder({ commit }) {
+ axios.get(folderUrl).then((response) => {
+ commit('addFolders', response.data.folders)
+ axios
+ .get(feedUrl)
+ .then((response) =>
+ commit('addFeeds', response.data.feeds)
)
- }
- )
+ })
},
- addFeed({commit}, {feedReq}) {
- console.log(feedReq)
- let url = feedReq.url.trim();
+ addFeed({ commit }, { feedReq }) {
+ let url = feedReq.url.trim()
if (!url.startsWith('http')) {
- url = 'https://' + url;
+ url = 'https://' + url
}
/**
@@ -96,31 +99,33 @@ const store = new Vuex.Store({
}
*/
- let feed = {
- url: url,
+ const feed = {
+ url,
folderId: feedReq.folder.id || 0,
title: null,
- unreadCount: 0
- };
+ unreadCount: 0,
+ }
// this.add(feed);
// this.updateFolderCache();
- axios.post(feedUrl, {
- url: feed.url,
- parentFolderId: feed.folderId,
- title: null,
- user: null,
- password: null,
- fullDiscover: feed.autoDiscover
- }).then();
- }
- }
-});
+ axios
+ .post(feedUrl, {
+ url: feed.url,
+ parentFolderId: feed.folderId,
+ title: null,
+ user: null,
+ password: null,
+ fullDiscover: feed.autoDiscover,
+ })
+ .then()
+ },
+ },
+})
export default new Vue({
router,
store,
el: '#content',
- render: h => h(App),
+ render: (h) => h(App),
})