From b925ae8ef59be59fa39f569a3624fd6ac347613c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carsten=20Gr=C3=A4f?= Date: Fri, 8 Mar 2024 16:48:55 +0100 Subject: [PATCH] more cleanup --- src/services/PouchDbPersistenceService.ts | 761 ---------------------- src/stores/logsStore.ts | 74 +-- src/utils/overrideConsole.ts | 58 +- 3 files changed, 66 insertions(+), 827 deletions(-) delete mode 100644 src/services/PouchDbPersistenceService.ts diff --git a/src/services/PouchDbPersistenceService.ts b/src/services/PouchDbPersistenceService.ts deleted file mode 100644 index ac58565c..00000000 --- a/src/services/PouchDbPersistenceService.ts +++ /dev/null @@ -1,761 +0,0 @@ -// import PouchDB, {sync} from 'pouchdb-browser'; -// import {useTabsStore} from "src/stores/tabsStore"; -// import PersistenceService from "src/services/PersistenceService"; -// import {Tabset, TabsetStatus} from "src/models/Tabset"; -// import {useSpacesStore} from "src/stores/spacesStore"; -// import {Space} from "src/models/Space"; -// import {MHtml} from "src/models/MHtml"; -// import {Tab} from "src/models/Tab"; -// import {SearchDoc} from "src/models/SearchDoc"; -// import {LogEntry} from "src/models/LogEntry"; -// import {Predicate} from "src/domain/Types"; -// import {Notification} from "src/models/Notification"; -// import {StaticSuggestionIdent, Suggestion, SuggestionState} from "src/models/Suggestion"; -// import {useAuthStore} from "src/stores/authStore"; -// import {Buffer} from 'buffer'; -// import {api} from "../boot/axios"; -// import throttledQueue from "throttled-queue"; -// import {MetaLink} from "src/models/MetaLink"; -// import {LocalStorage} from "quasar"; -// import {useUiStore} from "stores/uiStore"; -// import {RequestInfo} from "src/models/RequestInfo"; -// import {Window} from "src/models/Window"; -// import {BlobType, SavedBlob} from "src/models/SavedBlob"; -// import {Message} from "src/models/Message"; -// import {Account} from "src/models/Account"; -// -// const throttleOne10Millis = throttledQueue(1, 10, true) -// -// /** -// * PouchDB is meant for data synchronization, specifically tabsets information. Additional data (not meant -// * to be synchronized) will be stored in the 'normal' indexeddb (called "db" for the anonymous user) -// * -// * If a user logs in (Auth0), an additional pair of databases is created for each user to keep the data apart, -// * a 'pouch' db (starting with "pouch_db-") and a normal indexeddb one (called db-) -// * -// */ -// class PouchDbPersistenceService implements PersistenceService { -// -// getServiceName(): string { return "PouchDbPersistenceService" } -// -// loadCategories(): Promise { -// console.warn("loading categories... - not implemented") -// return Promise.reject("loadCategories not implemented") -// } -// -// private db: undefined | PouchDB.Database<{}> & {} = undefined; -// -// private remoteDB: undefined | PouchDB.Database<{}> & {} = undefined -// -// async init(dbName: string) { -// const isAuthenticated = useAuthStore().isAuthenticated -// console.debug("PouchDB: initializing pouchdb:", dbName, isAuthenticated) -// this.db = new PouchDB(dbName) -// this.syncIfAuthenticated() -// } -// -// /** -// * new user: -// * -// * curl -X PUT https://admin:3Zmd...@cdb.skysail.io/_users/org.couchdb.user:auth0|641d4ef02fed75bb3d235f4b -H "Accept: application/json" -H "Content-Type: application/json" -d '{"name": "izzy", "password": "apple", "roles": [], "type": "user"}' -// * -// * -// * in couchdb /etc/local.init: -// * -// * [chttpd] -// * authentication_handlers = {chttpd_auth, cookie_authentication_handler}, {chttpd_auth, jwt_authentication_handler}, {chttpd_auth, default_authentication_handler} -// * [jwt_auth] -// * required_claims = -// * [jwt_keys] -// * hmac:foo = aGVsbG8= -// * rsa:MzEx...yNw = -----BEGIN PUBLIC KEY-----\nMIIBIjANBgkq...D45YsMSR\nXQIDAQAB\n-----END PUBLIC KEY-----\n -// * ~ -// * MzEx... from token 'kid' -// * MIIBI... from skysail curl -s ...auth0.com/pem | openssl x509 -pubkey -noout -// */ -// async initRemoteDb(): Promise { -// const user = useAuthStore().user -// const user_id: string = user['sub' as keyof object]?.replace("|", "-") || '' -// // const token = sign({sub: user_id}, "process.env.SECRET_KEY", { -// // expiresIn: 3600, -// // }); -// -// if (user && user['sub' as keyof object]) { -// // console.log("4initializing remote db with user", user) -// -// let useToken = '' -// const accessToken = await useAuthStore().getAccessTokenSilently -// const config = {headers: {Authorization: 'Bearer ' + accessToken,}} -// const res = await api.get(`${process.env.BACKEND_URL}/couchdb/token`, config) -// useToken = res.data.token -// -// const dbName = "userdb-" + Buffer.from(user_id).toString('hex') -// const dbUrl = `${process.env.COUCHDB_PROTOCOL}${process.env.COUCHDB_URL}/${dbName}` -// this.remoteDB = new PouchDB(dbUrl, -// { -// fetch: function (url, opts) { -// // console.log("url...", url) -// // console.log("opts...", opts) -// -// if (opts && opts.headers) { -// // @ts-ignore -// opts.headers.set('Authorization', 'Bearer ' + useToken); -// } -// //console.log("opts2", url, opts?.headers) -// return PouchDB.fetch(url, opts); -// } -// }) -// this.syncIfAuthenticated() -// } -// } -// -// async saveTabset(tabset: Tabset): Promise { -// -// return throttleOne10Millis(async () => { -// console.log("saving tabset", tabset, this.db) -// if (!tabset._id) { -// // console.log("saving tabset with _id", tabset) -// // return Promise.reject("pouch db not initialized2") -// tabset._id = "tabset:" + new Date().toJSON() -// } -// if (this.db) { -// return this.db.put(JSON.parse(JSON.stringify(tabset))) -// .then((res: PouchDB.Core.Response) => { -// this.syncIfAuthenticated(true) -// return res.rev -// }) -// } -// return Promise.reject("pouch db not initialized") -// }) -// } -// -// -// async loadTabsets(): Promise { -// const tabsStore = useTabsStore() -// tabsStore.tabsets.clear() -// if (this.db) { -// -// try { -// const result = -// await this.db.allDocs({include_docs: true, startkey: 'tabset:', endkey: 'tabset:\uffff'}); -// result.rows.forEach(row => { -// // console.log("row.doc1", row.doc) -// // @ts-ignore -// tabsStore.addTabset(row.doc) -// }) -// return Promise.resolve(); -// } catch (err) { -// console.log(err); -// return Promise.reject(err) -// } -// -// // this.db.allDocs({include_docs: true, startkey: 'tabset:'}) -// // .then(function (result) { -// // result.rows.forEach(row => { -// // console.log("row.doc2", row.doc) -// // //tabsStore.addTabset(row.doc) -// // }) -// // }).catch(function (err) { -// // console.log(err); -// // }); -// -// // this.db.allDocs({include_docs: true, startkey: 'tabset:'}, -// // (docs: PouchDB.Core.AllDocsResponse) => { -// // docs.rows.forEach(row => { -// // tabsStore.addTabset(row.doc) -// // }) -// // }) -// //return Promise.resolve(); -// } -// return Promise.reject("pouch db not initialized") -// } -// -// reloadTabset(tabsetId: string): void { -// console.warn("no op in reload tabset") -// } -// -// addNotification(notification: Notification): Promise { -// notification._id = "notification:" + new Date().toJSON() -// if (this.db) { -// return this.db.put(notification) -// .then((res: any) => { -// this.syncIfAuthenticated(true) -// return res; -// }) -// } -// return Promise.reject("pouch db not initialized") -// } -// -// addSpace(space: Space): Promise { -// space._id = "space:" + new Date().toJSON() -// if (this.db) { -// return this.db.put(space) -// .then((res: any) => { -// this.syncIfAuthenticated(true) -// return res; -// }) -// } -// return Promise.reject("pouch db not initialized") -// } -// -// loadSpaces(): Promise { -// const store = useSpacesStore() -// if (this.db) { -// this.db.allDocs({include_docs: true, startkey: 'space:', endkey: 'tabset:', inclusive_end: false}) -// .then((docs: PouchDB.Core.AllDocsResponse) => { -// docs.rows.forEach(row => { -// //console.log("adding space from pouchDB", row.doc) -// store.putSpace(row.doc) -// }) -// }) -// return Promise.resolve(); -// } -// return Promise.reject("pouch db not initialized") -// } -// -// async getActiveFeatures(): Promise { -// if (this.db) { -// try { -// const f = await this.db.get("activeFeatures") -// if (f) { -// return Promise.resolve(f['activeFeatures' as keyof object]) -// } -// } catch (err) { -// console.log("got error", err) -// } -// } -// return Promise.resolve([]) -// } -// -// async getInactiveDefaultFeatures(): Promise { -// if (this.db) { -// try { -// const f = await this.db.get("inActiveDefaultFeatures") -// if (f) { -// return Promise.resolve(f['inActiveDefaultFeatures' as keyof object]) -// } -// } catch (err) { -// console.log("got error", err) -// } -// } -// return Promise.resolve([]) -// } -// -// async getSyncInfo(versionIfNotDefined: number = 0): Promise { -// if (this.remoteDB) { -// try { -// const f = await this.remoteDB.get("sync") -// if (f) { -// return Promise.resolve(f) -// } -// } catch (err: any) { -// console.log("got error", err) -// if (err.status === 404) { -// console.log("trying to initialize syncVersion with", versionIfNotDefined) -// const data = { -// _id: "sync", -// syncVersion: versionIfNotDefined -// } -// this.remoteDB.put(data) -// } -// } -// } -// return Promise.resolve([]) -// } -// -// async increaseSyncVersion() { -// console.log("increasing SyncVersion") -// if (this.db) { -// let newSyncVersion = 1 -// try { -// const sync = await this.db.get("sync") -// -// if (sync) { -// newSyncVersion = sync['syncVersion' as keyof object] ? -// sync['syncVersion' as keyof object] + 1 : 1 -// console.log("updating syncVersion", sync['syncVersion' as keyof object], newSyncVersion) -// const data = { -// _id: "sync", -// _rev: sync._rev, -// // sync: val -// syncVersion: newSyncVersion -// } -// //console.log("updating with data", data) -// this.db.put(data) -// //.then(() => this.syncIfAuthenticated()) -// .catch((err: any) => { -// if (err && err['status'] && err['status'] == 409) { -// console.log("got conflict", err) -// } else { -// console.log("error updating features", err) -// } -// }) -// } -// } catch (err) { -// const data = { -// _id: "sync", -// syncVersion: newSyncVersion -// } -// console.log("adding data", data) -// this.db.put(data) -// } -// LocalStorage.set('ui.syncVersion', newSyncVersion) -// } -// return Promise.resolve() -// } -// -// addSuggestion(suggestion: Suggestion): Promise { -// // suggestion._id = "suggestion:" + new Date().toJSON() -// // if (this.db) { -// // return this.db.put(suggestion) -// // .then((res: any) => { -// // this.syncIfAuthenticated(true) -// // return res; -// // }) -// // } -// return Promise.reject("not implemented") -// } -// -// cleanUpContent(): Promise { -// console.warn("cleaupUpContent not implemented yet in pouchdb") -// return Promise.resolve([]); -// } -// -// cleanUpRequests(): Promise { -// console.warn("cleanUpRequests not implemented yet in pouchdb") -// return Promise.resolve(undefined); -// } -// -// cleanUpThumbnails(): Promise { -// console.warn("cleanUpThumbnails not implemented yet in pouchdb") -// return Promise.resolve(undefined); -// } -// -// deleteContent(url: string): Promise { -// console.warn("deleteContent not implemented yet in pouchdb") -// return Promise.resolve(undefined); -// } -// -// async deleteTabset(_id: string): Promise { -// console.log("deleting tabset _id", _id) -// if (this.db) { -// const doc = await this.db.get(_id)//.then(function (doc) { -// return this.db.remove(doc); -// } -// return Promise.reject("pouch db not initialized") -// } -// -// deleteThumbnail(url: string): Promise { -// return Promise.resolve(undefined); -// } -// -// getContent(url: string): Promise { -// return Promise.resolve({}); -// } -// -// getContents(): Promise { -// return Promise.resolve([]); -// } -// -// getLinks(url: string): Promise { -// return Promise.resolve({}); -// } -// -// getLogs(predicate: Predicate): Promise { -// return Promise.resolve([]); -// } -// -// getMHtml(url: string): Promise { -// return Promise.resolve({}); -// } -// -// getMHtmlInline(url: string): Promise { -// return Promise.resolve({}); -// } -// -// getMHtmls(): Promise { -// return Promise.resolve([]); -// } -// -// getMetaLinks(url: string): Promise { -// return Promise.resolve({}); -// } -// -// getNotifications(onlyNew: boolean): Promise { -// return Promise.resolve([]); -// } -// -// getRequest(url: string): Promise { -// return Promise.resolve(""); -// } -// -// getSuggestions(): Promise { -// return Promise.resolve([]); -// } -// -// getThumbnail(url: string): Promise { -// return Promise.resolve(""); -// } -// -// notificationRead(notificationId: string): Promise { -// return Promise.resolve(undefined); -// } -// -// saveContent(tab: Tab, text: string, metas: object, title: string, tabsetIds: string[]): Promise { -// console.log("in save content - no op", tab, text, metas) -// return Promise.resolve(undefined); -// } -// -// saveMHtml(tab: Tab, mhtml: Blob): Promise { -// return Promise.resolve(""); -// } -// -// saveStats(date: string, dataset: object): void { -// } -// -// -// saveThumbnail(tab: chrome.tabs.Tab, thumbnail: string): Promise { -// return Promise.resolve(undefined); -// } -// -// updateContent(url: string): Promise { -// return Promise.resolve({}); -// } -// -// updateThumbnail(url: string): Promise { -// return Promise.resolve(undefined); -// } -// -// async addGroup(group: chrome.tabGroups.TabGroup): Promise { -// -// const groups = await this.getGroups() -// groups.push(group) -// const groupAsObject = JSON.parse(JSON.stringify(group)) -// groupAsObject['_id'] = "group:" + group.title//"group:" + new Date().toJSON() -// if (this.db) { -// console.log("adding group to pouchDB", groupAsObject) -// return this.db.put(groupAsObject) -// .then((res: any) => { -// this.syncIfAuthenticated(true) -// return res; -// }) -// .catch((err) => { -// console.log("error at addGroup", err) -// }) -// } -// return Promise.reject("pouch db not initialized") -// } -// -// updateGroup(group: chrome.tabGroups.TabGroup): Promise { -// const groupAsObject = JSON.parse(JSON.stringify(group)) -// groupAsObject['_id'] = "group:" + group.title//"group:" + new Date().toJSON() -// if (this.db) { -// console.log("updating group to pouchDB", groupAsObject) -// return this.db.put(groupAsObject) -// .then((res: any) => { -// this.syncIfAuthenticated(true) -// return res; -// }) -// } -// return Promise.reject("pouch db not initialized") -// } -// -// async getGroups(): Promise { -// if (!this.db) { -// return Promise.reject("pouch db not initialized") -// } -// // try { -// // const doc = await this.db.get('groups') -// // console.log("here2") -// // const groups = doc['groups' as keyof object] as chrome.tabGroups.TabGroup[] || [] -// // console.log("getting group from pouchDB", groups) -// // return Promise.resolve(groups) -// // } catch (err:any) { -// // console.log("got error", err) -// // return Promise.resolve([]) -// // } -// const docs: PouchDB.Core.AllDocsResponse = await this.db.allDocs({ -// include_docs: true, -// startkey: 'group:', -// endkey: 'group:\uffff' -// }) -// // .then((docs: PouchDB.Core.AllDocsResponse) => { -// const groups: chrome.tabGroups.TabGroup[] = [] -// docs.rows.forEach((row: any) => { -// console.log("getting group from pouchDB", row.doc) -// groups.push(row.doc) -// }) -// return Promise.resolve(groups) -// // }) -// } -// -// async deleteGroupByTitle(title: string): Promise { -// if (this.db) { -// return this.db.allDocs({include_docs: true, startkey: 'groups:', endkey: 'groups:\uffff'}) -// .then((docs: PouchDB.Core.AllDocsResponse) => { -// const groups: chrome.tabGroups.TabGroup[] = [] -// docs.rows.forEach(row => { -// if (row.doc.title === title) { -// console.log("deleting group from pouchDB", row.doc) -// this.db?.remove(row.doc) -// } -// }) -// return Promise.resolve() -// }) -// return Promise.resolve(); -// } -// return Promise.reject("pouch db not initialized") -// } -// -// /*** Windows Management: not handled in PouchDB ***/ -// -// addWindow(window: Window): Promise { -// return Promise.reject("not implemented") -// } -// -// getWindows(): Promise { -// return Promise.reject("not implemented") -// } -// -// getWindow(windowId: number): Promise { -// return Promise.reject("not implemented") -// } -// -// removeWindow(windowId: number): Promise { -// return Promise.reject("not implemented") -// } -// -// updateWindow(window: Window): Promise { -// return Promise.reject("not implemented") -// } -// -// upsertWindow(window: Window): Promise { -// return Promise.reject("not implemented") -// } -// -// -// private async syncIfAuthenticated(increaseVersion = false) { -// if (this.db && useAuthStore().isAuthenticated && this.remoteDB) { -// const start = new Date().getTime() -// try { -// useUiStore().dbSyncing = true -// console.log("about to sync", useAuthStore().isAuthenticated) -// const currentUsername = useAuthStore().user.name -// console.log("syncing using username", currentUsername) -// if (currentUsername === "demo+tabsets@skysail.io" && process.env.MODE === 'pwa') { -// console.log("one-way synchronizing pouchdb") -// this.remoteDB.replicate.to(this.db).on('complete', function () { -// }).on('error', function (err: any) { -// console.log("got error!", err) -// }); -// } else { -// console.log("syncing with remote db") -// if (increaseVersion) { -// await this.increaseSyncVersion() -// } else { -// try { -// const sync = await this.db.get("sync") -// if (sync) { -// LocalStorage.set("ui.syncVersion", sync['syncVersion' as keyof object]) -// } -// } catch (err) { -// console.log("could not set local storage #ui.syncVersion to", err) -// } -// } -// this.db.sync(this.remoteDB) -// } -// useUiStore().dbSyncing = false -// console.log("sync finished", new Date().getTime() - start) -// } catch (err) { -// console.log("sync got error", err) -// useUiStore().dbSyncing = false -// } -// } -// } -// -// deleteSpace(spaceId: string) { -// -// } -// -// syncNow() { -// this.syncIfAuthenticated() -// } -// -// compactDb(): Promise { -// if (this.db) { -// return this.db.compact().then(function (result) { -// console.log("db compacted") -// }).catch(function (err: any) { -// console.log(err); -// }); -// } -// return Promise.reject("db not ready for compaction") -// } -// -// async saveActiveFeatures(val: string[]) { -// console.log("saving val in pouchdb - saveActiveFeatures", val) -// if (this.db && val) { -// // ignore revision -// try { -// const af = await this.db.get("activeFeatures") -// if (af) { -// const data = { -// _id: "activeFeatures", -// _rev: af._rev, -// activeFeatures: val -// } -// this.db.put(data) -// .then(() => this.syncIfAuthenticated()) -// .catch((err) => { -// if (err && err['status'] && err['status'] == 409) { -// // ignore conflict - this can happen when setting features via messages -// } else { -// console.log("error updating features", err) -// } -// }) -// } -// } catch (err) { -// const data = { -// _id: "activeFeatures", -// activeFeatures: val -// } -// this.db.put(data).then(() => this.syncIfAuthenticated()) -// } -// } -// return Promise.resolve() -// } -// -// async setInActiveDefaultFeatures(val: string[]) { -// console.log("saving val in pouchdb - setInActiveDefaultFeatures", val) -// if (this.db && val) { -// // ignore revision -// try { -// const af = await this.db.get("inActiveDefaultFeatures") -// if (af) { -// const data = { -// _id: "inActiveDefaultFeatures", -// _rev: af._rev, -// inActiveDefaultFeatures: val -// } -// this.db.put(data).then(() => this.syncIfAuthenticated()) -// .catch((err: any) => { -// if (err && err['status'] && err['status'] == 409) { -// // ignore conflict - this can happen when setting features via messages -// } else { -// console.log("error updating features", err) -// } -// }) -// } -// } catch (err) { -// const data = { -// _id: "inActiveDefaultFeatures", -// inActiveDefaultFeatures: val -// } -// this.db.put(data).then(() => this.syncIfAuthenticated()) -// } -// } -// return Promise.resolve([]) -// } -// -// removeSuggestion(ident: StaticSuggestionIdent): any { -// } -// -// setSuggestionState(id: string, state: SuggestionState): any { -// } -// -// async cleanUpTabsets(): Promise { -// if (this.db) { -// try { -// const ts = await this.db.allDocs({include_docs: true, startkey: 'tabset:', endkey: 'tabset:\uffff'}); -// ts.rows.forEach(row => { -// //console.log("got row", row.doc) -// const tabset = row.doc as unknown as Tabset -// if (tabset.status === TabsetStatus.DELETED && row.doc) { -// //this.db?.remove(row.doc) -// // const tsTabId = "tsTabs:" + row.doc._id.replace("tabset:", "") -// //console.log("about to delete", tsTabId) -// //this.db?.get(tsTabId).then((doc) => this.db?.remove(doc)) -// } -// }) -// return Promise.resolve() -// } catch (err) { -// console.log("cleanup Tabset issue", err) -// } -// } -// return Promise.reject("db not available") -// -// /* const objectStore = this.db.transaction("tabsets", "readwrite").objectStore("tabsets"); -// let cursor = await objectStore.openCursor() -// while (cursor) { -// if (cursor.value.status === TabsetStatus.DELETED) { -// console.log("cleanup: deleteing stale tabset", cursor.key) -// objectStore.delete(cursor.key) -// } -// cursor = await cursor.continue(); -// }*/ -// -// -// } -// -// clear(name: string): any { -// -// } -// -// getBlob(blobId: string): Promise { -// return Promise.resolve(undefined); -// } -// -// saveBlob(id: string, url: string, data: Blob, type: string): Promise { -// return Promise.resolve(undefined); -// } -// -// saveLinks(url: string, links: any): Promise { -// return Promise.resolve(undefined); -// } -// -// saveMetaLinks(url: string, metaLinks: MetaLink[]): Promise { -// return Promise.resolve(undefined); -// } -// -// saveRequest(url: string, requestInfo: RequestInfo): Promise { -// return Promise.resolve(undefined); -// } -// -// async getRemoteState() { -// const result = -// await this.remoteDB?.allDocs({include_docs: true, startkey: 'tabset:', endkey: 'tabset:\uffff'}); -// -// return result?.rows.length || 0 -// } -// -// deleteBlob(tabId: string, elementId: string): void { -// } -// -// deleteMHtml(id: string): Promise { -// return Promise.resolve(undefined); -// } -// -// getBlobs(type: BlobType): Promise { -// return Promise.resolve([]); -// } -// -// getBlobsForTab(tabId: string): Promise { -// return Promise.resolve([]); -// } -// -// addMessage(msg: Message): void { -// } -// -// getMessages(): Promise { -// return Promise.resolve([]); -// } -// -// getAccount(accountId: string): Promise { -// return Promise.reject("not implemented"); -// } -// -// upsertAccount(account: Account): void { -// } -// } -// -// export default new PouchDbPersistenceService() diff --git a/src/stores/logsStore.ts b/src/stores/logsStore.ts index 0ec08f46..a26825ee 100644 --- a/src/stores/logsStore.ts +++ b/src/stores/logsStore.ts @@ -1,37 +1,37 @@ -import {defineStore} from 'pinia'; -import {ref} from "vue"; - -/** - * a pinia store for (error) logs. - * - */ - -export const useLogsStore = defineStore('logs', () => { - - //overrideLogs() - - const logs = ref>([]) - const errors = ref>([]) - const warnings = ref>([]) - - function appendLog(data: object) { - logs.value.push(data) - } - - function appendWarning(data: object) { - warnings.value.push(data) - } - - function appendError(data: object) { - errors.value.push(data) - } - - return { - logs, - errors, - warnings, - appendLog, - appendWarning, - appendError - } -}) +// import {defineStore} from 'pinia'; +// import {ref} from "vue"; +// +// /** +// * a pinia store for (error) logs. +// * +// */ +// +// export const useLogsStore = defineStore('logs', () => { +// +// //overrideLogs() +// +// const logs = ref>([]) +// const errors = ref>([]) +// const warnings = ref>([]) +// +// function appendLog(data: object) { +// logs.value.push(data) +// } +// +// function appendWarning(data: object) { +// warnings.value.push(data) +// } +// +// function appendError(data: object) { +// errors.value.push(data) +// } +// +// return { +// logs, +// errors, +// warnings, +// appendLog, +// appendWarning, +// appendError +// } +// }) diff --git a/src/utils/overrideConsole.ts b/src/utils/overrideConsole.ts index 55ef1dcf..dc81da90 100644 --- a/src/utils/overrideConsole.ts +++ b/src/utils/overrideConsole.ts @@ -1,29 +1,29 @@ -import {useLogsStore} from "stores/logsStore"; - -export default function overrideLog() { - - const o_log = console.log; - const o_warn = console.warn - const o_error = console.error - - console.log = (...args) => { - useLogsStore().appendLog({ - log: args.join(" "), - }) - o_log(...args); - }; - - console.warn = (...args) => { - useLogsStore().appendWarning({ - log: args.join(" "), - }) - o_warn(...args); - }; - - console.error = (...args) => { - useLogsStore().appendError({ - log: args.join(" "), - }) - o_error(...args); - }; -} +// import {useLogsStore} from "stores/logsStore"; +// +// export default function overrideLog() { +// +// const o_log = console.log; +// const o_warn = console.warn +// const o_error = console.error +// +// console.log = (...args) => { +// useLogsStore().appendLog({ +// log: args.join(" "), +// }) +// o_log(...args); +// }; +// +// console.warn = (...args) => { +// useLogsStore().appendWarning({ +// log: args.join(" "), +// }) +// o_warn(...args); +// }; +// +// console.error = (...args) => { +// useLogsStore().appendError({ +// log: args.join(" "), +// }) +// o_error(...args); +// }; +// }