Adjust markdown body style & page worker structure

This commit is contained in:
johnathan 2025-07-18 17:40:25 +08:00
parent cbdc3efd22
commit 280e321614
10 changed files with 14 additions and 10 deletions

View File

@ -1,5 +1,3 @@
[[toc]]
# 软件目的 # 软件目的
本软件的开发旨在自动采集Amazon电商平台的数据并提供导出和预览数据的功能。 本软件的开发旨在自动采集Amazon电商平台的数据并提供导出和预览数据的功能。

View File

@ -3,7 +3,7 @@ import amazon from '../impls/amazon';
import { uploadImage } from '~/logic/upload-image'; import { uploadImage } from '~/logic/upload-image';
import { detailItems, reviewItems, searchItems } from '~/storages/amazon'; import { detailItems, reviewItems, searchItems } from '~/storages/amazon';
import { createGlobalState } from '@vueuse/core'; import { createGlobalState } from '@vueuse/core';
import { useAmazonService } from '~/services/amazon'; import { useAmazonService } from '~/page-worker/services/amazon';
import { LanchTaskBaseOptions, WorkerComposable } from '../interfaces/common'; import { LanchTaskBaseOptions, WorkerComposable } from '../interfaces/common';
import { AmazonPageWorker } from '../interfaces/amazon'; import { AmazonPageWorker } from '../interfaces/amazon';
@ -14,7 +14,7 @@ export interface AmazonPageWorkerSettings {
} }
/** Main function to build the Amazon page worker composable */ /** Main function to build the Amazon page worker composable */
function buildAmazonPageWorker() { function buildAmazonPageWorker(): WorkerComposable<AmazonPageWorker, AmazonPageWorkerSettings> {
// Reactive settings object // Reactive settings object
const settings = shallowRef<AmazonPageWorkerSettings>({}); const settings = shallowRef<AmazonPageWorkerSettings>({});
// Long task management // Long task management
@ -216,7 +216,7 @@ function buildAmazonPageWorker() {
off: worker.off.bind(worker), off: worker.off.bind(worker),
once: worker.once.bind(worker), once: worker.once.bind(worker),
stop: worker.stop.bind(worker), stop: worker.stop.bind(worker),
} as WorkerComposable<AmazonPageWorker, AmazonPageWorkerSettings>; };
} }
/** Create a global state composable for the Amazon worker */ /** Create a global state composable for the Amazon worker */

View File

@ -10,7 +10,7 @@ export interface HomedepotWorkerSettings {
commitChangeIngerval?: number; commitChangeIngerval?: number;
} }
function buildHomedepotWorker() { function buildHomedepotWorker(): WorkerComposable<HomedepotWorker, HomedepotWorkerSettings> {
const settings = shallowRef<HomedepotWorkerSettings>({}); const settings = shallowRef<HomedepotWorkerSettings>({});
const worker = homedepot.getHomedepotWorker(); const worker = homedepot.getHomedepotWorker();
const { isRunning, startTask } = useLongTask(); const { isRunning, startTask } = useLongTask();
@ -79,7 +79,7 @@ function buildHomedepotWorker() {
off: worker.off.bind(worker), off: worker.off.bind(worker),
once: worker.once.bind(worker), once: worker.once.bind(worker),
stop: worker.stop.bind(worker), stop: worker.stop.bind(worker),
} as WorkerComposable<HomedepotWorker, HomedepotWorkerSettings>; };
} }
export const useHomedepotWorker = createGlobalState(buildHomedepotWorker); export const useHomedepotWorker = createGlobalState(buildHomedepotWorker);

View File

@ -1,5 +1,5 @@
import type { Tabs } from 'webextension-polyfill'; import type { Tabs } from 'webextension-polyfill';
import { withErrorHandling } from '../error-handler'; import { withErrorHandling } from '../utils/error-handler';
import { import {
AmazonDetailPageInjector, AmazonDetailPageInjector,
AmazonReviewPageInjector, AmazonReviewPageInjector,

View File

@ -1,5 +1,5 @@
import { Tabs } from 'webextension-polyfill'; import { Tabs } from 'webextension-polyfill';
import { withErrorHandling } from '../error-handler'; import { withErrorHandling } from '../utils/error-handler';
import { HomedepotDetailPageInjector } from '../web-injectors/homedepot'; import { HomedepotDetailPageInjector } from '../web-injectors/homedepot';
import { BaseWorker } from './base'; import { BaseWorker } from './base';
import { LanchTaskBaseOptions } from '../interfaces/common'; import { LanchTaskBaseOptions } from '../interfaces/common';

View File

@ -2,7 +2,9 @@ import type Emittery from 'emittery';
export type Listener<T> = Pick<Emittery<T>, 'on' | 'off' | 'once'>; export type Listener<T> = Pick<Emittery<T>, 'on' | 'off' | 'once'>;
export type LanchTaskBaseOptions = { progress?: (remains: string[]) => Promise<void> | void }; export interface LanchTaskBaseOptions {
progress?: (remains: string[]) => Promise<void> | void;
}
export interface LowesEvents { export interface LowesEvents {
/** The event is fired when detail items collect */ /** The event is fired when detail items collect */

View File

@ -44,3 +44,7 @@ body,
background: #f7fafc; background: #f7fafc;
border-radius: 8px; border-radius: 8px;
} }
.markdown-body {
max-width: 900px;
}