mirror of
https://github.com/Kuingsmile/PicList.git
synced 2025-03-13 00:18:13 -04:00
🔨 Refactor(custom): refactored all imports
This commit is contained in:
parent
8a565c1333
commit
e87e3999b4
@ -1,3 +1,3 @@
|
||||
import { bootstrap } from '~/main/lifeCycle'
|
||||
import { bootstrap } from '~/lifeCycle'
|
||||
|
||||
bootstrap.launchApp()
|
||||
|
43
src/main.ts
43
src/main.ts
@ -1,43 +1,28 @@
|
||||
|
||||
// Vue 相关
|
||||
import { createApp } from 'vue'
|
||||
import App from './renderer/App.vue'
|
||||
import router from './renderer/router'
|
||||
import { webFrame } from 'electron'
|
||||
import ElementUI from 'element-plus'
|
||||
import 'element-plus/dist/index.css'
|
||||
import { createPinia } from 'pinia'
|
||||
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
|
||||
import { createApp } from 'vue'
|
||||
import VueLazyLoad from 'vue3-lazyload'
|
||||
import { initTalkingData } from './renderer/utils/analytic'
|
||||
import vue3PhotoPreview from 'vue3-photo-preview'
|
||||
import 'vue3-photo-preview/dist/index.css'
|
||||
import VueVideoPlayer from '@videojs-player/vue'
|
||||
|
||||
// Electron 相关
|
||||
import { webFrame } from 'electron'
|
||||
|
||||
// Mixins
|
||||
import { mainMixin } from './renderer/utils/mainMixin'
|
||||
import { dragMixin } from '@/utils/mixin'
|
||||
|
||||
// 数据库
|
||||
import db from './renderer/utils/db'
|
||||
|
||||
// 国际化
|
||||
import { T } from './renderer/i18n/index'
|
||||
|
||||
// 工具函数
|
||||
import { getConfig, saveConfig, sendToMain, triggerRPC } from '@/utils/dataSender'
|
||||
|
||||
// 状态管理
|
||||
import { store } from '@/store'
|
||||
import { createPinia } from 'pinia'
|
||||
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
|
||||
|
||||
// 代码高亮
|
||||
import 'highlight.js/styles/atom-one-dark.css'
|
||||
import hljsVuePlugin from '@highlightjs/vue-plugin'
|
||||
import hljsCommon from 'highlight.js/lib/common'
|
||||
import 'video.js/dist/video-js.css'
|
||||
|
||||
import App from '@/App.vue'
|
||||
import router from '@/router'
|
||||
import db from '@/utils/db'
|
||||
import { T } from '@/i18n/index'
|
||||
import { store } from '@/store'
|
||||
import { initTalkingData } from '@/utils/analytic'
|
||||
import { getConfig, saveConfig, sendToMain, triggerRPC } from '@/utils/dataSender'
|
||||
import { mainMixin } from '@/utils/mainMixin'
|
||||
import { dragMixin } from '@/utils/mixin'
|
||||
|
||||
webFrame.setVisualZoomLevelLimits(1, 1)
|
||||
|
||||
const app = createApp(App)
|
||||
|
@ -1,25 +1,22 @@
|
||||
// External dependencies
|
||||
import axios from 'axios'
|
||||
import {
|
||||
app,
|
||||
clipboard,
|
||||
dialog,
|
||||
shell
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import { gte, lte } from 'semver'
|
||||
|
||||
// Electron modules
|
||||
import { app, clipboard, dialog, shell } from 'electron'
|
||||
|
||||
// Custom modules and utilities
|
||||
import windowManager from '../window/windowManager'
|
||||
import { showNotification } from '~/main/utils/common'
|
||||
|
||||
// Custom types/enums
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { showNotification } from '~/utils/common'
|
||||
import {
|
||||
IRemoteNoticeActionType,
|
||||
IRemoteNoticeTriggerCount,
|
||||
IRemoteNoticeTriggerHook
|
||||
} from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import { gte, lte } from 'semver'
|
||||
|
||||
// for test
|
||||
const REMOTE_NOTICE_URL = 'https://release.piclist.cn/remote-notice.json'
|
||||
|
||||
|
@ -1,24 +1,18 @@
|
||||
// External dependencies
|
||||
|
||||
import {
|
||||
globalShortcut
|
||||
} from 'electron'
|
||||
|
||||
import shortKeyService from 'apis/app/shortKey/shortKeyService'
|
||||
import GuiApi from 'apis/gui'
|
||||
|
||||
import bus from '@core/bus'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import db from '@core/datastore'
|
||||
import logger from '@core/picgo/logger'
|
||||
import picgo from '@core/picgo'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import GuiApi from '../../gui'
|
||||
import shortKeyService from './shortKeyService'
|
||||
|
||||
// Custom types/enums
|
||||
|
||||
// External utility functions
|
||||
import { TOGGLE_SHORTKEY_MODIFIED_MODE } from '#/events/constants'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
class ShortKeyHandler {
|
||||
private isInModifiedMode: boolean = false
|
||||
|
@ -1,34 +1,34 @@
|
||||
// External dependencies
|
||||
import {
|
||||
app,
|
||||
clipboard,
|
||||
dialog,
|
||||
Menu,
|
||||
nativeTheme,
|
||||
Notification,
|
||||
screen,
|
||||
Tray
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import { cloneDeep } from 'lodash'
|
||||
|
||||
// Electron modules
|
||||
import {
|
||||
app,
|
||||
Menu,
|
||||
Tray,
|
||||
dialog,
|
||||
clipboard,
|
||||
Notification,
|
||||
screen,
|
||||
nativeTheme
|
||||
} from 'electron'
|
||||
import db, { GalleryDB } from '@core/datastore'
|
||||
import picgo from '@core/picgo'
|
||||
|
||||
// Custom utilities and modules
|
||||
import uploader from 'apis/app/uploader'
|
||||
import db, { GalleryDB } from '~/main/apis/core/datastore'
|
||||
import { uploadClipboardFiles } from 'apis/app/uploader/apis'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import { buildPicBedListMenu } from '~/events/remotes/menu'
|
||||
import { T } from '~/i18n'
|
||||
import clipboardPoll from '~/utils/clipboardPoll'
|
||||
import { ensureFilePath, handleCopyUrl, setTray, tray } from '~/utils/common'
|
||||
import { isMacOSVersionGreaterThanOrEqualTo } from '~/utils/getMacOSVersion'
|
||||
import pasteTemplate from '~/utils/pasteTemplate'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { IPasteStyle, IWindowList } from '#/types/enum'
|
||||
import pasteTemplate from '~/main/utils/pasteTemplate'
|
||||
|
||||
import pkg from 'root/package.json'
|
||||
import { ensureFilePath, handleCopyUrl, setTray, tray } from '~/main/utils/common'
|
||||
import { T } from '~/main/i18n'
|
||||
import { isMacOSVersionGreaterThanOrEqualTo } from '~/main/utils/getMacOSVersion'
|
||||
import { buildPicBedListMenu } from '~/main/events/remotes/menu'
|
||||
import clipboardPoll from '~/main/utils/clipboardPoll'
|
||||
import picgo from '../../core/picgo'
|
||||
import { uploadClipboardFiles } from '../uploader/apis'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
|
||||
let contextMenu: Menu | null
|
||||
|
||||
|
@ -1,30 +1,30 @@
|
||||
// External dependencies
|
||||
import fs from 'fs-extra'
|
||||
import { cloneDeep } from 'lodash'
|
||||
|
||||
// Electron modules
|
||||
import {
|
||||
Notification,
|
||||
WebContents
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import { cloneDeep } from 'lodash'
|
||||
import path from 'path'
|
||||
import { ISftpPlistConfig } from 'piclist'
|
||||
|
||||
// Custom utilities and modules
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import pasteTemplate from '~/main/utils/pasteTemplate'
|
||||
import db, { GalleryDB } from '~/main/apis/core/datastore'
|
||||
import { handleCopyUrl, handleUrlEncodeWithSetting } from '~/main/utils/common'
|
||||
import { T } from '~/main/i18n/index'
|
||||
import ALLApi from '@/apis/allApi'
|
||||
import picgo from '@core/picgo'
|
||||
import GuiApi from '../../gui'
|
||||
import uploader from '.'
|
||||
import db, { GalleryDB } from '@core/datastore'
|
||||
|
||||
import GuiApi from 'apis/gui'
|
||||
import uploader from 'apis/app/uploader'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import { T } from '~/i18n/index'
|
||||
import { handleCopyUrl, handleUrlEncodeWithSetting } from '~/utils/common'
|
||||
import pasteTemplate from '~/utils/pasteTemplate'
|
||||
import SSHClient from '~/utils/sshClient'
|
||||
|
||||
import ALLApi from '@/apis/allApi'
|
||||
import { getRawData } from '@/utils/common'
|
||||
|
||||
import { IPasteStyle, IWindowList } from '#/types/enum'
|
||||
import { picBedsCanbeDeleted } from '#/utils/static'
|
||||
import path from 'path'
|
||||
import SSHClient from '~/main/utils/sshClient'
|
||||
import { ISftpPlistConfig } from 'piclist'
|
||||
import { getRawData } from '~/renderer/utils/common'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const handleClipboardUploading = async (): Promise<false | ImgInfo[]> => {
|
||||
const useBuiltinClipboard = db.get(configPaths.settings.useBuiltinClipboard) === undefined ? true : !!db.get(configPaths.settings.useBuiltinClipboard)
|
||||
|
@ -1,39 +1,34 @@
|
||||
// External dependencies
|
||||
import dayjs from 'dayjs'
|
||||
import {
|
||||
BrowserWindow,
|
||||
clipboard,
|
||||
ipcMain,
|
||||
Notification,
|
||||
WebContents
|
||||
} from 'electron'
|
||||
import fse from 'fs-extra'
|
||||
import util from 'util'
|
||||
import path from 'path'
|
||||
import writeFile from 'write-file-atomic'
|
||||
import fse from 'fs-extra'
|
||||
|
||||
// Electron modules
|
||||
import {
|
||||
Notification,
|
||||
BrowserWindow,
|
||||
ipcMain,
|
||||
WebContents,
|
||||
clipboard
|
||||
} from 'electron'
|
||||
|
||||
// Custom utilities and modules
|
||||
import picgo from '@core/picgo'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { showNotification, getClipboardFilePath, calcDurationRange } from '~/main/utils/common'
|
||||
import logger from '@core/picgo/logger'
|
||||
import { T } from '~/main/i18n'
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '~/universal/utils/static'
|
||||
|
||||
// Custom types/enums
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import { IPicGo } from 'piclist'
|
||||
import writeFile from 'write-file-atomic'
|
||||
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import db from '@core/datastore'
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
import { showNotification, getClipboardFilePath, calcDurationRange } from '~/utils/common'
|
||||
|
||||
import {
|
||||
GET_RENAME_FILE_NAME,
|
||||
RENAME_FILE_NAME,
|
||||
TALKING_DATA_EVENT
|
||||
} from '~/universal/events/constants'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
} from '#/events/constants'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '#/utils/static'
|
||||
|
||||
const waitForRename = (window: BrowserWindow, id: number): Promise<string|null> => {
|
||||
return new Promise((resolve) => {
|
||||
|
@ -1,12 +1,8 @@
|
||||
const isDevelopment = process.env.NODE_ENV !== 'production'
|
||||
|
||||
export const TRAY_WINDOW_URL = isDevelopment
|
||||
? (process.env.WEBPACK_DEV_SERVER_URL as string)
|
||||
: 'picgo://./index.html'
|
||||
|
||||
export const SETTING_WINDOW_URL = isDevelopment
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#main-page/upload`
|
||||
: 'picgo://./index.html#main-page/upload'
|
||||
export const MANUAL_WINDOW_URL = process.env.NODE_ENV === 'development'
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#documents`
|
||||
: 'picgo://./index.html#documents'
|
||||
|
||||
export const MINI_WINDOW_URL = isDevelopment
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#mini-page`
|
||||
@ -16,10 +12,14 @@ export const RENAME_WINDOW_URL = process.env.NODE_ENV === 'development'
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#rename-page`
|
||||
: 'picgo://./index.html#rename-page'
|
||||
|
||||
export const SETTING_WINDOW_URL = isDevelopment
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#main-page/upload`
|
||||
: 'picgo://./index.html#main-page/upload'
|
||||
|
||||
export const TRAY_WINDOW_URL = isDevelopment
|
||||
? (process.env.WEBPACK_DEV_SERVER_URL as string)
|
||||
: 'picgo://./index.html'
|
||||
|
||||
export const TOOLBOX_WINDOW_URL = process.env.NODE_ENV === 'development'
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#toolbox-page`
|
||||
: 'picgo://./index.html#toolbox-page'
|
||||
|
||||
export const MANUAL_WINDOW_URL = process.env.NODE_ENV === 'development'
|
||||
? `${(process.env.WEBPACK_DEV_SERVER_URL as string)}#documents`
|
||||
: 'picgo://./index.html#documents'
|
||||
|
@ -1,29 +1,24 @@
|
||||
// External dependencies
|
||||
import { app } from 'electron'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import bus from '@core/bus'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import picgo from '~/main/apis/core/picgo'
|
||||
import { T } from '~/main/i18n'
|
||||
import {
|
||||
SETTING_WINDOW_URL,
|
||||
TRAY_WINDOW_URL,
|
||||
MANUAL_WINDOW_URL,
|
||||
MINI_WINDOW_URL,
|
||||
RENAME_WINDOW_URL,
|
||||
TOOLBOX_WINDOW_URL,
|
||||
MANUAL_WINDOW_URL
|
||||
SETTING_WINDOW_URL,
|
||||
TRAY_WINDOW_URL,
|
||||
TOOLBOX_WINDOW_URL
|
||||
} from './constants'
|
||||
|
||||
// Custom types/enums
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import bus from '@core/bus'
|
||||
import { CREATE_APP_MENU } from '@core/bus/constants'
|
||||
import db from '@core/datastore'
|
||||
import picgo from '@core/picgo'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
|
||||
import { TOGGLE_SHORTKEY_MODIFIED_MODE } from '#/events/constants'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const windowList = new Map<IWindowList, IWindowListItem>()
|
||||
|
||||
|
@ -1,12 +1,6 @@
|
||||
// External dependencies
|
||||
import windowList from './windowList'
|
||||
|
||||
// Electron modules
|
||||
import { BrowserWindow } from 'electron'
|
||||
|
||||
// Custom utilities and modules
|
||||
|
||||
// Custom types/enums
|
||||
import windowList from 'apis/app/window/windowList'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class WindowManager implements IWindowManager {
|
||||
|
@ -1,14 +1,14 @@
|
||||
import bus from '.'
|
||||
import bus from '@core/bus/index'
|
||||
import {
|
||||
UPLOAD_WITH_FILES,
|
||||
UPLOAD_WITH_FILES_RESPONSE,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE,
|
||||
GET_SETTING_WINDOW_ID,
|
||||
GET_SETTING_WINDOW_ID_RESPONSE,
|
||||
GET_WINDOW_ID,
|
||||
GET_WINDOW_ID_REPONSE,
|
||||
GET_SETTING_WINDOW_ID,
|
||||
GET_SETTING_WINDOW_ID_RESPONSE
|
||||
} from './constants'
|
||||
UPLOAD_WITH_CLIPBOARD_FILES,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE,
|
||||
UPLOAD_WITH_FILES,
|
||||
UPLOAD_WITH_FILES_RESPONSE
|
||||
} from '@core/bus/constants'
|
||||
|
||||
export const uploadWithClipboardFiles = (): Promise<{
|
||||
success: boolean,
|
||||
|
@ -1,3 +1,4 @@
|
||||
export const CREATE_APP_MENU = 'CREATE_APP_MENU'
|
||||
export const GET_WINDOW_ID = 'GET_WINDOW_ID' // get a current window
|
||||
export const GET_WINDOW_ID_REPONSE = 'GET_WINDOW_ID_REPONSE'
|
||||
export const GET_SETTING_WINDOW_ID = 'GET_SETTING_WINDOW_ID' // get setting window
|
||||
@ -6,4 +7,3 @@ export const UPLOAD_WITH_FILES = 'UPLOAD_WITH_FILES'
|
||||
export const UPLOAD_WITH_FILES_RESPONSE = 'UPLOAD_WITH_FILES_RESPONSE'
|
||||
export const UPLOAD_WITH_CLIPBOARD_FILES = 'UPLOAD_WITH_CLIPBOARD_FILES'
|
||||
export const UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE = 'UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE'
|
||||
export const CREATE_APP_MENU = 'CREATE_APP_MENU'
|
||||
|
@ -1,28 +1,19 @@
|
||||
// External dependencies
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import dayjs from 'dayjs'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
import { app } from 'electron'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { getLogger } from '../utils/localLogger'
|
||||
|
||||
// Custom types/enums
|
||||
|
||||
// External utility functions
|
||||
|
||||
// External utility functions
|
||||
import writeFile from 'write-file-atomic'
|
||||
|
||||
// Custom types/enums
|
||||
import { T } from '~/main/i18n'
|
||||
import { getLogger } from '@core/utils/localLogger'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
|
||||
const STORE_PATH = app.getPath('userData')
|
||||
|
||||
const configFilePath = path.join(STORE_PATH, 'data.json')
|
||||
const configFileBackupPath = path.join(STORE_PATH, 'data.bak.json')
|
||||
export const defaultConfigPath = configFilePath
|
||||
|
||||
let _configFilePath = ''
|
||||
let hasCheckPath = false
|
||||
|
||||
|
@ -1,19 +1,10 @@
|
||||
// External dependencies
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import { dbPathChecker, dbPathDir, getGalleryDBPath } from './dbChecker'
|
||||
|
||||
// Custom types/enums
|
||||
|
||||
// External utility functions
|
||||
import { DBStore, JSONStore } from '@picgo/store'
|
||||
|
||||
// External utility functions
|
||||
import { T } from '~/main/i18n'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { dbPathChecker, dbPathDir, getGalleryDBPath } from '@core/datastore/dbChecker'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const STORE_PATH = dbPathDir()
|
||||
|
||||
|
@ -1,17 +1,10 @@
|
||||
// External dependencies
|
||||
import pkg from 'root/package.json'
|
||||
import debounce from 'lodash/debounce'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import { PicGo } from 'piclist'
|
||||
import db from 'apis/core/datastore'
|
||||
import { dbChecker, dbPathChecker } from 'apis/core/datastore/dbChecker'
|
||||
|
||||
// Custom types/enums
|
||||
import db from '@core/datastore'
|
||||
import { dbChecker, dbPathChecker } from '@core/datastore/dbChecker'
|
||||
|
||||
// External utility functions
|
||||
import pkg from 'root/package.json'
|
||||
|
||||
const CONFIG_PATH = dbPathChecker()
|
||||
|
||||
|
@ -1,31 +1,27 @@
|
||||
// External dependencies
|
||||
import {
|
||||
BrowserWindow,
|
||||
dialog,
|
||||
ipcMain,
|
||||
Notification
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import { cloneDeep } from 'lodash'
|
||||
|
||||
// Electron modules
|
||||
import {
|
||||
dialog,
|
||||
BrowserWindow,
|
||||
Notification,
|
||||
ipcMain
|
||||
} from 'electron'
|
||||
|
||||
// Custom utilities and modules
|
||||
import db, { GalleryDB } from 'apis/core/datastore'
|
||||
import { dbPathChecker, defaultConfigPath, getGalleryDBPath } from 'apis/core/datastore/dbChecker'
|
||||
import uploader from 'apis/app/uploader'
|
||||
import pasteTemplate from '~/main/utils/pasteTemplate'
|
||||
import { handleCopyUrl } from '~/main/utils/common'
|
||||
import { getWindowId, getSettingWindowId } from '@core/bus/apis'
|
||||
import { SHOW_INPUT_BOX } from '~/universal/events/constants'
|
||||
|
||||
// Custom types/enums
|
||||
|
||||
// External utility functions
|
||||
import { DBStore } from '@picgo/store'
|
||||
import { T } from '~/main/i18n'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { IPasteStyle } from '~/universal/types/enum'
|
||||
|
||||
import { getWindowId, getSettingWindowId } from '@core/bus/apis'
|
||||
|
||||
import db, { GalleryDB } from '@core/datastore'
|
||||
import { dbPathChecker, defaultConfigPath, getGalleryDBPath } from '@core/datastore/dbChecker'
|
||||
|
||||
import uploader from 'apis/app/uploader'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
import { handleCopyUrl } from '~/utils/common'
|
||||
import pasteTemplate from '~/utils/pasteTemplate'
|
||||
|
||||
import { SHOW_INPUT_BOX } from '#/events/constants'
|
||||
import { IPasteStyle } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
// Cross-process support may be required in the future
|
||||
class GuiApi implements IGuiApi {
|
||||
|
@ -1,34 +1,27 @@
|
||||
// External dependencies
|
||||
import bus from '@core/bus'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import {
|
||||
uploadClipboardFiles,
|
||||
uploadChoosedFiles
|
||||
} from 'apis/app/uploader/apis'
|
||||
import {
|
||||
createMenu
|
||||
} from 'apis/app/system'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// Custom types/enums
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import {
|
||||
UPLOAD_WITH_FILES,
|
||||
UPLOAD_WITH_FILES_RESPONSE,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE,
|
||||
CREATE_APP_MENU,
|
||||
GET_WINDOW_ID,
|
||||
GET_WINDOW_ID_REPONSE,
|
||||
GET_SETTING_WINDOW_ID,
|
||||
GET_SETTING_WINDOW_ID_RESPONSE,
|
||||
CREATE_APP_MENU
|
||||
UPLOAD_WITH_FILES,
|
||||
UPLOAD_WITH_FILES_RESPONSE,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES,
|
||||
UPLOAD_WITH_CLIPBOARD_FILES_RESPONSE
|
||||
} from '@core/bus/constants'
|
||||
|
||||
import {
|
||||
createMenu
|
||||
} from 'apis/app/system'
|
||||
import {
|
||||
uploadChoosedFiles,
|
||||
uploadClipboardFiles
|
||||
} from 'apis/app/uploader/apis'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
function initEventCenter () {
|
||||
const eventList: any = {
|
||||
'picgo:upload': uploadClipboardFiles,
|
||||
|
@ -1,4 +1,3 @@
|
||||
// Electron 相关
|
||||
import {
|
||||
app,
|
||||
ipcMain,
|
||||
@ -9,38 +8,34 @@ import {
|
||||
screen,
|
||||
IpcMainInvokeEvent
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import { ISftpPlistConfig } from 'piclist'
|
||||
|
||||
// 窗口管理器
|
||||
import bus from '@core/bus'
|
||||
import logger from '@core/picgo/logger'
|
||||
import db, { GalleryDB } from '@core/datastore'
|
||||
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
import uploader from 'apis/app/uploader'
|
||||
import {
|
||||
uploadClipboardFiles,
|
||||
uploadChoosedFiles
|
||||
} from 'apis/app/uploader/apis'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { ILogType, IPasteStyle, IWindowList } from '#/types/enum'
|
||||
import { T } from '~/i18n'
|
||||
import server from '~/server'
|
||||
import picgoCoreIPC from '~/events/picgoCoreIPC'
|
||||
import { buildMainPageMenu, buildMiniPageMenu, buildPluginPageMenu, buildPicBedListMenu } from '~/events/remotes/menu'
|
||||
import { handleCopyUrl, generateShortUrl, setTrayToolTip } from '~/utils/common'
|
||||
import { removeFileFromS3InMain, removeFileFromDogeInMain, removeFileFromHuaweiInMain } from '~/utils/deleteFunc'
|
||||
import getPicBeds from '~/utils/getPicBeds'
|
||||
import pasteTemplate from '~/utils/pasteTemplate'
|
||||
import SSHClient from '~/utils/sshClient'
|
||||
import { uploadFile, downloadFile } from '~/utils/syncSettings'
|
||||
import webServer from '~/server/webServer'
|
||||
|
||||
// 上传器
|
||||
import uploader from 'apis/app/uploader'
|
||||
|
||||
// 粘贴模板函数
|
||||
import pasteTemplate from '~/main/utils/pasteTemplate'
|
||||
|
||||
// 数据存储库和类型声明
|
||||
import db, { GalleryDB } from '~/main/apis/core/datastore'
|
||||
|
||||
// 服务器模块
|
||||
import server from '~/main/server'
|
||||
|
||||
// 获取图片床模块
|
||||
import getPicBeds from '~/main/utils/getPicBeds'
|
||||
|
||||
// 快捷键处理器
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
|
||||
// 全局事件总线
|
||||
import bus from '@core/bus'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 事件常量
|
||||
import {
|
||||
TOGGLE_SHORTKEY_MODIFIED_MODE,
|
||||
OPEN_DEVTOOLS,
|
||||
@ -57,41 +52,8 @@ import {
|
||||
GET_PICBEDS,
|
||||
HIDE_DOCK
|
||||
} from '#/events/constants'
|
||||
|
||||
// 上传剪贴板文件和已选文件的函数
|
||||
import {
|
||||
uploadClipboardFiles,
|
||||
uploadChoosedFiles
|
||||
} from '~/main/apis/app/uploader/apis'
|
||||
|
||||
// 核心 IPC 模块
|
||||
import picgoCoreIPC from './picgoCoreIPC'
|
||||
|
||||
// 处理复制的 URL 和生成短链接的函数
|
||||
import { handleCopyUrl, generateShortUrl, setTrayToolTip } from '~/main/utils/common'
|
||||
|
||||
// 构建主页面、迷你页面、插件页面、图片床列表的菜单函数
|
||||
import { buildMainPageMenu, buildMiniPageMenu, buildPluginPageMenu, buildPicBedListMenu } from './remotes/menu'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// i18n 模块
|
||||
import { T } from '~/main/i18n'
|
||||
|
||||
// 同步设置的上传和下载文件函数
|
||||
import { uploadFile, downloadFile } from '../utils/syncSettings'
|
||||
|
||||
// SSH 客户端模块
|
||||
import SSHClient from '../utils/sshClient'
|
||||
|
||||
// Sftp 配置类型声明
|
||||
import { ISftpPlistConfig } from 'piclist'
|
||||
|
||||
import { removeFileFromS3InMain, removeFileFromDogeInMain, removeFileFromHuaweiInMain } from '~/main/utils/deleteFunc'
|
||||
import webServer from '../server/webServer'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import logger from '../apis/core/picgo/logger'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { ILogType, IPasteStyle, IWindowList } from '#/types/enum'
|
||||
|
||||
const STORE_PATH = app.getPath('userData')
|
||||
const commonConfigList = ['data.json', 'data.bak.json']
|
||||
|
@ -1,5 +1,3 @@
|
||||
// External dependencies
|
||||
import path from 'path'
|
||||
import {
|
||||
dialog,
|
||||
shell,
|
||||
@ -8,28 +6,23 @@ import {
|
||||
clipboard
|
||||
} from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import GuiApi from 'apis/gui'
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
import picgo from '@core/picgo'
|
||||
import { handleStreamlinePluginName, simpleClone } from '~/universal/utils/common'
|
||||
import path from 'path'
|
||||
import { IGuiMenuItem, PicGo as PicGoCore } from 'piclist'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { showNotification } from '~/main/utils/common'
|
||||
import { dbPathChecker } from 'apis/core/datastore/dbChecker'
|
||||
import { GalleryDB } from 'apis/core/datastore'
|
||||
import pasteTemplate from '../utils/pasteTemplate'
|
||||
import { i18nManager, T } from '~/main/i18n'
|
||||
import { rpcServer } from './rpc'
|
||||
|
||||
// Custom types/enums
|
||||
import { IPasteStyle, IPicGoHelperType, IWindowList } from '#/types/enum'
|
||||
import { IObject, IFilter } from '@picgo/store/dist/types'
|
||||
|
||||
// External utility functions
|
||||
import picgo from '@core/picgo'
|
||||
import { GalleryDB } from '@core/datastore'
|
||||
import { dbPathChecker } from '@core/datastore/dbChecker'
|
||||
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import GuiApi from 'apis/gui'
|
||||
|
||||
import { showNotification } from '~/utils/common'
|
||||
import pasteTemplate from '~/utils/pasteTemplate'
|
||||
import { i18nManager, T } from '~/i18n'
|
||||
import { rpcServer } from '~/events/rpc'
|
||||
|
||||
import {
|
||||
PICGO_SAVE_CONFIG,
|
||||
PICGO_GET_CONFIG,
|
||||
@ -47,7 +40,9 @@ import {
|
||||
SET_CURRENT_LANGUAGE,
|
||||
GET_CURRENT_LANGUAGE
|
||||
} from '#/events/constants'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { IPasteStyle, IPicGoHelperType, IWindowList } from '#/types/enum'
|
||||
import { handleStreamlinePluginName, simpleClone } from '#/utils/common'
|
||||
|
||||
// eslint-disable-next-line
|
||||
const requireFunc = typeof __webpack_require__ === 'function' ? __non_webpack_require__ : require
|
||||
|
@ -1,37 +1,39 @@
|
||||
// External dependencies
|
||||
import pkg from 'root/package.json'
|
||||
import {
|
||||
app,
|
||||
dialog,
|
||||
BrowserWindow,
|
||||
Menu,
|
||||
shell
|
||||
} from 'electron'
|
||||
import { PicGo as PicGoCore } from 'piclist'
|
||||
|
||||
// Electron modules
|
||||
import { Menu, BrowserWindow, app, dialog, shell } from 'electron'
|
||||
|
||||
// Custom utilities and modules
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import getPicBeds from '~/main/utils/getPicBeds'
|
||||
import db from '@core/datastore'
|
||||
import picgo from '@core/picgo'
|
||||
import GuiApi from 'apis/gui'
|
||||
import picgoCoreIPC from '~/main/events/picgoCoreIPC'
|
||||
import { changeCurrentUploader } from '~/main/utils/handleUploaderConfig'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import clipboardPoll from '~/main/utils/clipboardPoll'
|
||||
|
||||
// Custom types/enums
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import {
|
||||
uploadClipboardFiles
|
||||
} from '~/main/apis/app/uploader/apis'
|
||||
} from 'apis/app/uploader/apis'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import GuiApi from 'apis/gui'
|
||||
|
||||
import picgoCoreIPC from '~/events/picgoCoreIPC'
|
||||
import { T } from '~/i18n'
|
||||
import clipboardPoll from '~/utils/clipboardPoll'
|
||||
import { setTrayToolTip } from '~/utils/common'
|
||||
import getPicBeds from '~/utils/getPicBeds'
|
||||
import { changeCurrentUploader } from '~/utils/handleUploaderConfig'
|
||||
|
||||
import {
|
||||
PICGO_CONFIG_PLUGIN,
|
||||
PICGO_HANDLE_PLUGIN_DONE,
|
||||
PICGO_HANDLE_PLUGIN_ING,
|
||||
PICGO_TOGGLE_PLUGIN,
|
||||
SHOW_MAIN_PAGE_QRCODE
|
||||
} from '~/universal/events/constants'
|
||||
import { PicGo as PicGoCore } from 'piclist'
|
||||
import { T } from '~/main/i18n'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { setTrayToolTip } from '~/main/utils/common'
|
||||
} from '#/events/constants'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
import pkg from 'root/package.json'
|
||||
|
||||
interface GuiMenuItem {
|
||||
label: string
|
||||
|
@ -1,17 +1,10 @@
|
||||
// External dependencies
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// Electron modules
|
||||
import { configRouter } from '~/events/rpc/routes/config'
|
||||
import { toolboxRouter } from '~/events/rpc/routes/toolbox'
|
||||
import { systemRouter } from '~/events/rpc/routes/system'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { configRouter } from './routes/config'
|
||||
import { toolboxRouter } from './routes/toolbox'
|
||||
import { systemRouter } from './routes/system'
|
||||
|
||||
// Custom types/enums
|
||||
import { IRPCActionType } from '~/universal/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import { IRPCActionType } from '#/types/enum'
|
||||
import { RPC_ACTIONS } from '#/events/constants'
|
||||
|
||||
class RPCServer implements IRPCServer {
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { IRPCActionType } from '~/universal/types/enum'
|
||||
import { IRPCActionType } from '#/types/enum'
|
||||
|
||||
export class RPCRouter implements IRPCRouter {
|
||||
private routeMap: IRPCRoutes = new Map()
|
||||
|
@ -1,12 +1,12 @@
|
||||
import { IRPCActionType } from '~/universal/types/enum'
|
||||
import { RPCRouter } from '../router'
|
||||
import { RPCRouter } from '~/events/rpc/router'
|
||||
import {
|
||||
deleteUploaderConfig,
|
||||
getUploaderConfigList,
|
||||
resetUploaderConfig,
|
||||
selectUploaderConfig,
|
||||
updateUploaderConfig,
|
||||
resetUploaderConfig
|
||||
} from '~/main/utils/handleUploaderConfig'
|
||||
updateUploaderConfig
|
||||
} from '~/utils/handleUploaderConfig'
|
||||
import { IRPCActionType } from '#/types/enum'
|
||||
|
||||
const configRouter = new RPCRouter()
|
||||
|
||||
|
@ -1,11 +1,7 @@
|
||||
// External dependencies
|
||||
import { app, clipboard, shell } from 'electron'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import { IRPCActionType } from '~/universal/types/enum'
|
||||
import { RPCRouter } from '../router'
|
||||
import { RPCRouter } from '~/events/rpc/router'
|
||||
import { IRPCActionType } from '#/types/enum'
|
||||
|
||||
const systemRouter = new RPCRouter()
|
||||
|
||||
|
@ -1,19 +1,14 @@
|
||||
// External dependencies
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
import { dbPathChecker, defaultConfigPath } from '@core/datastore/dbChecker'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { dbPathChecker, defaultConfigPath } from '~/main/apis/core/datastore/dbChecker'
|
||||
import { sendToolboxResWithType } from './utils'
|
||||
import { sendToolboxResWithType } from '~/events/rpc/routes/toolbox/utils'
|
||||
import { T } from '~/i18n'
|
||||
|
||||
// Custom types/enums
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '~/universal/types/enum'
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '#/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '~/universal/utils/static'
|
||||
import { T } from '~/main/i18n'
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '#/utils/static'
|
||||
|
||||
const sendToolboxRes = sendToolboxResWithType(IToolboxItemType.HAS_PROBLEM_WITH_CLIPBOARD_PIC_UPLOAD)
|
||||
|
||||
|
@ -1,20 +1,14 @@
|
||||
// External dependencies
|
||||
import { IpcMainEvent } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
import { IpcMainEvent } from 'electron'
|
||||
import { dbPathChecker } from '@core/datastore/dbChecker'
|
||||
import { GalleryDB, DB_PATH } from '@core/datastore'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { dbPathChecker } from '~/main/apis/core/datastore/dbChecker'
|
||||
import { GalleryDB, DB_PATH } from '~/main/apis/core/datastore'
|
||||
import { sendToolboxResWithType } from './utils'
|
||||
import { sendToolboxResWithType } from '~/events/rpc/routes/toolbox/utils'
|
||||
import { T } from '~/i18n'
|
||||
|
||||
// Custom types/enums
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '~/universal/types/enum'
|
||||
|
||||
// External utility functions
|
||||
import { T } from '~/main/i18n'
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '#/types/enum'
|
||||
|
||||
export const checkFileMap: IToolboxCheckerMap<
|
||||
IToolboxItemType.IS_CONFIG_FILE_BROKEN | IToolboxItemType.IS_GALLERY_FILE_BROKEN
|
||||
|
@ -1,22 +1,15 @@
|
||||
// External dependencies
|
||||
import fs from 'fs-extra'
|
||||
|
||||
import axios, { AxiosRequestConfig } from 'axios'
|
||||
import fs from 'fs-extra'
|
||||
import { IConfig } from 'piclist'
|
||||
import tunnel from 'tunnel'
|
||||
|
||||
// Electron modules
|
||||
import { dbPathChecker } from '@core/datastore/dbChecker'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { dbPathChecker } from '~/main/apis/core/datastore/dbChecker'
|
||||
import { sendToolboxResWithType } from './utils'
|
||||
import { sendToolboxResWithType } from '~/events/rpc/routes/toolbox/utils'
|
||||
import { T } from '~/i18n'
|
||||
|
||||
// Custom types/enums
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '~/universal/types/enum'
|
||||
|
||||
// External utility functions
|
||||
|
||||
// Custom types/enums
|
||||
import { IConfig } from 'piclist'
|
||||
import { T } from '~/main/i18n'
|
||||
import { IToolboxItemCheckStatus, IToolboxItemType } from '#/types/enum'
|
||||
|
||||
const getProxy = (proxyStr: string): AxiosRequestConfig['proxy'] | false => {
|
||||
if (proxyStr) {
|
||||
|
@ -1,8 +1,9 @@
|
||||
import { IRPCActionType, IToolboxItemType } from '~/universal/types/enum'
|
||||
import { RPCRouter } from '../../router'
|
||||
import { checkFileMap, fixFileMap } from './checkFile'
|
||||
import { checkClipboardUploadMap, fixClipboardUploadMap } from './checkClipboardUpload'
|
||||
import { checkProxyMap } from './checkProxy'
|
||||
import { checkClipboardUploadMap, fixClipboardUploadMap } from '~/events/rpc/routes/toolbox/checkClipboardUpload'
|
||||
import { checkFileMap, fixFileMap } from '~/events/rpc/routes/toolbox/checkFile'
|
||||
import { checkProxyMap } from '~/events/rpc/routes/toolbox/checkProxy'
|
||||
import { RPCRouter } from '~/events/rpc/router'
|
||||
|
||||
import { IRPCActionType, IToolboxItemType } from '#/types/enum'
|
||||
|
||||
const toolboxRouter = new RPCRouter()
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { IpcMainEvent } from 'electron'
|
||||
import { IRPCActionType, IToolboxItemType } from '~/universal/types/enum'
|
||||
import { IRPCActionType, IToolboxItemType } from '#/types/enum'
|
||||
|
||||
export const sendToolboxResWithType = (type: IToolboxItemType) => (event: IpcMainEvent, res?: Omit<IToolboxCheckRes, 'type'>) => {
|
||||
return event.sender.send(IRPCActionType.TOOLBOX_CHECK_RES, {
|
||||
|
@ -1,13 +1,9 @@
|
||||
// External dependencies
|
||||
import http from 'http'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
|
||||
// Custom utilities and modules
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '../apis/core/picgo/logger'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
export const imgFilePath = path.join(picgo.baseDir, 'imgTemp')
|
||||
fs.ensureDirSync(imgFilePath)
|
||||
|
@ -1,16 +1,9 @@
|
||||
// External dependencies
|
||||
import yaml from 'js-yaml'
|
||||
import { ObjectAdapter, I18n } from '@picgo/i18n'
|
||||
import path from 'path'
|
||||
import fs from 'fs-extra'
|
||||
import yaml from 'js-yaml'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
import { ObjectAdapter, I18n } from '@picgo/i18n'
|
||||
|
||||
// Custom utilities and modules
|
||||
|
||||
// Custom types/enums
|
||||
|
||||
// External utility functions
|
||||
import { builtinI18nList } from '#/i18n'
|
||||
|
||||
class I18nManager {
|
||||
|
@ -1,6 +1,8 @@
|
||||
import path from 'path'
|
||||
import { app } from 'electron'
|
||||
import { getLogger } from 'apis/core/utils/localLogger'
|
||||
|
||||
import { getLogger } from '@core/utils/localLogger'
|
||||
|
||||
const STORE_PATH = app.getPath('userData')
|
||||
const LOG_PATH = path.join(STORE_PATH, 'piclist-gui-local.log')
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
import './errorHandler'
|
||||
import axios from 'axios'
|
||||
import fs from 'fs-extra'
|
||||
import {
|
||||
app,
|
||||
globalShortcut,
|
||||
@ -8,46 +9,50 @@ import {
|
||||
screen,
|
||||
shell
|
||||
} from 'electron'
|
||||
import { UpdateInfo, autoUpdater } from 'electron-updater'
|
||||
import path from 'path'
|
||||
import {
|
||||
createProtocol
|
||||
} from 'vue-cli-plugin-electron-builder/lib'
|
||||
import beforeOpen from '~/main/utils/beforeOpen'
|
||||
import ipcList from '~/main/events/ipcList'
|
||||
import busEventList from '~/main/events/busEventList'
|
||||
import { II18nLanguage, IRemoteNoticeTriggerHook, ISartMode, IWindowList } from '#/types/enum'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import bus from '@core/bus'
|
||||
import db from '@core/datastore'
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { remoteNoticeHandler } from 'apis/app/remoteNotice'
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
import {
|
||||
createTray, setDockMenu
|
||||
} from 'apis/app/system'
|
||||
import {
|
||||
uploadChoosedFiles,
|
||||
uploadClipboardFiles
|
||||
} from 'apis/app/uploader/apis'
|
||||
import {
|
||||
createTray, setDockMenu
|
||||
} from 'apis/app/system'
|
||||
import server from '~/main/server/index'
|
||||
import shortKeyHandler from 'apis/app/shortKey/shortKeyHandler'
|
||||
import { getUploadFiles } from '~/main/utils/handleArgv'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import bus from '@core/bus'
|
||||
import logger from 'apis/core/picgo/logger'
|
||||
import picgo from 'apis/core/picgo'
|
||||
import fixPath from './fixPath'
|
||||
import { clearTempFolder } from '../manage/utils/common'
|
||||
import { initI18n } from '~/main/utils/handleI18n'
|
||||
import { remoteNoticeHandler } from 'apis/app/remoteNotice'
|
||||
import { manageIpcList } from '../manage/events/ipcList'
|
||||
import getManageApi from '../manage/Main'
|
||||
import UpDownTaskQueue from '../manage/datastore/upDownTaskQueue'
|
||||
import { T } from '~/main/i18n'
|
||||
import { UpdateInfo, autoUpdater } from 'electron-updater'
|
||||
import updateChecker from '../utils/updateChecker'
|
||||
import clipboardPoll from '../utils/clipboardPoll'
|
||||
import path from 'path'
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '~/universal/utils/static'
|
||||
import fs from 'fs-extra'
|
||||
import { startFileServer } from '../fileServer'
|
||||
import webServer from '../server/webServer'
|
||||
import axios from 'axios'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import busEventList from '~/events/busEventList'
|
||||
import ipcList from '~/events/ipcList'
|
||||
import { startFileServer } from '~/fileServer'
|
||||
import { T } from '~/i18n'
|
||||
import '~/lifeCycle/errorHandler'
|
||||
import fixPath from '~/lifeCycle/fixPath'
|
||||
import UpDownTaskQueue from '~/manage/datastore/upDownTaskQueue'
|
||||
import { manageIpcList } from '~/manage/events/ipcList'
|
||||
import getManageApi from '~/manage/Main'
|
||||
import { clearTempFolder } from '~/manage/utils/common'
|
||||
import server from '~/server/index'
|
||||
import webServer from '~/server/webServer'
|
||||
import beforeOpen from '~/utils/beforeOpen'
|
||||
import clipboardPoll from '~/utils/clipboardPoll'
|
||||
import { getUploadFiles } from '~/utils/handleArgv'
|
||||
import { initI18n } from '~/utils/handleI18n'
|
||||
import updateChecker from '~/utils/updateChecker'
|
||||
|
||||
import { II18nLanguage, IRemoteNoticeTriggerHook, ISartMode, IWindowList } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { CLIPBOARD_IMAGE_FOLDER } from '#/utils/static'
|
||||
|
||||
const isDevelopment = process.env.NODE_ENV !== 'production'
|
||||
|
||||
const handleStartUpFiles = (argv: string[], cwd: string) => {
|
||||
|
@ -1,6 +1,5 @@
|
||||
/* eslint-disable */
|
||||
import { manageDbChecker } from './datastore/dbChecker'
|
||||
import { ManageApi } from './manageApi'
|
||||
import { manageDbChecker } from '~/manage/datastore/dbChecker'
|
||||
import { ManageApi } from '~/manage/manageApi'
|
||||
|
||||
manageDbChecker()
|
||||
const getManageApi = (picBedName: string = 'placeholder'): ManageApi => {
|
||||
|
@ -1,39 +1,20 @@
|
||||
// Axios
|
||||
import axios from 'axios'
|
||||
|
||||
// 加密函数、获取文件 MIME 类型、错误格式化函数、新的下载器、并发异步任务池
|
||||
import { hmacSha1Base64, getFileMimeType, formatError, NewDownloader, ConcurrencyPromisePool } from '../utils/common'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 快速 XML 解析器
|
||||
import { XMLParser } from 'fast-xml-parser'
|
||||
|
||||
// 阿里云 OSS 客户端库
|
||||
import OSS from 'ali-oss'
|
||||
|
||||
// 路径处理库
|
||||
import axios from 'axios'
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import { XMLParser } from 'fast-xml-parser'
|
||||
import path from 'path'
|
||||
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '~/renderer/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
import { hmacSha1Base64, getFileMimeType, formatError, NewDownloader, ConcurrencyPromisePool } from '~/manage/utils/common'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// 坑爹阿里云 返回数据类型标注和实际各种不一致
|
||||
class AliyunApi {
|
||||
ctx: OSS
|
||||
|
@ -1,14 +1,14 @@
|
||||
import AliyunApi from './aliyun'
|
||||
import GithubApi from './github'
|
||||
import ImgurApi from './imgur'
|
||||
import LocalApi from './local'
|
||||
import QiniuApi from './qiniu'
|
||||
import S3plistApi from './s3plist'
|
||||
import SftpApi from './sftp'
|
||||
import SmmsApi from './smms'
|
||||
import TcyunApi from './tcyun'
|
||||
import UpyunApi from './upyun'
|
||||
import WebdavplistApi from './webdavplist'
|
||||
import AliyunApi from '~/manage/apis/aliyun'
|
||||
import GithubApi from '~/manage/apis/github'
|
||||
import ImgurApi from '~/manage/apis/imgur'
|
||||
import LocalApi from '~/manage/apis/local'
|
||||
import QiniuApi from '~/manage/apis/qiniu'
|
||||
import S3plistApi from '~/manage/apis/s3plist'
|
||||
import SftpApi from '~/manage/apis/sftp'
|
||||
import SmmsApi from '~/manage/apis/smms'
|
||||
import TcyunApi from '~/manage/apis/tcyun'
|
||||
import UpyunApi from '~/manage/apis/upyun'
|
||||
import WebdavplistApi from '~/manage/apis/webdavplist'
|
||||
|
||||
export default {
|
||||
AliyunApi,
|
||||
|
@ -1,36 +1,19 @@
|
||||
// HTTP 请求库
|
||||
import got from 'got'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// HTTP 代理格式化函数、是否为图片的判断函数
|
||||
import { formatHttpProxy, isImage } from '~/renderer/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// got 上传函数、路径处理函数、新的下载器、获取请求代理、获取请求选项、并发异步任务池、错误格式化函数
|
||||
import { gotUpload, trimPath, NewDownloader, getAgent, getOptions, ConcurrencyPromisePool, formatError } from '../utils/common'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import got from 'got'
|
||||
import path from 'path'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { gotUpload, trimPath, NewDownloader, getAgent, getOptions, ConcurrencyPromisePool, formatError } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
|
||||
import { formatHttpProxy, isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class GithubApi {
|
||||
token: string
|
||||
username: string
|
||||
|
@ -1,14 +1,12 @@
|
||||
// External dependencies
|
||||
import fs from 'fs-extra'
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import FormData from 'form-data'
|
||||
import fs from 'fs-extra'
|
||||
import got from 'got'
|
||||
import path from 'path'
|
||||
|
||||
// Electron modules
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// Custom utilities and modules
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import {
|
||||
ConcurrencyPromisePool,
|
||||
formatError,
|
||||
@ -17,11 +15,12 @@ import {
|
||||
getAgent,
|
||||
gotUpload,
|
||||
NewDownloader
|
||||
} from '../utils/common'
|
||||
import ManageLogger from '../utils/logger'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { formatHttpProxy, isImage } from '~/renderer/manage/utils/common'
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
} from '~/manage/utils/common'
|
||||
import ManageLogger from '~/manage/utils/logger'
|
||||
|
||||
import { formatHttpProxy, isImage } from '@/manage/utils/common'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class ImgurApi {
|
||||
userName: string
|
||||
|
@ -1,34 +1,18 @@
|
||||
// 日志记录器
|
||||
import ManageLogger from '../utils/logger'
|
||||
|
||||
// 错误格式化函数、端点地址格式化函数、获取内部代理、新的下载器、并发异步任务池
|
||||
import { formatError } from '../utils/common'
|
||||
|
||||
// HTTP 代理格式化函数、是否为图片的判断函数
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus, downloadTaskSpecialStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
import * as fsWalk from '@nodelib/fs.walk'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus, downloadTaskSpecialStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { formatError } from '~/manage/utils/common'
|
||||
import ManageLogger from '~/manage/utils/logger'
|
||||
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class LocalApi {
|
||||
logger: ManageLogger
|
||||
isWindows: boolean
|
||||
|
@ -1,36 +1,20 @@
|
||||
// Axios
|
||||
|
||||
import axios from 'axios'
|
||||
|
||||
// 加密函数、获取文件 MIME 类型、新的下载器、错误格式化函数、并发异步任务池
|
||||
import { hmacSha1Base64, getFileMimeType, NewDownloader, formatError, ConcurrencyPromisePool } from '../utils/common'
|
||||
|
||||
// 七牛云客户端库
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import path from 'path'
|
||||
import qiniu from 'qiniu/index'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '~/renderer/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { hmacSha1Base64, getFileMimeType, NewDownloader, formatError, ConcurrencyPromisePool } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class QiniuApi {
|
||||
mac: qiniu.auth.digest.Mac
|
||||
accessKey: string
|
||||
|
@ -1,4 +1,3 @@
|
||||
// AWS S3 相关
|
||||
import {
|
||||
S3Client,
|
||||
ListBucketsCommand,
|
||||
@ -17,50 +16,26 @@ import {
|
||||
PutPublicAccessBlockCommand,
|
||||
PutBucketAclCommand
|
||||
} from '@aws-sdk/client-s3'
|
||||
|
||||
// AWS S3 上传和进度
|
||||
import { Upload, Progress } from '@aws-sdk/lib-storage'
|
||||
|
||||
// AWS S3 请求签名
|
||||
import { getSignedUrl } from '@aws-sdk/s3-request-presigner'
|
||||
|
||||
// HTTP 和 HTTPS 模块
|
||||
import https from 'https'
|
||||
import http, { AgentOptions } from 'http'
|
||||
import { NodeHttpHandler } from '@smithy/node-http-handler'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// 端点地址格式化函数、错误格式化函数、获取请求代理、获取文件 MIME 类型、新的下载器、并发异步任务池
|
||||
import { formatEndpoint, formatError, getAgent, getFileMimeType, NewDownloader, ConcurrencyPromisePool } from '../utils/common'
|
||||
|
||||
// 是否为图片的判断函数、HTTP 代理格式化函数
|
||||
import { isImage, formatHttpProxy } from '@/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import http, { AgentOptions } from 'http'
|
||||
import https from 'https'
|
||||
import path from 'path'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { formatEndpoint, formatError, getAgent, getFileMimeType, NewDownloader, ConcurrencyPromisePool } from '~/manage/utils/common'
|
||||
import { dogecloudApi, DogecloudToken, getTempToken } from '~/manage/utils/dogeAPI'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
|
||||
import { isImage, formatHttpProxy } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
// dogecloudApi
|
||||
import { dogecloudApi, DogecloudToken, getTempToken } from '../utils/dogeAPI'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class S3plistApi {
|
||||
baseOptions: S3ClientConfig
|
||||
|
@ -1,33 +1,19 @@
|
||||
// 日志记录器
|
||||
import ManageLogger from '../utils/logger'
|
||||
|
||||
// SSH 客户端
|
||||
import SSHClient from '~/main/utils/sshClient'
|
||||
|
||||
// 错误格式化函数、新的下载器、并发异步任务池
|
||||
import { formatError } from '../utils/common'
|
||||
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { commonTaskStatus, downloadTaskSpecialStatus, uploadTaskSpecialStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import SSHClient from '~/utils/sshClient'
|
||||
|
||||
import UpDownTaskQueue, { commonTaskStatus, downloadTaskSpecialStatus, uploadTaskSpecialStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { formatError } from '~/manage/utils/common'
|
||||
import ManageLogger from '~/manage/utils/logger'
|
||||
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
import { Undefinable } from '~/universal/types/manage'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { Undefinable } from '#/types/manage'
|
||||
|
||||
interface listDirResult {
|
||||
permissions: string
|
||||
|
@ -1,35 +1,17 @@
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
|
||||
// Axios 和 Axios 实例类型声明
|
||||
import axios, { AxiosInstance } from 'axios'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 表单数据库
|
||||
import FormData from 'form-data'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 获取文件 MIME 类型、got 上传函数、新的下载器、并发异步任务池、错误格式化函数
|
||||
import { getFileMimeType, gotUpload, NewDownloader, ConcurrencyPromisePool, formatError } from '../utils/common'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
import { getFileMimeType, gotUpload, NewDownloader, ConcurrencyPromisePool, formatError } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class SmmsApi {
|
||||
baseUrl = 'https://smms.app/api/v2'
|
||||
|
@ -1,39 +1,21 @@
|
||||
// 腾讯云 COS SDK
|
||||
|
||||
import COS from 'cos-nodejs-sdk-v5'
|
||||
|
||||
// 文件系统库
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '~/renderer/manage/utils/common'
|
||||
|
||||
// URL 编码处理函数
|
||||
import { handleUrlEncode } from '~/universal/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { formatError, getFileMimeType } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus, downloadTaskSpecialStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 错误格式化函数、获取文件 MIME 类型
|
||||
import { formatError, getFileMimeType } from '../utils/common'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus, downloadTaskSpecialStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { handleUrlEncode } from '#/utils/common'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class TcyunApi {
|
||||
ctx: COS
|
||||
logger: ManageLogger
|
||||
|
@ -1,41 +1,21 @@
|
||||
import axios from 'axios'
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import FormData from 'form-data'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import Upyun from 'upyun'
|
||||
|
||||
// 加密函数、获取文件 MIME 类型、新的下载器、got 上传函数、并发异步任务池、错误格式化函数
|
||||
import { md5, hmacSha1Base64, getFileMimeType, NewDownloader, gotUpload, ConcurrencyPromisePool, formatError } from '../utils/common'
|
||||
|
||||
// 是否为图片的判断函数
|
||||
import { isImage } from '~/renderer/manage/utils/common'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { md5, hmacSha1Base64, getFileMimeType, NewDownloader, gotUpload, ConcurrencyPromisePool, formatError } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// Axios
|
||||
import axios from 'axios'
|
||||
|
||||
// 表单数据库
|
||||
import FormData from 'form-data'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 日志记录器
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import { isImage } from '@/manage/utils/common'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class UpyunApi {
|
||||
ser: Upyun.Service
|
||||
cli: Upyun.Client
|
||||
|
@ -1,40 +1,21 @@
|
||||
// 日志记录器
|
||||
import ManageLogger from '../utils/logger'
|
||||
|
||||
// WebDAV 客户端库
|
||||
import { createClient, WebDAVClient, FileStat, ProgressEvent, AuthType, WebDAVClientOptions } from 'webdav'
|
||||
|
||||
// 错误格式化函数、端点地址格式化函数、获取内部代理、新的下载器、并发异步任务池
|
||||
import { formatError, formatEndpoint, getInnerAgent, NewDownloader, ConcurrencyPromisePool } from '../utils/common'
|
||||
|
||||
// HTTP 代理格式化函数、是否为图片的判断函数
|
||||
import { formatHttpProxy, isImage } from '@/manage/utils/common'
|
||||
|
||||
// HTTP 和 HTTPS 模块
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import http from 'http'
|
||||
import https from 'https'
|
||||
import path from 'path'
|
||||
import { createClient, WebDAVClient, FileStat, ProgressEvent, AuthType, WebDAVClientOptions } from 'webdav'
|
||||
|
||||
// 窗口管理器
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
// 枚举类型声明
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '~/manage/datastore/upDownTaskQueue'
|
||||
import { formatError, formatEndpoint, getInnerAgent, NewDownloader, ConcurrencyPromisePool } from '~/manage/utils/common'
|
||||
import ManageLogger from '~/manage/utils/logger'
|
||||
|
||||
// Electron 相关
|
||||
import { ipcMain, IpcMainEvent } from 'electron'
|
||||
|
||||
// 上传下载任务队列
|
||||
import UpDownTaskQueue, { uploadTaskSpecialStatus, commonTaskStatus } from '../datastore/upDownTaskQueue'
|
||||
|
||||
// 文件系统库
|
||||
import fs from 'fs-extra'
|
||||
|
||||
// 路径处理库
|
||||
import path from 'path'
|
||||
|
||||
// 取消下载任务的加载文件列表、刷新下载文件传输列表
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
import { formatHttpProxy, isImage } from '@/manage/utils/common'
|
||||
import { getAuthHeader } from '@/manage/utils/digestAuth'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
|
||||
class WebdavplistApi {
|
||||
endpoint: string
|
||||
|
@ -1,7 +1,7 @@
|
||||
/* eslint-disable */
|
||||
import { JSONStore } from '@picgo/store'
|
||||
import { IJSON } from '@picgo/store/dist/types'
|
||||
import { ManageApiType, ManageConfigType } from '~/universal/types/manage'
|
||||
|
||||
import { ManageApiType, ManageConfigType } from '#/types/manage'
|
||||
|
||||
class ManageDB {
|
||||
readonly #ctx: ManageApiType
|
||||
@ -9,11 +9,11 @@ class ManageDB {
|
||||
constructor (ctx: ManageApiType) {
|
||||
this.#ctx = ctx
|
||||
this.#db = new JSONStore(this.#ctx.configPath)
|
||||
let initParams: IStringKeyMap = {
|
||||
const initParams: IStringKeyMap = {
|
||||
picBed: {},
|
||||
settings: {}
|
||||
}
|
||||
for (let key in initParams) {
|
||||
for (const key in initParams) {
|
||||
if (!this.#db.has(key)) {
|
||||
try {
|
||||
this.#db.set(key, initParams[key])
|
||||
|
@ -1,10 +1,12 @@
|
||||
import fs from 'fs-extra'
|
||||
import writeFile from 'write-file-atomic'
|
||||
import path from 'path'
|
||||
import { app } from 'electron'
|
||||
import { getLogger } from '@core/utils/localLogger'
|
||||
import dayjs from 'dayjs'
|
||||
import { T } from '~/main/i18n'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import writeFile from 'write-file-atomic'
|
||||
|
||||
import { getLogger } from '@core/utils/localLogger'
|
||||
|
||||
import { T } from '~/i18n'
|
||||
|
||||
const STORE_PATH = app.getPath('userData')
|
||||
const manageConfigFilePath = path.join(STORE_PATH, 'manage.json')
|
||||
|
@ -1,9 +1,10 @@
|
||||
// a singleton class to manage the up/down task queue
|
||||
// qiniu tcyun aliyun smms imgur github upyun
|
||||
|
||||
import path from 'path'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
|
||||
export enum commonTaskStatus {
|
||||
queuing = 'queuing',
|
||||
failed = 'failed',
|
||||
|
@ -1,3 +1,3 @@
|
||||
export const PICLIST_MANAGE_GET_CONFIG = 'PICLIST_MANAGE_GET_CONFIG'
|
||||
export const PICLIST_MANAGE_SAVE_CONFIG = 'PICLIST_MANAGE_SAVE_CONFIG'
|
||||
export const PICLIST_MANAGE_REMOVE_CONFIG = 'PICLIST_MANAGE_REMOVE_CONFIG'
|
||||
export const PICLIST_MANAGE_SAVE_CONFIG = 'PICLIST_MANAGE_SAVE_CONFIG'
|
||||
|
@ -1,10 +1,12 @@
|
||||
import manageCoreIPC from './manageCoreIPC'
|
||||
import { ManageApi } from '../manageApi'
|
||||
import { ipcMain, IpcMainInvokeEvent, dialog, app, shell } from 'electron'
|
||||
import UpDownTaskQueue from '../datastore/upDownTaskQueue'
|
||||
import { downloadFileFromUrl } from '../utils/common'
|
||||
import path from 'path'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
|
||||
import UpDownTaskQueue from '~/manage/datastore/upDownTaskQueue'
|
||||
import manageCoreIPC from '~/manage/events/manageCoreIPC'
|
||||
import { ManageApi } from '~/manage/manageApi'
|
||||
import { downloadFileFromUrl } from '~/manage/utils/common'
|
||||
|
||||
import { selectDownloadFolder } from '@/manage/utils/static'
|
||||
|
||||
export const manageIpcList = {
|
||||
|
@ -2,8 +2,9 @@ import {
|
||||
IpcMainEvent,
|
||||
ipcMain
|
||||
} from 'electron'
|
||||
import getManageApi from '../Main'
|
||||
import { PICLIST_MANAGE_GET_CONFIG, PICLIST_MANAGE_SAVE_CONFIG, PICLIST_MANAGE_REMOVE_CONFIG } from './constants'
|
||||
|
||||
import getManageApi from '~/manage/Main'
|
||||
import { PICLIST_MANAGE_GET_CONFIG, PICLIST_MANAGE_SAVE_CONFIG, PICLIST_MANAGE_REMOVE_CONFIG } from '~/manage/events/constants'
|
||||
|
||||
const manageApi = getManageApi()
|
||||
|
||||
|
@ -1,24 +1,28 @@
|
||||
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import { ipcMain } from 'electron'
|
||||
import { EventEmitter } from 'events'
|
||||
import { managePathChecker } from './datastore/dbChecker'
|
||||
import fs from 'fs-extra'
|
||||
import { get, set, unset } from 'lodash'
|
||||
import { homedir } from 'os'
|
||||
import path from 'path'
|
||||
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import API from '~/manage/apis/api'
|
||||
import ManageDB from '~/manage/datastore/db'
|
||||
import { managePathChecker } from '~/manage/datastore/dbChecker'
|
||||
import { isInputConfigValid, formatError } from '~/manage/utils/common'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import {
|
||||
ManageApiType,
|
||||
ManageConfigType,
|
||||
ManageError,
|
||||
PicBedMangeConfig
|
||||
} from '~/universal/types/manage'
|
||||
import ManageDB from './datastore/db'
|
||||
import { ManageLogger } from './utils/logger'
|
||||
import { get, set, unset } from 'lodash'
|
||||
import { homedir } from 'os'
|
||||
import { isInputConfigValid, formatError } from './utils/common'
|
||||
import API from './apis/api'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { IWindowList } from '#/types/enum'
|
||||
import { ipcMain } from 'electron'
|
||||
import { cancelDownloadLoadingFileList, refreshDownloadFileTransferList } from '@/manage/utils/static'
|
||||
} from '#/types/manage'
|
||||
|
||||
export class ManageApi extends EventEmitter implements ManageApiType {
|
||||
private _config!: Partial<ManageConfigType>
|
||||
|
@ -1,24 +1,26 @@
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import mime from 'mime-types'
|
||||
import axios from 'axios'
|
||||
import { app } from 'electron'
|
||||
import crypto from 'crypto'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import got, { OptionsOfTextResponseBody, RequestError } from 'got'
|
||||
import { HttpsProxyAgent, HttpProxyAgent } from 'hpagent'
|
||||
import http from 'http'
|
||||
import https from 'https'
|
||||
import mime from 'mime-types'
|
||||
import Downloader from 'nodejs-file-downloader'
|
||||
import path from 'path'
|
||||
import { Stream } from 'stream'
|
||||
import { promisify } from 'util'
|
||||
|
||||
import UpDownTaskQueue,
|
||||
{
|
||||
uploadTaskSpecialStatus,
|
||||
commonTaskStatus,
|
||||
downloadTaskSpecialStatus
|
||||
} from '../datastore/upDownTaskQueue'
|
||||
import { ManageLogger } from '../utils/logger'
|
||||
} from '~/manage/datastore/upDownTaskQueue'
|
||||
import { ManageLogger } from '~/manage/utils/logger'
|
||||
|
||||
import { formatHttpProxy, IHTTPProxy } from '@/manage/utils/common'
|
||||
import { HttpsProxyAgent, HttpProxyAgent } from 'hpagent'
|
||||
import http from 'http'
|
||||
import https from 'https'
|
||||
import Downloader from 'nodejs-file-downloader'
|
||||
|
||||
export const getFSFile = async (
|
||||
filePath: string,
|
||||
|
@ -1,6 +1,7 @@
|
||||
import axios from 'axios'
|
||||
import crypto from 'crypto'
|
||||
import querystring from 'querystring'
|
||||
|
||||
import picgo from '@core/picgo'
|
||||
|
||||
export interface DogecloudToken {
|
||||
|
@ -2,12 +2,13 @@ import chalk from 'chalk'
|
||||
import dayjs from 'dayjs'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import util from 'util'
|
||||
import { ILogType } from '#/types/enum'
|
||||
import { ILogColor, ILogger } from 'piclist/dist/types'
|
||||
import { ManageApiType, Undefinable } from '~/universal/types/manage'
|
||||
import util from 'util'
|
||||
|
||||
import { ILogType } from '#/types/enum'
|
||||
import { ManageApiType, Undefinable } from '#/types/manage'
|
||||
import { enforceNumber, isDev } from '#/utils/common'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
export class ManageLogger implements ILogger {
|
||||
readonly #level = {
|
||||
|
@ -1,17 +1,20 @@
|
||||
import axios from 'axios'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import http from 'http'
|
||||
import routers from './routerManager'
|
||||
import multer from 'multer'
|
||||
import path from 'path'
|
||||
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import routers from '~/server/routerManager'
|
||||
import {
|
||||
handleResponse,
|
||||
ensureHTTPLink
|
||||
} from './utils'
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '@core/picgo/logger'
|
||||
import axios from 'axios'
|
||||
import multer from 'multer'
|
||||
import { app } from 'electron'
|
||||
import path from 'path'
|
||||
import fs from 'fs-extra'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
} from '~/server/utils'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const DEFAULT_PORT = 36677
|
||||
const DEFAULT_HOST = '0.0.0.0'
|
||||
|
@ -1,21 +1,26 @@
|
||||
import router from './router'
|
||||
import {
|
||||
handleResponse
|
||||
} from './utils'
|
||||
import logger from '@core/picgo/logger'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
import { uploadChoosedFiles, uploadClipboardFiles, deleteChoosedFiles } from 'apis/app/uploader/apis'
|
||||
import path from 'path'
|
||||
import { dbPathDir } from 'apis/core/datastore/dbChecker'
|
||||
import picgo from '@core/picgo'
|
||||
import { changeCurrentUploader } from '../utils/handleUploaderConfig'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import { AESHelper } from '../utils/aesHelper'
|
||||
import { marked } from 'marked'
|
||||
import { markdownContent } from './apiDoc'
|
||||
import http from 'http'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { marked } from 'marked'
|
||||
import path from 'path'
|
||||
|
||||
import { dbPathDir } from '@core/datastore/dbChecker'
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { AESHelper } from '~/utils/aesHelper'
|
||||
import { changeCurrentUploader } from '~/utils/handleUploaderConfig'
|
||||
|
||||
import { uploadChoosedFiles, uploadClipboardFiles, deleteChoosedFiles } from 'apis/app/uploader/apis'
|
||||
import windowManager from 'apis/app/window/windowManager'
|
||||
|
||||
import { markdownContent } from '~/server/apiDoc'
|
||||
import router from '~/server/router'
|
||||
import {
|
||||
handleResponse
|
||||
} from '~/server/utils'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const appPath = app.getPath('userData')
|
||||
const serverTempDir = path.join(appPath, 'serverTemp')
|
||||
|
@ -1,10 +1,12 @@
|
||||
import http from 'http'
|
||||
import fs from 'fs-extra'
|
||||
import http from 'http'
|
||||
import path from 'path'
|
||||
|
||||
import picgo from '@core/picgo'
|
||||
import logger from '../../apis/core/picgo/logger'
|
||||
import { encodeFilePath } from '~/universal/utils/common'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { encodeFilePath } from '#/utils/common'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const defaultPath = process.platform === 'win32' ? 'C:\\Users' : '/'
|
||||
|
||||
|
@ -1,7 +1,9 @@
|
||||
import crypto from 'crypto'
|
||||
|
||||
import picgo from '@core/picgo'
|
||||
import { DEFAULT_AES_PASSWORD } from '~/universal/utils/static'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
import { DEFAULT_AES_PASSWORD } from '#/utils/static'
|
||||
|
||||
export class AESHelper {
|
||||
key: Buffer
|
||||
|
@ -1,9 +1,11 @@
|
||||
import fs from 'fs-extra'
|
||||
import yaml from 'js-yaml'
|
||||
import path from 'path'
|
||||
import os from 'os'
|
||||
import { dbPathChecker } from 'apis/core/datastore/dbChecker'
|
||||
import yaml from 'js-yaml'
|
||||
import { i18nManager } from '~/main/i18n'
|
||||
|
||||
import { dbPathChecker } from '@core/datastore/dbChecker'
|
||||
|
||||
import { i18nManager } from '~/i18n'
|
||||
|
||||
const configPath = dbPathChecker()
|
||||
const CONFIG_DIR = path.dirname(configPath)
|
||||
|
@ -1,7 +1,8 @@
|
||||
import crypto from 'crypto'
|
||||
import { clipboard } from 'electron'
|
||||
import { EventEmitter } from 'events'
|
||||
import crypto from 'crypto'
|
||||
import logger from '../apis/core/picgo/logger'
|
||||
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
class ClipboardWatcher extends EventEmitter {
|
||||
timer: NodeJS.Timeout | null
|
||||
|
@ -1,12 +1,14 @@
|
||||
import fs from 'fs-extra'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import { clipboard, Notification, dialog, Tray } from 'electron'
|
||||
import { handleUrlEncode } from '~/universal/utils/common'
|
||||
import axios from 'axios'
|
||||
import { clipboard, Notification, dialog, Tray } from 'electron'
|
||||
import FormData from 'form-data'
|
||||
import logger from '../apis/core/picgo/logger'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { IShortUrlServer } from '~/universal/types/enum'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
import db from '@core/datastore'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { IShortUrlServer } from '#/types/enum'
|
||||
import { handleUrlEncode } from '#/utils/common'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
export let tray: Tray
|
||||
|
||||
|
@ -1,11 +1,12 @@
|
||||
import { S3Client, DeleteObjectCommand, S3ClientConfig } from '@aws-sdk/client-s3'
|
||||
import { NodeHttpHandler } from '@smithy/node-http-handler'
|
||||
import http, { AgentOptions } from 'http'
|
||||
import https from 'https'
|
||||
import { getAgent } from '../manage/utils/common'
|
||||
import axios from 'axios'
|
||||
import crypto from 'crypto'
|
||||
import http, { AgentOptions } from 'http'
|
||||
import https from 'https'
|
||||
import querystring from 'querystring'
|
||||
import { S3Client, DeleteObjectCommand, S3ClientConfig } from '@aws-sdk/client-s3'
|
||||
import { NodeHttpHandler } from '@smithy/node-http-handler'
|
||||
|
||||
import { getAgent } from '~/manage/utils/common'
|
||||
|
||||
interface DogecloudTokenFull {
|
||||
Credentials: {
|
||||
|
@ -1,7 +1,8 @@
|
||||
// fork from https://github.com/sindresorhus/macos-version
|
||||
// cause I can't change it to common-js module
|
||||
import process from 'process'
|
||||
|
||||
import fs from 'fs'
|
||||
import process from 'process'
|
||||
import semver from 'semver'
|
||||
|
||||
export const isMacOS = process.platform === 'darwin'
|
||||
|
@ -1,5 +1,5 @@
|
||||
import picgo from '@core/picgo'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const getPicBeds = () => {
|
||||
const picBedTypes = picgo.helper.uploader.getIdList()
|
||||
|
@ -1,7 +1,9 @@
|
||||
import path from 'path'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import { Logger } from 'piclist'
|
||||
import { isUrl } from '~/universal/utils/common'
|
||||
|
||||
import { isUrl } from '#/utils/common'
|
||||
|
||||
interface IResultFileObject {
|
||||
path: string
|
||||
}
|
||||
|
@ -1,7 +1,9 @@
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import { i18nManager } from '~/main/i18n'
|
||||
import { II18nLanguage } from '~/universal/types/enum'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import db from '@core/datastore'
|
||||
|
||||
import { i18nManager } from '~/i18n'
|
||||
|
||||
import { II18nLanguage } from '#/types/enum'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
export const initI18n = () => {
|
||||
const currentLanguage = db.get(configPaths.settings.language) || II18nLanguage.ZH_CN
|
||||
|
@ -1,8 +1,11 @@
|
||||
import { v4 as uuid } from 'uuid'
|
||||
import { trimValues } from '#/utils/common'
|
||||
|
||||
import picgo from '@core/picgo'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { setTrayToolTip } from './common'
|
||||
|
||||
import { setTrayToolTip } from '~/utils/common'
|
||||
|
||||
import { trimValues } from '#/utils/common'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
export const handleConfigWithFunction = (config: IPicGoPluginOriginConfig[]): IPicGoPluginConfig[] => {
|
||||
for (const i in config) {
|
||||
|
@ -1,8 +1,9 @@
|
||||
import db from '@core/datastore'
|
||||
|
||||
import { generateShortUrl, handleUrlEncodeWithSetting } from '~/utils/common'
|
||||
|
||||
import { IPasteStyle } from '#/types/enum'
|
||||
import { generateShortUrl } from '~/main/utils/common'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import { handleUrlEncodeWithSetting } from './common'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
export const formatCustomLink = (customLink: string, item: ImgInfo) => {
|
||||
const fileName = item.fileName!.replace(new RegExp(`\\${item.extname}$`), '')
|
||||
|
@ -1,9 +1,9 @@
|
||||
// @ts-nocheck
|
||||
import fs from 'fs-extra'
|
||||
import { NodeSSH, Config, SSHExecCommandResponse } from 'node-ssh-no-cpu-features'
|
||||
import path from 'path'
|
||||
import { ISftpPlistConfig } from 'piclist/dist/types'
|
||||
import { Client } from 'ssh2-no-cpu-features'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
class SSHClient {
|
||||
// eslint-disable-next-line no-use-before-define
|
||||
|
@ -1,12 +1,14 @@
|
||||
import axios from 'axios'
|
||||
import { app } from 'electron'
|
||||
import fs from 'fs-extra'
|
||||
import path from 'path'
|
||||
import axios from 'axios'
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import { HttpsProxyAgent } from 'hpagent'
|
||||
import path from 'path'
|
||||
import { Octokit } from '@octokit/rest'
|
||||
import logger from 'apis/core/picgo/logger'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
|
||||
import db from '@core/datastore'
|
||||
import logger from '@core/picgo/logger'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const STORE_PATH = app.getPath('userData')
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
import db from '~/main/apis/core/datastore'
|
||||
import { autoUpdater } from 'electron-updater'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
|
||||
import db from '@core/datastore'
|
||||
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const updateChecker = async () => {
|
||||
let showTip = db.get(configPaths.settings.showUpdateTip)
|
||||
|
@ -6,12 +6,14 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { useStore } from '@/hooks/useStore'
|
||||
import { onBeforeMount, onMounted, onUnmounted } from 'vue'
|
||||
import { getConfig } from './utils/dataSender'
|
||||
import type { IConfig } from 'piclist'
|
||||
import bus from './utils/bus'
|
||||
import { FORCE_UPDATE } from '~/universal/events/constants'
|
||||
import { useATagClick } from './hooks/useATagClick'
|
||||
import { onBeforeMount, onMounted, onUnmounted } from 'vue'
|
||||
|
||||
import { useATagClick } from '@/hooks/useATagClick'
|
||||
import bus from '@/utils/bus'
|
||||
import { getConfig } from '@/utils/dataSender'
|
||||
|
||||
import { FORCE_UPDATE } from '#/events/constants'
|
||||
|
||||
useATagClick()
|
||||
const store = useStore()
|
||||
|
@ -1,7 +1,8 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios from 'axios'
|
||||
import path from 'path'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
config: {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import OSS from 'ali-oss'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
config: PartialKeys<IAliYunConfig, 'path'>
|
||||
|
@ -1,38 +1,38 @@
|
||||
import AliyunApi from './aliyun'
|
||||
import AwsS3Api from './awss3'
|
||||
import GithubApi from './github'
|
||||
import ImgurApi from './imgur'
|
||||
import LocalApi from './local'
|
||||
import QiniuApi from './qiniu'
|
||||
import SftpPlistApi from './sftpplist'
|
||||
import SmmsApi from './smms'
|
||||
import TcyunApi from './tcyun'
|
||||
import UpyunApi from './upyun'
|
||||
import WebdavApi from './webdav'
|
||||
import DogeCloudApi from './dogecloud'
|
||||
import HuaweicloudApi from './huaweiyun'
|
||||
import AlistApi from './alist'
|
||||
import PiclistApi from './piclist'
|
||||
import LskyplistApi from './lskyplist'
|
||||
import AlistApi from '@/apis/alist'
|
||||
import AliyunApi from '@/apis/aliyun'
|
||||
import AwsS3Api from '@/apis/awss3'
|
||||
import DogeCloudApi from '@/apis/dogecloud'
|
||||
import GithubApi from '@/apis/github'
|
||||
import HuaweicloudApi from '@/apis/huaweiyun'
|
||||
import ImgurApi from '@/apis/imgur'
|
||||
import LocalApi from '@/apis/local'
|
||||
import LskyplistApi from '@/apis/lskyplist'
|
||||
import PiclistApi from '@/apis/piclist'
|
||||
import QiniuApi from '@/apis/qiniu'
|
||||
import SftpPlistApi from '@/apis/sftpplist'
|
||||
import SmmsApi from '@/apis/smms'
|
||||
import TcyunApi from '@/apis/tcyun'
|
||||
import UpyunApi from '@/apis/upyun'
|
||||
import WebdavApi from '@/apis/webdav'
|
||||
|
||||
const apiMap: IStringKeyMap = {
|
||||
alist: AlistApi,
|
||||
aliyun: AliyunApi,
|
||||
'aws-s3': AwsS3Api,
|
||||
'aws-s3-plist': AwsS3Api,
|
||||
dogecloud: DogeCloudApi,
|
||||
github: GithubApi,
|
||||
'huaweicloud-uploader': HuaweicloudApi,
|
||||
imgur: ImgurApi,
|
||||
local: LocalApi,
|
||||
lskyplist: LskyplistApi,
|
||||
piclist: PiclistApi,
|
||||
qiniu: QiniuApi,
|
||||
sftpplist: SftpPlistApi,
|
||||
smms: SmmsApi,
|
||||
tcyun: TcyunApi,
|
||||
upyun: UpyunApi,
|
||||
webdavplist: WebdavApi,
|
||||
dogecloud: DogeCloudApi,
|
||||
'huaweicloud-uploader': HuaweicloudApi,
|
||||
alist: AlistApi,
|
||||
piclist: PiclistApi,
|
||||
lskyplist: LskyplistApi
|
||||
webdavplist: WebdavApi
|
||||
}
|
||||
|
||||
export default class ALLApi {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromS3InMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
import { deleteFailedLog, getRawData } from '@/utils/common'
|
||||
import { removeFileFromS3InMain } from '~/utils/deleteFunc'
|
||||
|
||||
export default class AwsS3Api {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromDogeInMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
import { deleteFailedLog, getRawData } from '@/utils/common'
|
||||
import { removeFileFromDogeInMain } from '~/utils/deleteFunc'
|
||||
|
||||
export default class AwsS3Api {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import { Octokit } from '@octokit/rest'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
hash: string
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
import { removeFileFromHuaweiInMain } from '~/main/utils/deleteFunc'
|
||||
|
||||
import { deleteFailedLog, getRawData } from '@/utils/common'
|
||||
import { removeFileFromHuaweiInMain } from '~/utils/deleteFunc'
|
||||
|
||||
export default class HuaweicloudApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
config?: Partial<IImgurConfig>
|
||||
hash?: string
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import fs from 'fs-extra'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
hash: string
|
||||
}
|
||||
|
@ -1,7 +1,8 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
import https from 'https'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
export default class LskyplistApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
const { hash, config } = configMap
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
export default class PiclistApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
const { config, fullResult } = configMap
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import Qiniu from 'qiniu'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
config: PartialKeys<IQiniuConfig, 'path'>
|
||||
|
@ -1,5 +1,6 @@
|
||||
import { ipcRenderer } from 'electron'
|
||||
import { deleteFailedLog, getRawData } from '~/renderer/utils/common'
|
||||
|
||||
import { deleteFailedLog, getRawData } from '@/utils/common'
|
||||
|
||||
export default class SftpPlistApi {
|
||||
static async delete (configMap: IStringKeyMap): Promise<boolean> {
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import axios, { AxiosResponse } from 'axios'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
hash?: string
|
||||
config?: Partial<ISMMSConfig>
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import COS from 'cos-nodejs-sdk-v5'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
config: PartialKeys<ITcYunConfig, 'path'>
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import Upyun from 'upyun'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
config: PartialKeys<IUpYunConfig, 'path'>
|
||||
|
@ -1,6 +1,8 @@
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
import { AuthType, WebDAVClientOptions, createClient } from 'webdav'
|
||||
import { formatEndpoint } from '~/main/manage/utils/common'
|
||||
|
||||
import { deleteFailedLog, deleteLog } from '@/utils/common'
|
||||
|
||||
import { formatEndpoint } from '~/manage/utils/common'
|
||||
|
||||
interface IConfigMap {
|
||||
fileName: string
|
||||
|
@ -99,14 +99,16 @@
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { reactive, ref, watch, toRefs } from 'vue'
|
||||
import { cloneDeep, union } from 'lodash'
|
||||
import { getConfig } from '@/utils/dataSender'
|
||||
import { useRoute } from 'vue-router'
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import { InfoFilled } from '@element-plus/icons-vue'
|
||||
import { cloneDeep, union } from 'lodash'
|
||||
import { marked } from 'marked'
|
||||
import { reactive, ref, watch, toRefs } from 'vue'
|
||||
import { useRoute } from 'vue-router'
|
||||
import { InfoFilled } from '@element-plus/icons-vue'
|
||||
|
||||
import { getConfig } from '@/utils/dataSender'
|
||||
|
||||
interface IProps {
|
||||
config: any[]
|
||||
|
@ -76,11 +76,13 @@
|
||||
</el-form>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { reactive, ref, watch } from 'vue'
|
||||
import { cloneDeep, union } from 'lodash'
|
||||
import { getConfig } from '@/utils/dataSender'
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import { cloneDeep, union } from 'lodash'
|
||||
import { reactive, ref, watch } from 'vue'
|
||||
|
||||
import { getConfig } from '@/utils/dataSender'
|
||||
import { T as $T } from '@/i18n'
|
||||
|
||||
interface IProps {
|
||||
|
@ -22,12 +22,13 @@
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, onBeforeMount } from 'vue'
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
import { Loading } from '@element-plus/icons-vue'
|
||||
import fs from 'fs-extra'
|
||||
import mime from 'mime-types'
|
||||
import path from 'path'
|
||||
import { ref, onBeforeMount } from 'vue'
|
||||
import { Loading } from '@element-plus/icons-vue'
|
||||
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
|
||||
const base64Image = ref('')
|
||||
const props = defineProps<{
|
||||
|
@ -262,11 +262,12 @@
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { T as $T } from '@/i18n/index'
|
||||
import { IBuildInCompressOptions, IBuildInWaterMarkOptions } from 'piclist'
|
||||
import { onBeforeMount, reactive, ref, toRaw } from 'vue'
|
||||
|
||||
import { T as $T } from '@/i18n/index'
|
||||
import { getConfig, saveConfig } from '@/utils/dataSender'
|
||||
import { configPaths } from '~/universal/utils/configPaths'
|
||||
import { configPaths } from '#/utils/configPaths'
|
||||
|
||||
const imageProcessDialogVisible = defineModel<boolean>()
|
||||
|
||||
|
@ -21,10 +21,12 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, onMounted, watch, computed } from 'vue'
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
import { Loading } from '@element-plus/icons-vue'
|
||||
|
||||
import { getAuthHeader } from '@/manage/utils/digestAuth'
|
||||
import { formatEndpoint } from '~/main/manage/utils/common'
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
|
||||
import { formatEndpoint } from '~/manage/utils/common'
|
||||
|
||||
const base64Url = ref('')
|
||||
const success = ref(false)
|
||||
|
@ -1,9 +1,11 @@
|
||||
import { defineComponent, ref, onMounted, watch, computed } from 'vue'
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
import { Loading } from '@element-plus/icons-vue'
|
||||
import { getAuthHeader } from '@/manage/utils/digestAuth'
|
||||
import { formatEndpoint } from '~/main/manage/utils/common'
|
||||
import { ElImage, ElIcon } from 'element-plus'
|
||||
import { defineComponent, ref, onMounted, watch, computed } from 'vue'
|
||||
import { Loading } from '@element-plus/icons-vue'
|
||||
|
||||
import { getFileIconPath } from '@/manage/utils/common'
|
||||
import { getAuthHeader } from '@/manage/utils/digestAuth'
|
||||
|
||||
import { formatEndpoint } from '~/manage/utils/common'
|
||||
|
||||
export default defineComponent({
|
||||
props: {
|
||||
|
@ -26,16 +26,19 @@
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { ref, reactive, onBeforeUnmount, onBeforeMount } from 'vue'
|
||||
import { ipcRenderer, IpcRendererEvent } from 'electron'
|
||||
import { ref, reactive, onBeforeUnmount, onBeforeMount } from 'vue'
|
||||
|
||||
import { T as $T } from '@/i18n/index'
|
||||
import $bus from '@/utils/bus'
|
||||
import { sendToMain } from '@/utils/dataSender'
|
||||
|
||||
import {
|
||||
SHOW_INPUT_BOX,
|
||||
SHOW_INPUT_BOX_RESPONSE
|
||||
} from '~/universal/events/constants'
|
||||
import $bus from '@/utils/bus'
|
||||
import { sendToMain } from '@/utils/dataSender'
|
||||
import { T as $T } from '@/i18n/index'
|
||||
} from '#/events/constants'
|
||||
|
||||
const inputBoxValue = ref('')
|
||||
const showInputBoxVisible = ref(false)
|
||||
|
@ -9,8 +9,9 @@
|
||||
</ElButton>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { IToolboxItemCheckStatus } from '~/universal/types/enum'
|
||||
import { IToolboxItemCheckStatus } from '#/types/enum'
|
||||
|
||||
interface IProps {
|
||||
status: IToolboxItemCheckStatus
|
||||
|
@ -14,10 +14,12 @@
|
||||
</template>
|
||||
</el-icon>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { CircleCloseFilled, Loading, SuccessFilled } from '@element-plus/icons-vue'
|
||||
import { computed } from 'vue'
|
||||
import { IToolboxItemCheckStatus } from '~/universal/types/enum'
|
||||
|
||||
import { IToolboxItemCheckStatus } from '#/types/enum'
|
||||
|
||||
interface IProps {
|
||||
status: IToolboxItemCheckStatus
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user