Skip to content

@codesoul-co/hypha-tools / common-tools

模块用法

用于使用该功能边界的公共契约与操作。Common tools 模块公开 6 常量、5 函数、2 接口、4 类型。

从包入口导入

ts
import {
  COMMON_TOOL_LIMITS,
  commonUtilityToolSpecs,
  hashUtilityToolSpec,
  jsonUtilityToolSpec,
  textUtilityToolSpec,
  timeUtilityToolSpec,
  executeHashUtility,
  executeJsonUtility,
} from '@codesoul-co/hypha-tools';

import type {
  JsonObject,
  TextUtilityInput,
  HashUtilityInput,
  JsonUtilityInput,
  JsonValue,
  TimeUtilityInput,
} from '@codesoul-co/hypha-tools';

// 完整导出列表见下方。

使用要点

  • 6 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 5 个函数是该模块的直接操作入口;每个 overload 的必需/可选参数与返回类型均在下方列出。
  • 6 个常量/枚举提供稳定值、Schema、Definition 或默认配置;应复用这些导出,避免在应用中复制内部值。

公共导出

Symbol种类签名说明
COMMON_TOOL_LIMITS常量const COMMON_TOOL_LIMITS: Readonly<{ maxTextCharacters: 1000000; maxJsonDepth: 64; maxJsonNodes: 100000; maxPointerSegments: 128; maxMatches: 1000; maxQueryCharacters: 4096; }>common-tools 模块导出的 COMMON TOOL LIMITS 常量。
commonUtilityToolSpecs常量const commonUtilityToolSpecs: readonly [ToolSpec, ToolSpec, ToolSpec, ToolSpec]common-tools 模块导出的 Common Utility Tool Specs 常量。
hashUtilityToolSpec常量const hashUtilityToolSpec: ToolSpeccommon-tools 模块导出的 Hash Utility Tool Spec 常量。
jsonUtilityToolSpec常量const jsonUtilityToolSpec: ToolSpeccommon-tools 模块导出的 JSON Utility Tool Spec 常量。
textUtilityToolSpec常量const textUtilityToolSpec: ToolSpeccommon-tools 模块导出的 Text Utility Tool Spec 常量。
timeUtilityToolSpec常量const timeUtilityToolSpec: ToolSpeccommon-tools 模块导出的 Time Utility Tool Spec 常量。
executeHashUtility函数executeHashUtility(input: HashUtilityInput): Record<string, unknown>Execute Hash Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。
executeJsonUtility函数executeJsonUtility(input: JsonUtilityInput): Record<string, unknown>Execute JSON Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。
executeTextUtility函数executeTextUtility(input: TextUtilityInput): Record<string, unknown>Execute Text Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。
executeTimeUtility函数executeTimeUtility(input: TimeUtilityInput, now?: () => Date): Record<string, unknown>Execute Time Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。
sanitizeJsonValue函数sanitizeJsonValue(value: unknown): JsonValueSanitize JSON Value 函数,提供 1 个公开调用签名;参数与返回类型见下表。
JsonObject接口interface JsonObjectJSON Object 接口,共包含 0 个公开字段或方法。
TextUtilityInput接口interface TextUtilityInputText Utility Input 接口,共包含 11 个公开字段或方法。
HashUtilityInput类型type HashUtilityInput = { operation: 'sha256_text'; text: string; } | { operation: 'sha256_json'; value: unknown; }Hash Utility Input 公共类型别名;完整类型表达式见声明。
JsonUtilityInput类型type JsonUtilityInput = { operation: 'parse'; text: string; } | { operation: 'stringify'; value: unknown; pretty?: boolean; } | { operation: 'get'; value: unknown; pointer: string; } | { operation: 'keys'; value: unknown; } | { operation: 'validate'; value: unknown; schema: JsonSchema; }JSON Utility Input 公共类型别名;完整类型表达式见声明。
JsonValue类型type JsonValue = null | boolean | number | string | JsonValue[] | JsonObjectJSON Value 公共类型别名;完整类型表达式见声明。
TimeUtilityInput类型type TimeUtilityInput = { operation: 'now'; } | { operation: 'parse'; value: string; } | { operation: 'format'; value: string | number; timeZone?: string; locale?: string; }Time Utility Input 公共类型别名;完整类型表达式见声明。

COMMON_TOOL_LIMITS

common-tools 模块导出的 COMMON TOOL LIMITS 常量。

  • 种类: 常量
  • 导入: import { COMMON_TOOL_LIMITS } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const COMMON_TOOL_LIMITS: Readonly<{ maxTextCharacters: 1000000; maxJsonDepth: 64; maxJsonNodes: 100000; maxPointerSegments: 128; maxMatches: 1000; maxQueryCharacters: 4096; }>;

commonUtilityToolSpecs

common-tools 模块导出的 Common Utility Tool Specs 常量。

  • 种类: 常量
  • 导入: import { commonUtilityToolSpecs } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const commonUtilityToolSpecs: readonly [ToolSpec, ToolSpec, ToolSpec, ToolSpec];

hashUtilityToolSpec

common-tools 模块导出的 Hash Utility Tool Spec 常量。

  • 种类: 常量
  • 导入: import { hashUtilityToolSpec } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const hashUtilityToolSpec: ToolSpec;

jsonUtilityToolSpec

common-tools 模块导出的 JSON Utility Tool Spec 常量。

  • 种类: 常量
  • 导入: import { jsonUtilityToolSpec } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const jsonUtilityToolSpec: ToolSpec;

textUtilityToolSpec

common-tools 模块导出的 Text Utility Tool Spec 常量。

  • 种类: 常量
  • 导入: import { textUtilityToolSpec } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const textUtilityToolSpec: ToolSpec;

timeUtilityToolSpec

common-tools 模块导出的 Time Utility Tool Spec 常量。

  • 种类: 常量
  • 导入: import { timeUtilityToolSpec } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare const timeUtilityToolSpec: ToolSpec;

executeHashUtility

Execute Hash Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { executeHashUtility } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare function executeHashUtility(input: HashUtilityInput): Record<string, unknown>;

调用签名

text
executeHashUtility(input: HashUtilityInput): Record<string, unknown>

参数

参数类型必需说明
inputHashUtilityInput必需参数;接受的值由类型列定义。

返回值

  • 类型: Record<string, unknown>
  • 说明: 返回值契约由上述类型定义。

executeJsonUtility

Execute JSON Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { executeJsonUtility } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare function executeJsonUtility(input: JsonUtilityInput): Record<string, unknown>;

调用签名

text
executeJsonUtility(input: JsonUtilityInput): Record<string, unknown>

参数

参数类型必需说明
inputJsonUtilityInput必需参数;接受的值由类型列定义。

返回值

  • 类型: Record<string, unknown>
  • 说明: 返回值契约由上述类型定义。

executeTextUtility

Execute Text Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { executeTextUtility } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare function executeTextUtility(input: TextUtilityInput): Record<string, unknown>;

调用签名

text
executeTextUtility(input: TextUtilityInput): Record<string, unknown>

参数

参数类型必需说明
inputTextUtilityInput必需参数;接受的值由类型列定义。

返回值

  • 类型: Record<string, unknown>
  • 说明: 返回值契约由上述类型定义。

executeTimeUtility

Execute Time Utility 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { executeTimeUtility } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare function executeTimeUtility(input: TimeUtilityInput, now?: () => Date): Record<string, unknown>;

调用签名

text
executeTimeUtility(input: TimeUtilityInput, now?: () => Date): Record<string, unknown>

参数

参数类型必需说明
inputTimeUtilityInput必需参数;接受的值由类型列定义。
now() => Date可选参数;接受的值由类型列定义。

返回值

  • 类型: Record<string, unknown>
  • 说明: 返回值契约由上述类型定义。

sanitizeJsonValue

Sanitize JSON Value 函数,提供 1 个公开调用签名;参数与返回类型见下表。

  • 种类: 函数
  • 导入: import { sanitizeJsonValue } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export declare function sanitizeJsonValue(value: unknown): JsonValue;

调用签名

text
sanitizeJsonValue(value: unknown): JsonValue

参数

参数类型必需说明
valueunknown必需参数;接受的值由类型列定义。

返回值

  • 类型: JsonValue
  • 说明: 返回值契约由上述类型定义。

JsonObject

JSON Object 接口,共包含 0 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { JsonObject } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export interface JsonObject {
    [key: string]: JsonValue;
}

TextUtilityInput

Text Utility Input 接口,共包含 11 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { TextUtilityInput } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export interface TextUtilityInput {
    operation: 'length' | 'line_select' | 'literal_find' | 'literal_replace' | 'slice' | 'normalize_whitespace' | 'split' | 'join';
    text?: string;
    parts?: string[];
    separator?: string;
    start?: number;
    end?: number;
    query?: string;
    replacement?: string;
    caseSensitive?: boolean;
    maxResults?: number;
    mode?: 'spaces' | 'lines';
}

契约成员

成员种类签名说明
caseSensitive属性caseSensitive?: boolean公开属性;类型、只读和可选状态以签名列为准。
end属性end?: number公开属性;类型、只读和可选状态以签名列为准。
maxResults属性maxResults?: number公开属性;类型、只读和可选状态以签名列为准。
mode属性mode?: "spaces" | "lines"公开属性;类型、只读和可选状态以签名列为准。
operation属性operation: "length" | "line_select" | "literal_find" | "literal_replace" | "slice" | "normalize_whitespace" | "split" | "join"公开属性;类型、只读和可选状态以签名列为准。
parts属性parts?: string[]公开属性;类型、只读和可选状态以签名列为准。
query属性query?: string公开属性;类型、只读和可选状态以签名列为准。
replacement属性replacement?: string公开属性;类型、只读和可选状态以签名列为准。
separator属性separator?: string公开属性;类型、只读和可选状态以签名列为准。
start属性start?: number公开属性;类型、只读和可选状态以签名列为准。
text属性text?: string公开属性;类型、只读和可选状态以签名列为准。

HashUtilityInput

Hash Utility Input 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { HashUtilityInput } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export type HashUtilityInput = {
    operation: 'sha256_text';
    text: string;
} | {
    operation: 'sha256_json';
    value: unknown;
};

JsonUtilityInput

JSON Utility Input 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { JsonUtilityInput } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export type JsonUtilityInput = {
    operation: 'parse';
    text: string;
} | {
    operation: 'stringify';
    value: unknown;
    pretty?: boolean;
} | {
    operation: 'get';
    value: unknown;
    pointer: string;
} | {
    operation: 'keys';
    value: unknown;
} | {
    operation: 'validate';
    value: unknown;
    schema: JsonSchema;
};

JsonValue

JSON Value 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { JsonValue } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export type JsonValue = null | boolean | number | string | JsonValue[] | JsonObject;

TimeUtilityInput

Time Utility Input 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { TimeUtilityInput } from '@codesoul-co/hypha-tools';
  • 源码模块: common-tools

声明

text
export type TimeUtilityInput = {
    operation: 'now';
} | {
    operation: 'parse';
    value: string;
} | {
    operation: 'format';
    value: string | number;
    timeZone?: string;
    locale?: string;
};