Compare commits

..

2 Commits

Author SHA1 Message Date
337acb5448 mstodo query 2020-10-11 20:18:09 +02:00
e019d5660b added mstodo as wunderlist, gitbase as gitlab 2020-10-04 03:14:41 +02:00
7 changed files with 37 additions and 21 deletions

View File

@ -22,7 +22,7 @@
"date-fns": "^2.15.0",
"dotenv": "^8.2.0",
"lodash": "^4.17.11",
"mobx": "^5.15.7",
"mobx": "^5.15.4",
"mobx-react": "^6.2.2",
"prop-types": "^15.6.2",
"query-string": "^6.12.1",

View File

@ -1,11 +1,11 @@
import axios from "axios"
import { formatDate } from "utils"
const baseURL = subdomain => {
const baseURL = (subdomain) => {
if (process.env.NODE_ENV === "production") {
return `https://${encodeURIComponent(subdomain)}.mocoapp.com/api/browser_extensions`
} else {
return `http://${encodeURIComponent(subdomain)}.mocoapp.localhost:3000/api/browser_extensions`
return `https://${encodeURIComponent(subdomain)}.mocoapp.com/api/browser_extensions`
}
}
@ -27,7 +27,7 @@ export default class Client {
})
}
login = service =>
login = (service) =>
this.#client.post("session", {
api_key: this.#apiKey,
remote_service: service?.name,
@ -46,7 +46,7 @@ export default class Client {
params: { date: `${formatDate(fromDate)}:${formatDate(toDate)}` },
})
activitiesStatus = service => {
activitiesStatus = (service) => {
if (!service) {
return Promise.resolve({ data: { hours: 0 } })
}
@ -55,7 +55,7 @@ export default class Client {
})
}
createActivity = activity => this.#client.post("activities", { activity })
createActivity = (activity) => this.#client.post("activities", { activity })
stopTimer = timedActivity => this.#client.get(`activities/${timedActivity.id}/stop_timer`)
stopTimer = (timedActivity) => this.#client.get(`activities/${timedActivity.id}/stop_timer`)
}

View File

@ -122,18 +122,31 @@ export default {
allowHostOverride: false,
},
wunderlist: {
mstodo: {
name: "wunderlist",
host: "https://www.wunderlist.com",
urlPatterns: [":host:/(webapp)#/tasks/:id(/*)"],
host: "https://to-do.office.com",
urlPatterns: [":host:/tasks/id/:id(*)"],
description: (document) =>
document
.querySelector(".taskItem.selected .taskItem-titleWrapper-title")
?.textContent?.trim(),
projectId: projectIdentifierBySelector(".taskItem.selected .taskItem-titleWrapper-title"),
.querySelector(".detailHeader")
?.textContent?.replace(/^[^[]+\[/, "[")
.replace(projectRegex, "")
.trim(),
projectId: projectIdentifierBySelector(".detailHeader"),
allowHostOverride: false,
},
gitbase: {
name: "gitlab",
host: "https://gitbase.de",
urlPatterns: [":host:/:owner/:repo/issues/:id"],
description: (document) =>
document.querySelector("#issue-title")?.textContent?.replace(projectRegex, "").trim(),
projectId: projectIdentifierBySelector(".select-project.list a"),
allowHostOverride: false,
},
/*
"gitlab-mr": {
name: "gitlab",
host: "https://gitlab.com",
@ -161,6 +174,7 @@ export default {
},
allowHostOverride: true,
},
*/
monday: {
name: "monday",

View File

@ -28,6 +28,8 @@ export function tabUpdated(tab, { messenger, settings }) {
const service = matcher(tab.url)
const apiClient = new ApiClient(settings)
// console.log(service)
if (service?.match?.id) {
messenger.postMessage(tab, { type: "requestService" })
@ -67,7 +69,7 @@ export function settingsChanged(settings, { messenger }) {
queryTabs({ currentWindow: true })
.then(reject(isBrowserTab))
.then(
forEach(tab => {
forEach((tab) => {
messenger.postMessage(tab, { type: "closePopup" })
tabUpdated(tab, { settings, messenger })
}),
@ -75,7 +77,7 @@ export function settingsChanged(settings, { messenger }) {
}
export function togglePopup(tab, { messenger }) {
return function({ isOpen, service } = {}) {
return function ({ isOpen, service } = {}) {
if (isNil(isOpen)) {
return
}

View File

@ -20,7 +20,7 @@ module.exports = (env) => {
...manifest,
permissions: compact([
...manifest.permissions,
env.NODE_ENV === "development" ? "http://*.mocoapp.localhost/*" : null,
env.NODE_ENV === "development" ? "https://*.mocoapp.com/*" : null,
]),
options_ui: {
...manifest.options_ui,

View File

@ -21,7 +21,7 @@ module.exports = (env) => {
...manifest,
permissions: compact([
...manifest.permissions,
env.NODE_ENV === "development" ? "http://*.mocoapp.localhost/*" : null,
env.NODE_ENV === "development" ? "https://*.mocoapp.com/*" : null,
]),
options_ui: {
...manifest.options_ui,

View File

@ -5639,10 +5639,10 @@ mobx-react@^6.2.2:
dependencies:
mobx-react-lite ">=2.2.0"
mobx@^5.15.7:
version "5.15.7"
resolved "https://registry.yarnpkg.com/mobx/-/mobx-5.15.7.tgz#b9a5f2b6251f5d96980d13c78e9b5d8d4ce22665"
integrity sha512-wyM3FghTkhmC+hQjyPGGFdpehrcX1KOXsDuERhfK2YbJemkUhEB+6wzEN639T21onxlfYBmriA1PFnvxTUhcKw==
mobx@^5.15.4:
version "5.15.6"
resolved "https://registry.yarnpkg.com/mobx/-/mobx-5.15.6.tgz#24750af56f87bcf9c3cf82ece4c79eb91bb71968"
integrity sha512-U5nnx3UNdRkUjntpwzO060VWifGVx/JZeu/aMw4y28dTjDNjoY3vNKs6tFNm7z1qIfcPInsd9L9HIm8H0zTDqg==
move-concurrently@^1.0.1:
version "1.0.1"