@isdk/ai-tool 0.5.2 → 0.5.3
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/dist/funcs.js +1 -1
- package/dist/index.js +1 -1
- package/docs/README.md +250 -0
- package/docs/_media/CONTRIBUTING.md +18 -0
- package/docs/_media/LICENSE-MIT +22 -0
- package/docs/classes/AbortError.md +366 -0
- package/docs/classes/AlreadyExistsError.md +346 -0
- package/docs/classes/BaseError.md +359 -0
- package/docs/classes/BinarySemaphore.md +418 -0
- package/docs/classes/CancelableAbility.md +467 -0
- package/docs/classes/ClientTools.md +2715 -0
- package/docs/classes/CommonError.md +377 -0
- package/docs/classes/ConfigFile.md +353 -0
- package/docs/classes/EnvPromptTemplate.md +1158 -0
- package/docs/classes/EventClient.md +3149 -0
- package/docs/classes/EventEmitter.md +299 -0
- package/docs/classes/EventServer.md +3175 -0
- package/docs/classes/EventToolFunc.md +2557 -0
- package/docs/classes/FStringPromptTemplate.md +1158 -0
- package/docs/classes/FewShotPromptTemplate.md +1180 -0
- package/docs/classes/GolangPromptTemplate.md +1158 -0
- package/docs/classes/HFEnvironment.md +184 -0
- package/docs/classes/HFInterpreter.md +77 -0
- package/docs/classes/HFTemplate.md +67 -0
- package/docs/classes/HfPromptTemplate.md +1158 -0
- package/docs/classes/IntSet.md +216 -0
- package/docs/classes/LRUCache.md +601 -0
- package/docs/classes/NotFoundError.md +346 -0
- package/docs/classes/NotImplementationError.md +346 -0
- package/docs/classes/PromptExampleSelector.md +195 -0
- package/docs/classes/PromptTemplate.md +1088 -0
- package/docs/classes/ReadableStreamError.md +366 -0
- package/docs/classes/ResClientTools.md +2431 -0
- package/docs/classes/ResServerTools.md +2407 -0
- package/docs/classes/SSEChannel.md +270 -0
- package/docs/classes/Semaphore.md +538 -0
- package/docs/classes/ServerTools.md +2623 -0
- package/docs/classes/SignalGate.md +182 -0
- package/docs/classes/TaskAbortController.md +131 -0
- package/docs/classes/ToolFunc.md +2177 -0
- package/docs/classes/YamlTypeBaseObject.md +31 -0
- package/docs/enumerations/AsyncFeatureBits.md +33 -0
- package/docs/enumerations/AsyncFeatures.md +33 -0
- package/docs/enumerations/ErrorCode.md +177 -0
- package/docs/enumerations/HashAlgorithm.md +97 -0
- package/docs/functions/AIArgProcessor.md +33 -0
- package/docs/functions/AIStream.md +52 -0
- package/docs/functions/ChoiceArgProcessor.md +33 -0
- package/docs/functions/ObjectArgsToArgsInfo.md +29 -0
- package/docs/functions/RateLimit.md +37 -0
- package/docs/functions/TemplateArgProcessor.md +33 -0
- package/docs/functions/assignDirs.md +33 -0
- package/docs/functions/backendEventable.md +29 -0
- package/docs/functions/beforeShutdown.md +29 -0
- package/docs/functions/canonicalize.md +21 -0
- package/docs/functions/completeSentences.md +25 -0
- package/docs/functions/concatText.md +25 -0
- package/docs/functions/countLLMTokens.md +25 -0
- package/docs/functions/countRegexMatches.md +35 -0
- package/docs/functions/createAbilityInjector.md +119 -0
- package/docs/functions/createCallbacksTransformer.md +49 -0
- package/docs/functions/createEmptyReadableStream.md +21 -0
- package/docs/functions/createEndWithRepetitionDetector.md +31 -0
- package/docs/functions/createError.md +39 -0
- package/docs/functions/createEventStreamTransformer.md +33 -0
- package/docs/functions/createHfValueFunc.md +31 -0
- package/docs/functions/createLRUCache.md +25 -0
- package/docs/functions/createYamlObjectTag.md +25 -0
- package/docs/functions/dateToText.md +25 -0
- package/docs/functions/decodeCharset.md +25 -0
- package/docs/functions/detectCharset.md +25 -0
- package/docs/functions/encodeLLMTokens.md +25 -0
- package/docs/functions/ensureQuoted.md +25 -0
- package/docs/functions/eventable.md +82 -0
- package/docs/functions/expandConfig.md +25 -0
- package/docs/functions/expandEnv.md +40 -0
- package/docs/functions/expandObjEnv.md +58 -0
- package/docs/functions/expandPath.md +25 -0
- package/docs/functions/extNameLevel.md +43 -0
- package/docs/functions/fileIsExists.md +34 -0
- package/docs/functions/filenameReservedRegex.md +20 -0
- package/docs/functions/filterValidFnScope.md +21 -0
- package/docs/functions/findIndexNonEmptyFrom.md +25 -0
- package/docs/functions/findPort.md +25 -0
- package/docs/functions/formatISO.md +69 -0
- package/docs/functions/formatTextWithSpace.md +63 -0
- package/docs/functions/getAllEnumKeys.md +31 -0
- package/docs/functions/getConfigFileNames.md +25 -0
- package/docs/functions/getConfigs.md +25 -0
- package/docs/functions/getEnvVairables.md +21 -0
- package/docs/functions/getFileMetaInfo.md +21 -0
- package/docs/functions/getHashAlgoBySize.md +21 -0
- package/docs/functions/getKeysPath.md +38 -0
- package/docs/functions/getLLMTokenizer.md +21 -0
- package/docs/functions/getMultiLevelExtname.md +33 -0
- package/docs/functions/getPackageDir.md +39 -0
- package/docs/functions/getRealFilepath.md +34 -0
- package/docs/functions/getResponseErrorReadableStream.md +21 -0
- package/docs/functions/getXDGConfigs.md +37 -0
- package/docs/functions/hasDirectoryIn.md +40 -0
- package/docs/functions/hash.md +25 -0
- package/docs/functions/hashFile.md +25 -0
- package/docs/functions/hashStream.md +25 -0
- package/docs/functions/hfParse.md +24 -0
- package/docs/functions/hfTokenize.md +27 -0
- package/docs/functions/initShutdown.md +15 -0
- package/docs/functions/interpolateEnv.md +29 -0
- package/docs/functions/interpolateFString.md +29 -0
- package/docs/functions/interpolateGolangTemplate.md +35 -0
- package/docs/functions/isLangUsingSpaces.md +21 -0
- package/docs/functions/isListItemString.md +21 -0
- package/docs/functions/isModelNameMatched.md +47 -0
- package/docs/functions/isPunctuationChar.md +36 -0
- package/docs/functions/isQuoted.md +21 -0
- package/docs/functions/isRegExp.md +21 -0
- package/docs/functions/isSameString.md +36 -0
- package/docs/functions/isSectionString.md +25 -0
- package/docs/functions/isSentenceEnding.md +21 -0
- package/docs/functions/isSepLineString.md +21 -0
- package/docs/functions/isStrWrapped.md +25 -0
- package/docs/functions/isSubdirectory.md +41 -0
- package/docs/functions/isTitleString.md +25 -0
- package/docs/functions/isValidFilename.md +38 -0
- package/docs/functions/isValidFilepath.md +27 -0
- package/docs/functions/isWebStream.md +21 -0
- package/docs/functions/jsonFilterToWhere.md +47 -0
- package/docs/functions/jsonToMarkdownStr.md +39 -0
- package/docs/functions/loadAIConfig.md +21 -0
- package/docs/functions/loadConfig.md +25 -0
- package/docs/functions/loadConfigFile.md +25 -0
- package/docs/functions/loadFileFromPaths.md +64 -0
- package/docs/functions/loadTextFromPaths.md +37 -0
- package/docs/functions/lrucache.md +35 -0
- package/docs/functions/makeToolFuncCancelable.md +29 -0
- package/docs/functions/matchUrlProtocol.md +48 -0
- package/docs/functions/memoize.md +29 -0
- package/docs/functions/messagesToText.md +21 -0
- package/docs/functions/paramsSizeToScaleStr.md +34 -0
- package/docs/functions/parseCommand.md +29 -0
- package/docs/functions/parseDateFormat.md +362 -0
- package/docs/functions/parseFString.md +26 -0
- package/docs/functions/parseISO.md +70 -0
- package/docs/functions/parseJsJson.md +40 -0
- package/docs/functions/parseJsJsonSimpleSync.md +25 -0
- package/docs/functions/parseObjectArgInfo.md +33 -0
- package/docs/functions/parseObjectArgumentInfos.md +29 -0
- package/docs/functions/parseObjectArguments.md +72 -0
- package/docs/functions/parseObjectArgumentsAsArgInfos.md +46 -0
- package/docs/functions/parseYaml.md +25 -0
- package/docs/functions/quoteStr.md +21 -0
- package/docs/functions/reControlCharsRegex.md +19 -0
- package/docs/functions/readFilenamesRecursiveSync.md +53 -0
- package/docs/functions/readTextFileChunks.md +53 -0
- package/docs/functions/readTextFileChunksEx.md +25 -0
- package/docs/functions/readableFromAsyncIterable.md +28 -0
- package/docs/functions/registerCoreTools.md +15 -0
- package/docs/functions/registerYamlTag.md +21 -0
- package/docs/functions/removeMarkdownBold.md +25 -0
- package/docs/functions/removeMarkdownBoldAndItalic.md +25 -0
- package/docs/functions/removeMarkdownItalic.md +25 -0
- package/docs/functions/replaceWithPlaceholder.md +43 -0
- package/docs/functions/restoreFromPlacehoders.md +49 -0
- package/docs/functions/sanitizeFilename.md +39 -0
- package/docs/functions/sanitizeFilepath.md +33 -0
- package/docs/functions/saveConfigFile.md +29 -0
- package/docs/functions/scaleStrToParamsSize.md +27 -0
- package/docs/functions/shutdown.md +33 -0
- package/docs/functions/simplifyObjectArguments.md +21 -0
- package/docs/functions/sortedValues.md +25 -0
- package/docs/functions/splitChunks.md +25 -0
- package/docs/functions/splitParagraph.md +34 -0
- package/docs/functions/splitSentence.md +39 -0
- package/docs/functions/stringifyYaml.md +25 -0
- package/docs/functions/stripConsoleColor.md +21 -0
- package/docs/functions/textToDate.md +25 -0
- package/docs/functions/throwError.md +41 -0
- package/docs/functions/toDate.md +74 -0
- package/docs/functions/toDateTime.md +21 -0
- package/docs/functions/toRegExp.md +34 -0
- package/docs/functions/trimStartOfStreamHelper.md +41 -0
- package/docs/functions/truncTo.md +51 -0
- package/docs/functions/truncateByToken.md +25 -0
- package/docs/functions/truncateToTokenLimit.md +46 -0
- package/docs/functions/truncateToTokenLimitEx.md +25 -0
- package/docs/functions/uuid.md +25 -0
- package/docs/functions/uuidParse.md +21 -0
- package/docs/functions/uuidStringify.md +25 -0
- package/docs/functions/uuidValidate.md +21 -0
- package/docs/functions/uuidVersion.md +21 -0
- package/docs/functions/uuidv1.md +55 -0
- package/docs/functions/uuidv4.md +55 -0
- package/docs/functions/uuidv5.md +63 -0
- package/docs/functions/wait.md +21 -0
- package/docs/functions/wrapEventEmitter.md +27 -0
- package/docs/functions/xxhash.md +29 -0
- package/docs/functions/xxhash32.md +25 -0
- package/docs/functions/xxhash64.md +25 -0
- package/docs/functions/xxhashAsStr.md +29 -0
- package/docs/globals.md +329 -0
- package/docs/interfaces/AIChatAssistantMessageParam.md +129 -0
- package/docs/interfaces/AIChatContentPartImage.md +29 -0
- package/docs/interfaces/AIChatContentPartText.md +25 -0
- package/docs/interfaces/AIChatMessageParamBase.md +68 -0
- package/docs/interfaces/AIChatMessageToolCall.md +41 -0
- package/docs/interfaces/AIChatSystemMessageParam.md +105 -0
- package/docs/interfaces/AIChatToolChoiceFuncObject.md +37 -0
- package/docs/interfaces/AIChatToolChoiceObject.md +25 -0
- package/docs/interfaces/AIChatToolFunc.md +41 -0
- package/docs/interfaces/AIChatToolFuncParam.md +37 -0
- package/docs/interfaces/AIChatToolMessageParam.md +113 -0
- package/docs/interfaces/AIChatToolParam.md +25 -0
- package/docs/interfaces/AIChatToolTypeObject.md +17 -0
- package/docs/interfaces/AIChatUserMessageParam.md +137 -0
- package/docs/interfaces/AIChoiceConfig.md +65 -0
- package/docs/interfaces/AIResult.md +65 -0
- package/docs/interfaces/AIStreamParser.md +43 -0
- package/docs/interfaces/AIStreamParserOptions.md +21 -0
- package/docs/interfaces/BaseFunc.md +145 -0
- package/docs/interfaces/BaseFuncItem.md +93 -0
- package/docs/interfaces/BinarySemaphoreAcquireOptions.md +25 -0
- package/docs/interfaces/BinarySemaphoreOptions.md +57 -0
- package/docs/interfaces/BinarySemaphoreReleaseOptions.md +25 -0
- package/docs/interfaces/BinarySemaphoreReleaserFunc.md +37 -0
- package/docs/interfaces/CancelableAbilityOptions.md +113 -0
- package/docs/interfaces/ClientFuncItem.md +163 -0
- package/docs/interfaces/DotenvExpandOptions.md +43 -0
- package/docs/interfaces/DotenvExpandOutput.md +25 -0
- package/docs/interfaces/DotenvParseInput.md +13 -0
- package/docs/interfaces/DotenvParseOutput.md +13 -0
- package/docs/interfaces/DotenvPopulateInput.md +13 -0
- package/docs/interfaces/EventClientFuncParams.md +51 -0
- package/docs/interfaces/EventServerFuncParams.md +67 -0
- package/docs/interfaces/FewShotPromptTemplateOptions.md +147 -0
- package/docs/interfaces/FuncItem.md +131 -0
- package/docs/interfaces/FuncParam.md +61 -0
- package/docs/interfaces/FuncParams.md +13 -0
- package/docs/interfaces/Funcs.md +13 -0
- package/docs/interfaces/HashAlgoParams.md +33 -0
- package/docs/interfaces/IFileMetaInfo.md +65 -0
- package/docs/interfaces/IReadTextFileChunksOptions.md +143 -0
- package/docs/interfaces/ITruncateToTokenLimitOptions.md +99 -0
- package/docs/interfaces/JsonFilter.md +13 -0
- package/docs/interfaces/ParseObjectArgumentOptions.md +89 -0
- package/docs/interfaces/PromptExampleSelectorOptions.md +34 -0
- package/docs/interfaces/PromptTemplateOptions.md +65 -0
- package/docs/interfaces/RemoteFuncItem.md +152 -0
- package/docs/interfaces/ReplacePlacehoderOptions.md +41 -0
- package/docs/interfaces/ResClientFuncParams.md +37 -0
- package/docs/interfaces/ResServerFuncParams.md +69 -0
- package/docs/interfaces/SanitizeFilenameOptions.md +25 -0
- package/docs/interfaces/SectionStringOptions.md +25 -0
- package/docs/interfaces/SemaphoreOptions.md +89 -0
- package/docs/interfaces/SemaphoreTaskItem.md +73 -0
- package/docs/interfaces/ServerFuncItem.md +171 -0
- package/docs/interfaces/ServerFuncParams.md +35 -0
- package/docs/interfaces/SplitSentenceOptions.md +41 -0
- package/docs/interfaces/StreamCallbacksAndOptions.md +99 -0
- package/docs/interfaces/TaskAbortControllers.md +13 -0
- package/docs/interfaces/TaskPromise.md +138 -0
- package/docs/interfaces/ToolFuncPackage.md +47 -0
- package/docs/namespaces/EventStates/README.md +14 -0
- package/docs/namespaces/EventStates/variables/ABORT.md +11 -0
- package/docs/namespaces/EventStates/variables/CONTINUE.md +11 -0
- package/docs/namespaces/EventStates/variables/DONE.md +11 -0
- package/docs/namespaces/EventStates/variables/STOPPED.md +11 -0
- package/docs/namespaces/uuidv5/README.md +12 -0
- package/docs/namespaces/uuidv5/variables/DNS.md +11 -0
- package/docs/namespaces/uuidv5/variables/URL.md +11 -0
- package/docs/type-aliases/AIChatContentPart.md +11 -0
- package/docs/type-aliases/AIChatMessageParam.md +11 -0
- package/docs/type-aliases/AIChatRole.md +11 -0
- package/docs/type-aliases/AIChatToolChoiceParam.md +11 -0
- package/docs/type-aliases/AIMessageType.md +11 -0
- package/docs/type-aliases/AIModelNameRule.md +11 -0
- package/docs/type-aliases/AIModelNameRuleFn.md +21 -0
- package/docs/type-aliases/AIModelNameRules.md +11 -0
- package/docs/type-aliases/AITextGenerationFinishReason.md +11 -0
- package/docs/type-aliases/ActionName.md +11 -0
- package/docs/type-aliases/AsyncTaskId.md +11 -0
- package/docs/type-aliases/BeforeShutdownListener.md +23 -0
- package/docs/type-aliases/EventErrorListenerFn.md +33 -0
- package/docs/type-aliases/EventListenerFn.md +29 -0
- package/docs/type-aliases/FStringPromptTemplateNode.md +14 -0
- package/docs/type-aliases/FuncParamType.md +11 -0
- package/docs/type-aliases/PromptExamples.md +15 -0
- package/docs/type-aliases/PromptTemplateType.md +11 -0
- package/docs/type-aliases/PromptType.md +11 -0
- package/docs/type-aliases/SemaphoreIsReadyFuncType.md +15 -0
- package/docs/type-aliases/TFunc.md +25 -0
- package/docs/variables/AIChatRoles.md +11 -0
- package/docs/variables/AIMessageTypes.md +11 -0
- package/docs/variables/AITextGenerationFinishReasons.md +11 -0
- package/docs/variables/AbortErrorCode.md +11 -0
- package/docs/variables/ActionNames.md +11 -0
- package/docs/variables/AlreadyExistsErrorCode.md +11 -0
- package/docs/variables/ClientToolFuncSchema.md +101 -0
- package/docs/variables/DEFAULT_CONFIG_NAME.md +11 -0
- package/docs/variables/DefaultAsyncSemaphoreCapacity.md +11 -0
- package/docs/variables/EventBusName.md +11 -0
- package/docs/variables/EventName.md +11 -0
- package/docs/variables/FilenameReservedRegex.md +14 -0
- package/docs/variables/HFBuiltins.md +122 -0
- package/docs/variables/InternalErrorCode.md +11 -0
- package/docs/variables/LLM_TOKENIZER_NAMES.md +81 -0
- package/docs/variables/LLM_TOKENIZER_NAMES_MAP.md +11 -0
- package/docs/variables/NotFoundErrorCode.md +11 -0
- package/docs/variables/NotImplementedErrorCode.md +11 -0
- package/docs/variables/PASSING_SCORE.md +11 -0
- package/docs/variables/PromptTemplateTypes.md +11 -0
- package/docs/variables/PromptTypes.md +14 -0
- package/docs/variables/RStreamErrCode.md +11 -0
- package/docs/variables/RemoteToolFuncSchema.md +101 -0
- package/docs/variables/ResponseRStreamErrCode.md +11 -0
- package/docs/variables/SHUTDOWN_SIGNALS.md +17 -0
- package/docs/variables/SSEChannelAlreadyClosedErrCode.md +11 -0
- package/docs/variables/SecondaryCache.md +11 -0
- package/docs/variables/ServerToolFuncSchema.md +101 -0
- package/docs/variables/ToolAsyncCancelableBit.md +11 -0
- package/docs/variables/ToolAsyncMultiTaskBit.md +11 -0
- package/docs/variables/ToolAsyncPriorityBit.md +11 -0
- package/docs/variables/ToolFuncSchema.md +133 -0
- package/docs/variables/WindowsReservedNameRegex.md +13 -0
- package/docs/variables/base32768.md +11 -0
- package/docs/variables/defaultTemplateFormat.md +11 -0
- package/docs/variables/event.md +11 -0
- package/docs/variables/eventClient.md +11 -0
- package/docs/variables/eventServer.md +11 -0
- package/docs/variables/lrucache.md +11 -0
- package/docs/variables/mimeType.md +11 -0
- package/docs/variables/uuidNIL.md +11 -0
- package/package.json +2 -2
package/dist/funcs.js
CHANGED
|
@@ -45,7 +45,7 @@ __export(funcs_exports, {
|
|
|
45
45
|
});
|
|
46
46
|
module.exports = __toCommonJS(funcs_exports);
|
|
47
47
|
|
|
48
|
-
// ../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.48.1_@types+node@22.10.5__jiti@2.4.2_postcss@8.5.
|
|
48
|
+
// ../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.48.1_@types+node@22.10.5__jiti@2.4.2_postcss@8.5._0f4774493d0d97a075574d2334863525/node_modules/tsup/assets/cjs_shims.js
|
|
49
49
|
var getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.src || new URL("main.js", document.baseURI).href;
|
|
50
50
|
var importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
|
|
51
51
|
|
package/dist/index.js
CHANGED
|
@@ -268,7 +268,7 @@ __export(src_exports, {
|
|
|
268
268
|
});
|
|
269
269
|
module.exports = __toCommonJS(src_exports);
|
|
270
270
|
|
|
271
|
-
// ../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.48.1_@types+node@22.10.5__jiti@2.4.2_postcss@8.5.
|
|
271
|
+
// ../../node_modules/.pnpm/tsup@8.3.5_@microsoft+api-extractor@7.48.1_@types+node@22.10.5__jiti@2.4.2_postcss@8.5._0f4774493d0d97a075574d2334863525/node_modules/tsup/assets/cjs_shims.js
|
|
272
272
|
var getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.src || new URL("main.js", document.baseURI).href;
|
|
273
273
|
var importMetaUrl = /* @__PURE__ */ getImportMetaUrl();
|
|
274
274
|
|
package/docs/README.md
ADDED
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
**@isdk/ai-tool**
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
# @isdk/ai-tool
|
|
6
|
+
|
|
7
|
+
A library for abstracting AI utility functions (`ToolFunc`), providing a series of convenient helper functions.
|
|
8
|
+
|
|
9
|
+
**Note:** All `ToolFunc` parameters are object-based, not positional.
|
|
10
|
+
|
|
11
|
+
## Installation
|
|
12
|
+
|
|
13
|
+
1. Install the package:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @isdk/ai-tool
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
## ToolFunc
|
|
22
|
+
|
|
23
|
+
Register ordinary functions as `ToolFunc`.
|
|
24
|
+
|
|
25
|
+
### Example
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
import { ToolFunc } from '@isdk/ai-tool';
|
|
29
|
+
|
|
30
|
+
// Register a function directly
|
|
31
|
+
ToolFunc.register({
|
|
32
|
+
name: 'add',
|
|
33
|
+
description: 'Return the sum of a and b',
|
|
34
|
+
params: { a: { type: 'number' }, b: { type: 'number' } },
|
|
35
|
+
result: 'number',
|
|
36
|
+
func: ({ a, b }: { a: number; b: number }) => a + b,
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
console.log('Result:', ToolFunc.runSync('add', { a: 1, b: 2 }));
|
|
40
|
+
// Result: 3
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Properties
|
|
44
|
+
|
|
45
|
+
* `func`: The main body of the tool function.
|
|
46
|
+
* `name`: Name of the tool function.
|
|
47
|
+
* `params`: Parameter schema for the tool function.
|
|
48
|
+
* `result`: Return type of the tool function.
|
|
49
|
+
* `scope`: Scope of the function.
|
|
50
|
+
* `description`: Description of the tool function.
|
|
51
|
+
* `setup`: Executed during the construction of the ToolFunc instance.
|
|
52
|
+
* `depends`: Dependencies on other ToolFunc instances.
|
|
53
|
+
|
|
54
|
+
### ServerTools (extends ToolFunc)
|
|
55
|
+
|
|
56
|
+
Server-side AI tool functions.
|
|
57
|
+
|
|
58
|
+
**Features**
|
|
59
|
+
|
|
60
|
+
* Allows exporting the function body as a string for local execution.
|
|
61
|
+
* Provides a static `toJSON()` method to export all service API definitions.
|
|
62
|
+
|
|
63
|
+
```ts
|
|
64
|
+
interface ServerFuncItem extends FuncItem {
|
|
65
|
+
apiRoot?: string
|
|
66
|
+
/**
|
|
67
|
+
* API request method, can be 'get' or 'post'
|
|
68
|
+
*/
|
|
69
|
+
action?: 'get'|'post'
|
|
70
|
+
// Options for the Node.js fetch function
|
|
71
|
+
fetchOptions?: any
|
|
72
|
+
// Whether to allow exporting the func body itself, default to false
|
|
73
|
+
allowExportFunc?: boolean
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Usage: Parameters are sent via query string for GET requests and in the body for POST requests.
|
|
78
|
+
|
|
79
|
+
### ClientTools (extends ToolFunc)
|
|
80
|
+
|
|
81
|
+
Used to call remote AI tool functions (ServerTools).
|
|
82
|
+
|
|
83
|
+
**Features**
|
|
84
|
+
|
|
85
|
+
* Supports loading all remote calls with static loadFromSync(items) and static async loadFrom().
|
|
86
|
+
* Prioritizes local execution over remote calls.
|
|
87
|
+
|
|
88
|
+
```ts
|
|
89
|
+
interface ClientFuncItem extends FuncItem {
|
|
90
|
+
apiRoot?: string
|
|
91
|
+
action?: 'get'|'post'
|
|
92
|
+
fetchOptions?: any
|
|
93
|
+
}
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### ResServerTools
|
|
97
|
+
|
|
98
|
+
Resource-based server tools, where resources are named ToolFunc.
|
|
99
|
+
|
|
100
|
+
#### Methods
|
|
101
|
+
|
|
102
|
+
* `GET /api/res/:id`: Get resource.
|
|
103
|
+
* `GET /api/res`: List resources.
|
|
104
|
+
* `POST /api/res`: Create resource.
|
|
105
|
+
* `PUT /api/res/:id`: Update resource.
|
|
106
|
+
* `DELETE /api/res/:id`: Delete resource.
|
|
107
|
+
|
|
108
|
+
#### Custom Methods
|
|
109
|
+
|
|
110
|
+
Methods prefixed with `$` are custom resource methods, accessible via `POST`.
|
|
111
|
+
|
|
112
|
+
Example
|
|
113
|
+
|
|
114
|
+
```ts
|
|
115
|
+
class TestResTool extends ResServerTools {
|
|
116
|
+
items: any = {}
|
|
117
|
+
params: FuncParams = {
|
|
118
|
+
'id': {type: 'number'},
|
|
119
|
+
'val': {type: 'any'},
|
|
120
|
+
}
|
|
121
|
+
$customMethod({id}: ResServerFuncParams) {
|
|
122
|
+
if (id) {
|
|
123
|
+
const item = this.items[id]
|
|
124
|
+
if (!item) {
|
|
125
|
+
throw new NotFoundError(id, 'res')
|
|
126
|
+
}
|
|
127
|
+
return {name: 'customMethod', id, item}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
get({id}: ResServerFuncParams) {
|
|
131
|
+
if (id) {
|
|
132
|
+
const item = this.items[id]
|
|
133
|
+
if (!item) {
|
|
134
|
+
throw new NotFoundError(id, 'res')
|
|
135
|
+
}
|
|
136
|
+
return item
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
post({id, val}: ResServerFuncParams) {
|
|
140
|
+
if (id !== undefined && val !== undefined) {
|
|
141
|
+
this.items[id] = val
|
|
142
|
+
return {id}
|
|
143
|
+
} else {
|
|
144
|
+
throwError('id or val is undefined')
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
list() {
|
|
148
|
+
return Object.keys(this.items)
|
|
149
|
+
}
|
|
150
|
+
delete({id}: ResServerFuncParams) {
|
|
151
|
+
if (id) {
|
|
152
|
+
const item = this.items[id]
|
|
153
|
+
if (item === undefined) {
|
|
154
|
+
throw new NotFoundError(id, 'res')
|
|
155
|
+
}
|
|
156
|
+
delete this.items[id]
|
|
157
|
+
return {id}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
ResServerTools.apiRoot = apiRoot
|
|
162
|
+
const res = new TestResTool('res')
|
|
163
|
+
res.register()
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### ResClientTools
|
|
167
|
+
|
|
168
|
+
Resource-based client tools that generate methods based on ServerTools agreements.
|
|
169
|
+
|
|
170
|
+
Example
|
|
171
|
+
|
|
172
|
+
```ts
|
|
173
|
+
ResClientTools.apiRoot = apiRoot
|
|
174
|
+
await ResClientTools.loadFrom()
|
|
175
|
+
|
|
176
|
+
const resFunc = ResClientTools.getFunc(funcName)
|
|
177
|
+
if (resFunc) {
|
|
178
|
+
let result = await res.post({id: '...', val: '...'})
|
|
179
|
+
result = await res.put({id: '...', val: '...'})
|
|
180
|
+
result = await res.get({id: '...'})
|
|
181
|
+
result = await res.customMethod({id: '...'})
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### SSE (Server-Sent Events)
|
|
186
|
+
|
|
187
|
+
Endpoints
|
|
188
|
+
|
|
189
|
+
* `GET /api/event`: List server event channel (stream).
|
|
190
|
+
* `POST /api/event`: Subscribe to server events.
|
|
191
|
+
* `DELETE /api/event`: Unsubscribe from server events.
|
|
192
|
+
* `PUT /api/event`: Publish messages to server events.
|
|
193
|
+
|
|
194
|
+
### EventClient
|
|
195
|
+
|
|
196
|
+
The `EventClient` component facilitates communication between the client and server through Server-Sent Events (SSE). Its primary responsibilities include subscribing to server events and publishing messages to the server.
|
|
197
|
+
|
|
198
|
+
#### Key Features
|
|
199
|
+
|
|
200
|
+
- **Subscription**: Subscribes to server events and forwards them to the local client's event bus.
|
|
201
|
+
- **Publication**: Publishes messages to the server.
|
|
202
|
+
|
|
203
|
+
#### EventClient Methods
|
|
204
|
+
|
|
205
|
+
- `initEventSource(events)`: Specifies which events to receive from the server. If `events` is not provided, all events are received.
|
|
206
|
+
- `subscribe(events)`: Subscribes to specified server events and forwards them to the local event bus.
|
|
207
|
+
- Note: It's important to distinguish between local and server-originated messages. Server messages that were previously forwarded from local events should not be re-forwarded to avoid infinite loops.
|
|
208
|
+
- `unsubscribe(events)`: Cancels subscriptions to specified server events.
|
|
209
|
+
- `forwardEvent(events)`: Forwards specific local events to the server.
|
|
210
|
+
- `unforwardEvent(events)`: Stops forwarding specific local events to the server.
|
|
211
|
+
|
|
212
|
+
#### Considerations
|
|
213
|
+
|
|
214
|
+
- Local events that need to be forwarded to the server can be managed independently through the `forwardEvent` method.
|
|
215
|
+
- Event handling logic should be decoupled from the core functionality of `ToolFunc` to maintain flexibility and separation of concerns.
|
|
216
|
+
|
|
217
|
+
### EventServer
|
|
218
|
+
|
|
219
|
+
The `EventServer` component manages server-side event processing, including publishing and subscribing to events.
|
|
220
|
+
|
|
221
|
+
**Key Features**
|
|
222
|
+
|
|
223
|
+
- **Publishing**: Publishes events to clients via SSE.
|
|
224
|
+
- **Subscribing**: Manages subscriptions to events on the server side.
|
|
225
|
+
|
|
226
|
+
**Actions**
|
|
227
|
+
|
|
228
|
+
- `pub`: Publishes an SSE event.
|
|
229
|
+
- `sub`: Subscribes to server events.
|
|
230
|
+
- `unsub`: Unsubscribes from server events.
|
|
231
|
+
|
|
232
|
+
**Usage**
|
|
233
|
+
|
|
234
|
+
- Functions without an `act` or with only `events` specified are used for server-side event handling.
|
|
235
|
+
- Functions with an `act` define specific actions such as publishing, subscribing, or unsubscribing from events.
|
|
236
|
+
|
|
237
|
+
## Contribution
|
|
238
|
+
|
|
239
|
+
If you would like to contribute to the project, please read the [CONTRIBUTING.md](_media/CONTRIBUTING.md) file for guidelines on how to get started.
|
|
240
|
+
|
|
241
|
+
## License
|
|
242
|
+
|
|
243
|
+
The project is licensed under the MIT License. See the [LICENSE-MIT](_media/LICENSE-MIT) file for more details.
|
|
244
|
+
|
|
245
|
+
## Credit
|
|
246
|
+
|
|
247
|
+
* [@huggingface/jinja](https://github.com/huggingface/huggingface.js)
|
|
248
|
+
* [eventsource-parser](https://github.com/rexxars/eventsource-parser)
|
|
249
|
+
* [async-sema](https://github.com/vercel/async-sema)
|
|
250
|
+
* [modelfusion](https://github.com/vercel/modelfusion)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Please feel free to file GitHub Issues or propose Pull Requests. We're always happy to discuss improvements to this library!
|
|
4
|
+
|
|
5
|
+
## Testing
|
|
6
|
+
|
|
7
|
+
```shell
|
|
8
|
+
npm test
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Releasing
|
|
12
|
+
|
|
13
|
+
Releases are supposed to be done from master, version bumping is automated through [`standard-version`](https://github.com/absolute-version/commit-and-tag-version):
|
|
14
|
+
|
|
15
|
+
```shell
|
|
16
|
+
npm run release -- --dry-run # verify output manually
|
|
17
|
+
npm run release # follow the instructions from the output of this command
|
|
18
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Copyright (c) 2023 Riceball LEE
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person
|
|
4
|
+
obtaining a copy of this software and associated documentation
|
|
5
|
+
files (the "Software"), to deal in the Software without
|
|
6
|
+
restriction, including without limitation the rights to use,
|
|
7
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
8
|
+
copies of the Software, and to permit persons to whom the
|
|
9
|
+
Software is furnished to do so, subject to the following
|
|
10
|
+
conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be
|
|
13
|
+
included in all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
16
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
17
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
18
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
19
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
20
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
21
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
22
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
[**@isdk/ai-tool**](../README.md)
|
|
2
|
+
|
|
3
|
+
***
|
|
4
|
+
|
|
5
|
+
[@isdk/ai-tool](../globals.md) / AbortError
|
|
6
|
+
|
|
7
|
+
# Class: AbortError
|
|
8
|
+
|
|
9
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:142
|
|
10
|
+
|
|
11
|
+
BaseError class that extends the Error class.
|
|
12
|
+
|
|
13
|
+
## Example
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
// Create a custom error
|
|
17
|
+
class CustomError extends BaseError {
|
|
18
|
+
static code = 'customError';
|
|
19
|
+
constructor(message: string) {
|
|
20
|
+
super(message);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Throw the custom error
|
|
25
|
+
throw new CustomError('This is a custom error');
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Description
|
|
29
|
+
|
|
30
|
+
This class is used to create custom errors that extend the built-in Error class. It provides a way to define custom error codes and additional data associated with the error.
|
|
31
|
+
|
|
32
|
+
## Method
|
|
33
|
+
|
|
34
|
+
toJSON - Returns a JSON representation of the error.
|
|
35
|
+
|
|
36
|
+
## Method
|
|
37
|
+
|
|
38
|
+
fromJSON - Creates a new BaseError instance from a JSON representation.
|
|
39
|
+
|
|
40
|
+
## Extends
|
|
41
|
+
|
|
42
|
+
- [`CommonError`](CommonError.md)
|
|
43
|
+
|
|
44
|
+
## Constructors
|
|
45
|
+
|
|
46
|
+
### new AbortError()
|
|
47
|
+
|
|
48
|
+
> **new AbortError**(`what`?, `name`?): [`AbortError`](AbortError.md)
|
|
49
|
+
|
|
50
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:144
|
|
51
|
+
|
|
52
|
+
#### Parameters
|
|
53
|
+
|
|
54
|
+
##### what?
|
|
55
|
+
|
|
56
|
+
`string`
|
|
57
|
+
|
|
58
|
+
##### name?
|
|
59
|
+
|
|
60
|
+
`string` | `Record`\<`string`, `any`\>
|
|
61
|
+
|
|
62
|
+
#### Returns
|
|
63
|
+
|
|
64
|
+
[`AbortError`](AbortError.md)
|
|
65
|
+
|
|
66
|
+
#### Overrides
|
|
67
|
+
|
|
68
|
+
[`CommonError`](CommonError.md).[`constructor`](CommonError.md#constructors)
|
|
69
|
+
|
|
70
|
+
## Properties
|
|
71
|
+
|
|
72
|
+
### caller
|
|
73
|
+
|
|
74
|
+
> **caller**: `string`
|
|
75
|
+
|
|
76
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:63
|
|
77
|
+
|
|
78
|
+
The name of the function that threw the error.
|
|
79
|
+
|
|
80
|
+
#### Inherited from
|
|
81
|
+
|
|
82
|
+
[`CommonError`](CommonError.md).[`caller`](CommonError.md#caller)
|
|
83
|
+
|
|
84
|
+
***
|
|
85
|
+
|
|
86
|
+
### cause?
|
|
87
|
+
|
|
88
|
+
> `optional` **cause**: `unknown`
|
|
89
|
+
|
|
90
|
+
Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es2022.error.d.ts:26
|
|
91
|
+
|
|
92
|
+
#### Inherited from
|
|
93
|
+
|
|
94
|
+
[`CommonError`](CommonError.md).[`cause`](CommonError.md#cause)
|
|
95
|
+
|
|
96
|
+
***
|
|
97
|
+
|
|
98
|
+
### code
|
|
99
|
+
|
|
100
|
+
> **code**: `ErrorCodeType`
|
|
101
|
+
|
|
102
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:64
|
|
103
|
+
|
|
104
|
+
the error code
|
|
105
|
+
|
|
106
|
+
#### Inherited from
|
|
107
|
+
|
|
108
|
+
[`CommonError`](CommonError.md).[`code`](CommonError.md#code)
|
|
109
|
+
|
|
110
|
+
***
|
|
111
|
+
|
|
112
|
+
### data?
|
|
113
|
+
|
|
114
|
+
> `optional` **data**: `any`
|
|
115
|
+
|
|
116
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:65
|
|
117
|
+
|
|
118
|
+
Additional data associated with the error.
|
|
119
|
+
|
|
120
|
+
#### Inherited from
|
|
121
|
+
|
|
122
|
+
[`CommonError`](CommonError.md).[`data`](CommonError.md#data)
|
|
123
|
+
|
|
124
|
+
***
|
|
125
|
+
|
|
126
|
+
### message
|
|
127
|
+
|
|
128
|
+
> **message**: `string`
|
|
129
|
+
|
|
130
|
+
Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:1077
|
|
131
|
+
|
|
132
|
+
#### Inherited from
|
|
133
|
+
|
|
134
|
+
[`CommonError`](CommonError.md).[`message`](CommonError.md#message-1)
|
|
135
|
+
|
|
136
|
+
***
|
|
137
|
+
|
|
138
|
+
### name
|
|
139
|
+
|
|
140
|
+
> **name**: `string`
|
|
141
|
+
|
|
142
|
+
Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:1076
|
|
143
|
+
|
|
144
|
+
#### Inherited from
|
|
145
|
+
|
|
146
|
+
[`CommonError`](CommonError.md).[`name`](CommonError.md#name-1)
|
|
147
|
+
|
|
148
|
+
***
|
|
149
|
+
|
|
150
|
+
### stack?
|
|
151
|
+
|
|
152
|
+
> `optional` **stack**: `string`
|
|
153
|
+
|
|
154
|
+
Defined in: node\_modules/.pnpm/typescript@5.7.3/node\_modules/typescript/lib/lib.es5.d.ts:1078
|
|
155
|
+
|
|
156
|
+
#### Inherited from
|
|
157
|
+
|
|
158
|
+
[`CommonError`](CommonError.md).[`stack`](CommonError.md#stack)
|
|
159
|
+
|
|
160
|
+
***
|
|
161
|
+
|
|
162
|
+
### code
|
|
163
|
+
|
|
164
|
+
> `static` **code**: [`ErrorCode`](../enumerations/ErrorCode.md)
|
|
165
|
+
|
|
166
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:143
|
|
167
|
+
|
|
168
|
+
The error code associated with the error.
|
|
169
|
+
|
|
170
|
+
#### Overrides
|
|
171
|
+
|
|
172
|
+
[`CommonError`](CommonError.md).[`code`](CommonError.md#code-1)
|
|
173
|
+
|
|
174
|
+
***
|
|
175
|
+
|
|
176
|
+
### prepareStackTrace()?
|
|
177
|
+
|
|
178
|
+
> `static` `optional` **prepareStackTrace**: (`err`, `stackTraces`) => `any`
|
|
179
|
+
|
|
180
|
+
Defined in: node\_modules/.pnpm/@types+node@22.10.5/node\_modules/@types/node/globals.d.ts:143
|
|
181
|
+
|
|
182
|
+
Optional override for formatting stack traces
|
|
183
|
+
|
|
184
|
+
#### Parameters
|
|
185
|
+
|
|
186
|
+
##### err
|
|
187
|
+
|
|
188
|
+
`Error`
|
|
189
|
+
|
|
190
|
+
##### stackTraces
|
|
191
|
+
|
|
192
|
+
`CallSite`[]
|
|
193
|
+
|
|
194
|
+
#### Returns
|
|
195
|
+
|
|
196
|
+
`any`
|
|
197
|
+
|
|
198
|
+
#### See
|
|
199
|
+
|
|
200
|
+
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
|
|
201
|
+
|
|
202
|
+
#### Inherited from
|
|
203
|
+
|
|
204
|
+
[`CommonError`](CommonError.md).[`prepareStackTrace`](CommonError.md#preparestacktrace)
|
|
205
|
+
|
|
206
|
+
***
|
|
207
|
+
|
|
208
|
+
### stackTraceLimit
|
|
209
|
+
|
|
210
|
+
> `static` **stackTraceLimit**: `number`
|
|
211
|
+
|
|
212
|
+
Defined in: node\_modules/.pnpm/@types+node@22.10.5/node\_modules/@types/node/globals.d.ts:145
|
|
213
|
+
|
|
214
|
+
#### Inherited from
|
|
215
|
+
|
|
216
|
+
[`CommonError`](CommonError.md).[`stackTraceLimit`](CommonError.md#stacktracelimit)
|
|
217
|
+
|
|
218
|
+
## Methods
|
|
219
|
+
|
|
220
|
+
### fromJSON()
|
|
221
|
+
|
|
222
|
+
> **fromJSON**(`json`): [`BaseError`](BaseError.md)
|
|
223
|
+
|
|
224
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:93
|
|
225
|
+
|
|
226
|
+
Creates a new BaseError instance from a JSON representation.
|
|
227
|
+
|
|
228
|
+
#### Parameters
|
|
229
|
+
|
|
230
|
+
##### json
|
|
231
|
+
|
|
232
|
+
`any`
|
|
233
|
+
|
|
234
|
+
A JSON representation of the error.
|
|
235
|
+
|
|
236
|
+
#### Returns
|
|
237
|
+
|
|
238
|
+
[`BaseError`](BaseError.md)
|
|
239
|
+
|
|
240
|
+
A new BaseError instance.
|
|
241
|
+
|
|
242
|
+
#### Inherited from
|
|
243
|
+
|
|
244
|
+
[`CommonError`](CommonError.md).[`fromJSON`](CommonError.md#fromjson)
|
|
245
|
+
|
|
246
|
+
***
|
|
247
|
+
|
|
248
|
+
### toJSON()
|
|
249
|
+
|
|
250
|
+
> **toJSON**(): `any`
|
|
251
|
+
|
|
252
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:86
|
|
253
|
+
|
|
254
|
+
Returns a JSON representation of the error.
|
|
255
|
+
|
|
256
|
+
#### Returns
|
|
257
|
+
|
|
258
|
+
`any`
|
|
259
|
+
|
|
260
|
+
A JSON representation of the error.
|
|
261
|
+
|
|
262
|
+
#### Inherited from
|
|
263
|
+
|
|
264
|
+
[`CommonError`](CommonError.md).[`toJSON`](CommonError.md#tojson)
|
|
265
|
+
|
|
266
|
+
***
|
|
267
|
+
|
|
268
|
+
### captureStackTrace()
|
|
269
|
+
|
|
270
|
+
> `static` **captureStackTrace**(`targetObject`, `constructorOpt`?): `void`
|
|
271
|
+
|
|
272
|
+
Defined in: node\_modules/.pnpm/@types+node@22.10.5/node\_modules/@types/node/globals.d.ts:136
|
|
273
|
+
|
|
274
|
+
Create .stack property on a target object
|
|
275
|
+
|
|
276
|
+
#### Parameters
|
|
277
|
+
|
|
278
|
+
##### targetObject
|
|
279
|
+
|
|
280
|
+
`object`
|
|
281
|
+
|
|
282
|
+
##### constructorOpt?
|
|
283
|
+
|
|
284
|
+
`Function`
|
|
285
|
+
|
|
286
|
+
#### Returns
|
|
287
|
+
|
|
288
|
+
`void`
|
|
289
|
+
|
|
290
|
+
#### Inherited from
|
|
291
|
+
|
|
292
|
+
[`CommonError`](CommonError.md).[`captureStackTrace`](CommonError.md#capturestacktrace)
|
|
293
|
+
|
|
294
|
+
***
|
|
295
|
+
|
|
296
|
+
### create()
|
|
297
|
+
|
|
298
|
+
> `static` **create**(`__namedParameters`): [`CommonError`](CommonError.md)
|
|
299
|
+
|
|
300
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:96
|
|
301
|
+
|
|
302
|
+
#### Parameters
|
|
303
|
+
|
|
304
|
+
##### \_\_namedParameters
|
|
305
|
+
|
|
306
|
+
###### code?
|
|
307
|
+
|
|
308
|
+
`string` \| `number`
|
|
309
|
+
|
|
310
|
+
###### data?
|
|
311
|
+
|
|
312
|
+
`any`
|
|
313
|
+
|
|
314
|
+
###### error
|
|
315
|
+
|
|
316
|
+
`string`
|
|
317
|
+
|
|
318
|
+
###### name?
|
|
319
|
+
|
|
320
|
+
`string`
|
|
321
|
+
|
|
322
|
+
#### Returns
|
|
323
|
+
|
|
324
|
+
[`CommonError`](CommonError.md)
|
|
325
|
+
|
|
326
|
+
#### Inherited from
|
|
327
|
+
|
|
328
|
+
[`CommonError`](CommonError.md).[`create`](CommonError.md#create)
|
|
329
|
+
|
|
330
|
+
***
|
|
331
|
+
|
|
332
|
+
### createErrorClass()
|
|
333
|
+
|
|
334
|
+
> `static` **createErrorClass**(`aType`, `aErrorCode`?, `ParentErrorClass`?): *typeof* [`BaseError`](BaseError.md)
|
|
335
|
+
|
|
336
|
+
Defined in: node\_modules/.pnpm/@isdk+common-error@0.1.3/node\_modules/@isdk/common-error/dist/index.d.ts:66
|
|
337
|
+
|
|
338
|
+
Create an Error Class
|
|
339
|
+
|
|
340
|
+
#### Parameters
|
|
341
|
+
|
|
342
|
+
##### aType
|
|
343
|
+
|
|
344
|
+
`string`
|
|
345
|
+
|
|
346
|
+
the error type(class) name
|
|
347
|
+
|
|
348
|
+
##### aErrorCode?
|
|
349
|
+
|
|
350
|
+
`string` | `number` | *typeof* `AbstractError`
|
|
351
|
+
|
|
352
|
+
##### ParentErrorClass?
|
|
353
|
+
|
|
354
|
+
*typeof* [`BaseError`](BaseError.md)
|
|
355
|
+
|
|
356
|
+
the parent error class. defaults to AbstractError
|
|
357
|
+
|
|
358
|
+
#### Returns
|
|
359
|
+
|
|
360
|
+
*typeof* [`BaseError`](BaseError.md)
|
|
361
|
+
|
|
362
|
+
the new Error Class
|
|
363
|
+
|
|
364
|
+
#### Inherited from
|
|
365
|
+
|
|
366
|
+
[`CommonError`](CommonError.md).[`createErrorClass`](CommonError.md#createerrorclass)
|