@steipete/summarize-core 0.10.0 → 0.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -1
- package/dist/esm/content/index.js +5 -5
- package/dist/esm/content/index.js.map +1 -1
- package/dist/esm/content/link-preview/client.js +20 -9
- package/dist/esm/content/link-preview/client.js.map +1 -1
- package/dist/esm/content/link-preview/content/article.js +84 -83
- package/dist/esm/content/link-preview/content/article.js.map +1 -1
- package/dist/esm/content/link-preview/content/cleaner.js +23 -20
- package/dist/esm/content/link-preview/content/cleaner.js.map +1 -1
- package/dist/esm/content/link-preview/content/constants.js.map +1 -1
- package/dist/esm/content/link-preview/content/fetcher.js +46 -40
- package/dist/esm/content/link-preview/content/fetcher.js.map +1 -1
- package/dist/esm/content/link-preview/content/firecrawl.js +16 -16
- package/dist/esm/content/link-preview/content/firecrawl.js.map +1 -1
- package/dist/esm/content/link-preview/content/html.js +29 -27
- package/dist/esm/content/link-preview/content/html.js.map +1 -1
- package/dist/esm/content/link-preview/content/index.js +141 -88
- package/dist/esm/content/link-preview/content/index.js.map +1 -1
- package/dist/esm/content/link-preview/content/jsonld.js +12 -12
- package/dist/esm/content/link-preview/content/jsonld.js.map +1 -1
- package/dist/esm/content/link-preview/content/parsers.js +20 -20
- package/dist/esm/content/link-preview/content/parsers.js.map +1 -1
- package/dist/esm/content/link-preview/content/podcast-utils.js +34 -34
- package/dist/esm/content/link-preview/content/podcast-utils.js.map +1 -1
- package/dist/esm/content/link-preview/content/readability.js +16 -15
- package/dist/esm/content/link-preview/content/readability.js.map +1 -1
- package/dist/esm/content/link-preview/content/twitter-utils.js +24 -11
- package/dist/esm/content/link-preview/content/twitter-utils.js.map +1 -1
- package/dist/esm/content/link-preview/content/types.js +1 -1
- package/dist/esm/content/link-preview/content/types.js.map +1 -1
- package/dist/esm/content/link-preview/content/utils.js +17 -17
- package/dist/esm/content/link-preview/content/utils.js.map +1 -1
- package/dist/esm/content/link-preview/content/video.js +19 -19
- package/dist/esm/content/link-preview/content/video.js.map +1 -1
- package/dist/esm/content/link-preview/content/visibility.js +121 -0
- package/dist/esm/content/link-preview/content/visibility.js.map +1 -0
- package/dist/esm/content/link-preview/content/youtube.js +10 -10
- package/dist/esm/content/link-preview/content/youtube.js.map +1 -1
- package/dist/esm/content/link-preview/deps.js +16 -16
- package/dist/esm/content/link-preview/deps.js.map +1 -1
- package/dist/esm/content/link-preview/fetch-with-timeout.js +4 -4
- package/dist/esm/content/link-preview/fetch-with-timeout.js.map +1 -1
- package/dist/esm/content/link-preview/types.js +1 -1
- package/dist/esm/content/link-preview/types.js.map +1 -1
- package/dist/esm/content/transcript/cache.js +22 -22
- package/dist/esm/content/transcript/cache.js.map +1 -1
- package/dist/esm/content/transcript/index.js +34 -24
- package/dist/esm/content/transcript/index.js.map +1 -1
- package/dist/esm/content/transcript/normalize.js +10 -10
- package/dist/esm/content/transcript/normalize.js.map +1 -1
- package/dist/esm/content/transcript/parse.js +31 -31
- package/dist/esm/content/transcript/parse.js.map +1 -1
- package/dist/esm/content/transcript/providers/generic.js +74 -78
- package/dist/esm/content/transcript/providers/generic.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/apple-flow.js +36 -36
- package/dist/esm/content/transcript/providers/podcast/apple-flow.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/apple.js +5 -5
- package/dist/esm/content/transcript/providers/podcast/apple.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/constants.js +2 -2
- package/dist/esm/content/transcript/providers/podcast/constants.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/itunes.js +44 -42
- package/dist/esm/content/transcript/providers/podcast/itunes.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/json.js +4 -4
- package/dist/esm/content/transcript/providers/podcast/json.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/media.js +58 -49
- package/dist/esm/content/transcript/providers/podcast/media.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/results.js +2 -2
- package/dist/esm/content/transcript/providers/podcast/results.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/rss.js +29 -29
- package/dist/esm/content/transcript/providers/podcast/rss.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/spotify-flow.js +38 -38
- package/dist/esm/content/transcript/providers/podcast/spotify-flow.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast/spotify.js +32 -32
- package/dist/esm/content/transcript/providers/podcast/spotify.js.map +1 -1
- package/dist/esm/content/transcript/providers/podcast.js +43 -47
- package/dist/esm/content/transcript/providers/podcast.js.map +1 -1
- package/dist/esm/content/transcript/providers/transcription-start.js +59 -31
- package/dist/esm/content/transcript/providers/transcription-start.js.map +1 -1
- package/dist/esm/content/transcript/providers/youtube/api.js +56 -56
- package/dist/esm/content/transcript/providers/youtube/api.js.map +1 -1
- package/dist/esm/content/transcript/providers/youtube/apify.js +7 -7
- package/dist/esm/content/transcript/providers/youtube/apify.js.map +1 -1
- package/dist/esm/content/transcript/providers/youtube/captions.js +76 -76
- package/dist/esm/content/transcript/providers/youtube/captions.js.map +1 -1
- package/dist/esm/content/transcript/providers/youtube/yt-dlp.js +82 -75
- package/dist/esm/content/transcript/providers/youtube/yt-dlp.js.map +1 -1
- package/dist/esm/content/transcript/providers/youtube.js +84 -77
- package/dist/esm/content/transcript/providers/youtube.js.map +1 -1
- package/dist/esm/content/transcript/timestamps.js +8 -8
- package/dist/esm/content/transcript/timestamps.js.map +1 -1
- package/dist/esm/content/transcript/transcription-config.js +14 -0
- package/dist/esm/content/transcript/transcription-config.js.map +1 -0
- package/dist/esm/content/transcript/utils.js +35 -35
- package/dist/esm/content/transcript/utils.js.map +1 -1
- package/dist/esm/content/url.js +59 -28
- package/dist/esm/content/url.js.map +1 -1
- package/dist/esm/index.js +4 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/language.js +77 -77
- package/dist/esm/language.js.map +1 -1
- package/dist/esm/openai/base-url.js +35 -0
- package/dist/esm/openai/base-url.js.map +1 -0
- package/dist/esm/processes.js +16 -16
- package/dist/esm/processes.js.map +1 -1
- package/dist/esm/prompts/cli.js +17 -17
- package/dist/esm/prompts/cli.js.map +1 -1
- package/dist/esm/prompts/file.js +54 -54
- package/dist/esm/prompts/file.js.map +1 -1
- package/dist/esm/prompts/format.js +2 -2
- package/dist/esm/prompts/format.js.map +1 -1
- package/dist/esm/prompts/index.js +5 -5
- package/dist/esm/prompts/index.js.map +1 -1
- package/dist/esm/prompts/link-summary.js +65 -65
- package/dist/esm/prompts/link-summary.js.map +1 -1
- package/dist/esm/prompts/summary-lengths.js +10 -10
- package/dist/esm/prompts/summary-lengths.js.map +1 -1
- package/dist/esm/prompts/summary-system.js +9 -9
- package/dist/esm/prompts/summary-system.js.map +1 -1
- package/dist/esm/shared/contracts.js +1 -1
- package/dist/esm/shared/contracts.js.map +1 -1
- package/dist/esm/transcription/onnx-cli.js +69 -69
- package/dist/esm/transcription/onnx-cli.js.map +1 -1
- package/dist/esm/transcription/whisper/constants.js +3 -3
- package/dist/esm/transcription/whisper/constants.js.map +1 -1
- package/dist/esm/transcription/whisper/core.js +148 -59
- package/dist/esm/transcription/whisper/core.js.map +1 -1
- package/dist/esm/transcription/whisper/fal.js +14 -14
- package/dist/esm/transcription/whisper/fal.js.map +1 -1
- package/dist/esm/transcription/whisper/ffmpeg.js +106 -106
- package/dist/esm/transcription/whisper/ffmpeg.js.map +1 -1
- package/dist/esm/transcription/whisper/groq.js +46 -0
- package/dist/esm/transcription/whisper/groq.js.map +1 -0
- package/dist/esm/transcription/whisper/openai.js +19 -13
- package/dist/esm/transcription/whisper/openai.js.map +1 -1
- package/dist/esm/transcription/whisper/utils.js +19 -19
- package/dist/esm/transcription/whisper/utils.js.map +1 -1
- package/dist/esm/transcription/whisper/whisper-cpp.js +64 -64
- package/dist/esm/transcription/whisper/whisper-cpp.js.map +1 -1
- package/dist/esm/transcription/whisper.js +4 -4
- package/dist/esm/transcription/whisper.js.map +1 -1
- package/dist/types/content/cache/types.d.ts +1 -1
- package/dist/types/content/index.d.ts +7 -7
- package/dist/types/content/link-preview/client.d.ts +7 -4
- package/dist/types/content/link-preview/content/cleaner.d.ts +1 -0
- package/dist/types/content/link-preview/content/fetcher.d.ts +2 -2
- package/dist/types/content/link-preview/content/firecrawl.d.ts +7 -7
- package/dist/types/content/link-preview/content/html.d.ts +8 -8
- package/dist/types/content/link-preview/content/index.d.ts +3 -3
- package/dist/types/content/link-preview/content/twitter-utils.d.ts +1 -0
- package/dist/types/content/link-preview/content/types.d.ts +8 -8
- package/dist/types/content/link-preview/content/utils.d.ts +3 -3
- package/dist/types/content/link-preview/content/video.d.ts +1 -1
- package/dist/types/content/link-preview/content/visibility.d.ts +1 -0
- package/dist/types/content/link-preview/deps.d.ts +36 -33
- package/dist/types/content/link-preview/types.d.ts +4 -4
- package/dist/types/content/transcript/cache.d.ts +4 -4
- package/dist/types/content/transcript/index.d.ts +7 -7
- package/dist/types/content/transcript/parse.d.ts +1 -1
- package/dist/types/content/transcript/providers/generic.d.ts +1 -1
- package/dist/types/content/transcript/providers/podcast/apple-flow.d.ts +2 -2
- package/dist/types/content/transcript/providers/podcast/flow-context.d.ts +4 -4
- package/dist/types/content/transcript/providers/podcast/media.d.ts +9 -6
- package/dist/types/content/transcript/providers/podcast/results.d.ts +3 -3
- package/dist/types/content/transcript/providers/podcast/rss.d.ts +1 -1
- package/dist/types/content/transcript/providers/podcast/spotify-flow.d.ts +2 -2
- package/dist/types/content/transcript/providers/podcast/spotify.d.ts +2 -2
- package/dist/types/content/transcript/providers/podcast.d.ts +5 -5
- package/dist/types/content/transcript/providers/transcription-start.d.ts +14 -8
- package/dist/types/content/transcript/providers/youtube/api.d.ts +1 -1
- package/dist/types/content/transcript/providers/youtube/captions.d.ts +1 -1
- package/dist/types/content/transcript/providers/youtube/yt-dlp.d.ts +11 -8
- package/dist/types/content/transcript/providers/youtube.d.ts +1 -1
- package/dist/types/content/transcript/timestamps.d.ts +1 -1
- package/dist/types/content/transcript/transcription-config.d.ts +15 -0
- package/dist/types/content/transcript/types.d.ts +12 -9
- package/dist/types/content/transcript/utils.d.ts +1 -1
- package/dist/types/content/url.d.ts +5 -3
- package/dist/types/index.d.ts +5 -4
- package/dist/types/language.d.ts +4 -4
- package/dist/types/openai/base-url.d.ts +14 -0
- package/dist/types/processes.d.ts +2 -2
- package/dist/types/prompts/cli.d.ts +3 -3
- package/dist/types/prompts/file.d.ts +2 -2
- package/dist/types/prompts/index.d.ts +6 -6
- package/dist/types/prompts/link-summary.d.ts +3 -3
- package/dist/types/prompts/summary-lengths.d.ts +1 -1
- package/dist/types/transcription/onnx-cli.d.ts +3 -3
- package/dist/types/transcription/whisper/core.d.ts +6 -3
- package/dist/types/transcription/whisper/groq.d.ts +2 -0
- package/dist/types/transcription/whisper/openai.d.ts +6 -1
- package/dist/types/transcription/whisper/types.d.ts +1 -1
- package/dist/types/transcription/whisper/whisper-cpp.d.ts +1 -1
- package/dist/types/transcription/whisper.d.ts +5 -5
- package/package.json +13 -13
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { OutputLanguage } from
|
|
2
|
-
import { type SummaryLengthTarget } from
|
|
1
|
+
import type { OutputLanguage } from "../language.js";
|
|
2
|
+
import { type SummaryLengthTarget } from "./link-summary.js";
|
|
3
3
|
export declare function buildPathSummaryPrompt({ kindLabel, filePath, filename, mediaType, outputLanguage, summaryLength, promptOverride, lengthInstruction, languageInstruction, }: {
|
|
4
|
-
kindLabel:
|
|
4
|
+
kindLabel: "file" | "image";
|
|
5
5
|
filePath: string;
|
|
6
6
|
filename: string | null;
|
|
7
7
|
mediaType: string | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OutputLanguage } from
|
|
2
|
-
import { type SummaryLengthTarget } from
|
|
1
|
+
import type { OutputLanguage } from "../language.js";
|
|
2
|
+
import { type SummaryLengthTarget } from "./link-summary.js";
|
|
3
3
|
export declare function buildFileSummaryPrompt({ filename, mediaType, outputLanguage, summaryLength, contentLength, promptOverride, lengthInstruction, languageInstruction, }: {
|
|
4
4
|
filename: string | null;
|
|
5
5
|
mediaType: string | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export type { SummaryLength } from
|
|
2
|
-
export { buildPathSummaryPrompt } from
|
|
3
|
-
export { buildFileSummaryPrompt, buildFileTextSummaryPrompt } from
|
|
4
|
-
export { buildLinkSummaryPrompt, estimateMaxCompletionTokensForCharacters, pickSummaryLengthForCharacters, type ShareContextEntry, SUMMARY_LENGTH_TO_TOKENS, type SummaryLengthTarget, } from
|
|
5
|
-
export { formatPresetLengthGuidance, resolveSummaryLengthSpec, SUMMARY_LENGTH_MAX_CHARACTERS, SUMMARY_LENGTH_SPECS, SUMMARY_LENGTH_TARGET_CHARACTERS, } from
|
|
6
|
-
export { SUMMARY_SYSTEM_PROMPT } from
|
|
1
|
+
export type { SummaryLength } from "../shared/contracts.js";
|
|
2
|
+
export { buildPathSummaryPrompt } from "./cli.js";
|
|
3
|
+
export { buildFileSummaryPrompt, buildFileTextSummaryPrompt } from "./file.js";
|
|
4
|
+
export { buildLinkSummaryPrompt, estimateMaxCompletionTokensForCharacters, pickSummaryLengthForCharacters, type ShareContextEntry, SUMMARY_LENGTH_TO_TOKENS, type SummaryLengthTarget, } from "./link-summary.js";
|
|
5
|
+
export { formatPresetLengthGuidance, resolveSummaryLengthSpec, SUMMARY_LENGTH_MAX_CHARACTERS, SUMMARY_LENGTH_SPECS, SUMMARY_LENGTH_TARGET_CHARACTERS, } from "./summary-lengths.js";
|
|
6
|
+
export { SUMMARY_SYSTEM_PROMPT } from "./summary-system.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { OutputLanguage } from
|
|
2
|
-
import type { SummaryLength } from
|
|
3
|
-
import { SUMMARY_LENGTH_TO_TOKENS } from
|
|
1
|
+
import type { OutputLanguage } from "../language.js";
|
|
2
|
+
import type { SummaryLength } from "../shared/contracts.js";
|
|
3
|
+
import { SUMMARY_LENGTH_TO_TOKENS } from "./summary-lengths.js";
|
|
4
4
|
export { SUMMARY_LENGTH_TO_TOKENS };
|
|
5
5
|
export type SummaryLengthTarget = SummaryLength | {
|
|
6
6
|
maxCharacters: number;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { WhisperProgressEvent, WhisperTranscriptionResult } from
|
|
2
|
-
export type OnnxModelId =
|
|
1
|
+
import type { WhisperProgressEvent, WhisperTranscriptionResult } from "./whisper/types.js";
|
|
2
|
+
export type OnnxModelId = "parakeet" | "canary";
|
|
3
3
|
type Env = Record<string, string | undefined>;
|
|
4
4
|
export declare function resolvePreferredOnnxModel(env?: Env): OnnxModelId | null;
|
|
5
5
|
export declare function isOnnxCliConfigured(model: OnnxModelId, env?: Env): boolean;
|
|
6
|
-
export declare function resolveOnnxProviderId(model: OnnxModelId): WhisperTranscriptionResult[
|
|
6
|
+
export declare function resolveOnnxProviderId(model: OnnxModelId): WhisperTranscriptionResult["provider"];
|
|
7
7
|
export declare function resolveOnnxCommand(model: OnnxModelId, env?: Env): string | null;
|
|
8
8
|
export declare function transcribeWithOnnxCli({ model, bytes, mediaType, filename, totalDurationSeconds, onProgress, env, }: {
|
|
9
9
|
model: OnnxModelId;
|
|
@@ -1,19 +1,22 @@
|
|
|
1
|
-
import type { WhisperProgressEvent, WhisperTranscriptionResult } from
|
|
1
|
+
import type { WhisperProgressEvent, WhisperTranscriptionResult } from "./types.js";
|
|
2
2
|
type Env = Record<string, string | undefined>;
|
|
3
|
-
export declare function transcribeMediaWithWhisper({ bytes, mediaType, filename, openaiApiKey, falApiKey, totalDurationSeconds, onProgress, env, }: {
|
|
3
|
+
export declare function transcribeMediaWithWhisper({ bytes, mediaType, filename, groqApiKey, skipGroq, openaiApiKey, falApiKey, totalDurationSeconds, onProgress, env, }: {
|
|
4
4
|
bytes: Uint8Array;
|
|
5
5
|
mediaType: string;
|
|
6
6
|
filename: string | null;
|
|
7
|
+
groqApiKey: string | null;
|
|
8
|
+
skipGroq?: boolean;
|
|
7
9
|
openaiApiKey: string | null;
|
|
8
10
|
falApiKey: string | null;
|
|
9
11
|
totalDurationSeconds?: number | null;
|
|
10
12
|
onProgress?: ((event: WhisperProgressEvent) => void) | null;
|
|
11
13
|
env?: Env;
|
|
12
14
|
}): Promise<WhisperTranscriptionResult>;
|
|
13
|
-
export declare function transcribeMediaFileWithWhisper({ filePath, mediaType, filename, openaiApiKey, falApiKey, segmentSeconds, totalDurationSeconds, onProgress, env, }: {
|
|
15
|
+
export declare function transcribeMediaFileWithWhisper({ filePath, mediaType, filename, groqApiKey, openaiApiKey, falApiKey, segmentSeconds, totalDurationSeconds, onProgress, env, }: {
|
|
14
16
|
filePath: string;
|
|
15
17
|
mediaType: string;
|
|
16
18
|
filename: string | null;
|
|
19
|
+
groqApiKey: string | null;
|
|
17
20
|
openaiApiKey: string | null;
|
|
18
21
|
falApiKey: string | null;
|
|
19
22
|
segmentSeconds?: number;
|
|
@@ -1,2 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
type Env = Record<string, string | undefined>;
|
|
2
|
+
export declare function transcribeWithOpenAi(bytes: Uint8Array, mediaType: string, filename: string | null, apiKey: string, options?: {
|
|
3
|
+
baseUrl?: string | null;
|
|
4
|
+
env?: Env;
|
|
5
|
+
}): Promise<string | null>;
|
|
2
6
|
export declare function shouldRetryOpenAiViaFfmpeg(error: Error): boolean;
|
|
7
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type TranscriptionProvider =
|
|
1
|
+
export type TranscriptionProvider = "groq" | "openai" | "fal" | "whisper.cpp" | "onnx-parakeet" | "onnx-canary";
|
|
2
2
|
export type WhisperTranscriptionResult = {
|
|
3
3
|
text: string | null;
|
|
4
4
|
provider: TranscriptionProvider | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { WhisperProgressEvent, WhisperTranscriptionResult } from
|
|
1
|
+
import type { WhisperProgressEvent, WhisperTranscriptionResult } from "./types.js";
|
|
2
2
|
export declare function isWhisperCppReady(): Promise<boolean>;
|
|
3
3
|
export declare function resolveWhisperCppModelNameForDisplay(): Promise<string | null>;
|
|
4
4
|
export declare function transcribeWithWhisperCppFile({ filePath, mediaType, totalDurationSeconds, onProgress, }: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { MAX_OPENAI_UPLOAD_BYTES } from
|
|
2
|
-
export { transcribeMediaFileWithWhisper, transcribeMediaWithWhisper } from
|
|
3
|
-
export { isFfmpegAvailable, probeMediaDurationSecondsWithFfprobe } from
|
|
4
|
-
export type { TranscriptionProvider, WhisperProgressEvent, WhisperTranscriptionResult, } from
|
|
5
|
-
export { isWhisperCppReady, resolveWhisperCppModelNameForDisplay
|
|
1
|
+
export { MAX_OPENAI_UPLOAD_BYTES } from "./whisper/constants.js";
|
|
2
|
+
export { transcribeMediaFileWithWhisper, transcribeMediaWithWhisper } from "./whisper/core.js";
|
|
3
|
+
export { isFfmpegAvailable, probeMediaDurationSecondsWithFfprobe } from "./whisper/ffmpeg.js";
|
|
4
|
+
export type { TranscriptionProvider, WhisperProgressEvent, WhisperTranscriptionResult, } from "./whisper/types.js";
|
|
5
|
+
export { isWhisperCppReady, resolveWhisperCppModelNameForDisplay } from "./whisper/whisper-cpp.js";
|
package/package.json
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steipete/summarize-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.1",
|
|
4
4
|
"description": "Summarize core library (content extraction + prompts).",
|
|
5
|
+
"files": [
|
|
6
|
+
"dist",
|
|
7
|
+
"README.md"
|
|
8
|
+
],
|
|
5
9
|
"type": "module",
|
|
6
10
|
"main": "./dist/esm/index.js",
|
|
7
11
|
"module": "./dist/esm/index.js",
|
|
@@ -32,31 +36,27 @@
|
|
|
32
36
|
"import": "./dist/esm/language.js"
|
|
33
37
|
}
|
|
34
38
|
},
|
|
35
|
-
"files": [
|
|
36
|
-
"dist",
|
|
37
|
-
"README.md"
|
|
38
|
-
],
|
|
39
|
-
"engines": {
|
|
40
|
-
"node": ">=22"
|
|
41
|
-
},
|
|
42
39
|
"dependencies": {
|
|
43
|
-
"@fal-ai/client": "^1.
|
|
40
|
+
"@fal-ai/client": "^1.9.1",
|
|
44
41
|
"@mozilla/readability": "0.6.0",
|
|
45
|
-
"cheerio": "^1.
|
|
42
|
+
"cheerio": "^1.2.0",
|
|
46
43
|
"es-toolkit": "^1.44.0",
|
|
47
|
-
"jsdom": "
|
|
44
|
+
"jsdom": "28.0.0",
|
|
48
45
|
"sanitize-html": "^2.17.0"
|
|
49
46
|
},
|
|
50
47
|
"devDependencies": {
|
|
51
48
|
"@types/jsdom": "^27.0.0",
|
|
52
|
-
"@types/node": "^25.
|
|
49
|
+
"@types/node": "^25.2.3",
|
|
53
50
|
"@types/sanitize-html": "^2.16.0",
|
|
54
51
|
"rimraf": "^6.1.2",
|
|
55
52
|
"typescript": "^5.9.3"
|
|
56
53
|
},
|
|
54
|
+
"engines": {
|
|
55
|
+
"node": ">=22"
|
|
56
|
+
},
|
|
57
57
|
"scripts": {
|
|
58
|
-
"clean": "rimraf dist",
|
|
59
58
|
"build": "pnpm clean && tsc -p tsconfig.build.json",
|
|
59
|
+
"clean": "rimraf dist",
|
|
60
60
|
"typecheck": "tsc -p tsconfig.build.json --noEmit"
|
|
61
61
|
}
|
|
62
62
|
}
|