@cldmv/slothlet 3.9.2 → 3.10.0
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 +16 -16
- package/REFERENCE.md +19 -19
- package/dist/lib/builders/api_builder.mjs +1 -1
- package/dist/lib/builders/builder.mjs +1 -1
- package/dist/lib/builders/modes-processor.mjs +1 -1
- package/dist/lib/handlers/api-cache-manager.mjs +1 -1
- package/dist/lib/handlers/api-manager.mjs +1 -1
- package/dist/lib/handlers/hook-manager.mjs +1 -1
- package/dist/lib/handlers/permission-manager.mjs +1 -1
- package/dist/lib/helpers/config.mjs +1 -1
- package/dist/lib/helpers/generate-manifest.mjs +1 -1
- package/dist/lib/helpers/module-discovery.mjs +1 -1
- package/dist/lib/helpers/module-manifest-validator.mjs +1 -1
- package/dist/lib/i18n/languages/de-de.json +90 -64
- package/dist/lib/i18n/languages/en-gb.json +90 -64
- package/dist/lib/i18n/languages/en-us.json +90 -64
- package/dist/lib/i18n/languages/es-es.json +90 -64
- package/dist/lib/i18n/languages/es-mx.json +90 -64
- package/dist/lib/i18n/languages/fr-fr.json +90 -64
- package/dist/lib/i18n/languages/hi-in.json +90 -64
- package/dist/lib/i18n/languages/ja-jp.json +90 -64
- package/dist/lib/i18n/languages/ko-kr.json +90 -64
- package/dist/lib/i18n/languages/pt-br.json +90 -64
- package/dist/lib/i18n/languages/ru-ru.json +92 -66
- package/dist/lib/i18n/languages/zh-cn.json +90 -64
- package/dist/lib/modes/eager.mjs +1 -1
- package/dist/lib/modes/lazy.mjs +1 -1
- package/package.json +7 -4
- package/types/dist/lib/builders/api_builder.d.mts.map +1 -1
- package/types/dist/lib/builders/builder.d.mts.map +1 -1
- package/types/dist/lib/builders/modes-processor.d.mts.map +1 -1
- package/types/dist/lib/handlers/api-cache-manager.d.mts.map +1 -1
- package/types/dist/lib/handlers/api-manager.d.mts.map +1 -1
- package/types/dist/lib/handlers/hook-manager.d.mts +4 -0
- package/types/dist/lib/handlers/hook-manager.d.mts.map +1 -1
- package/types/dist/lib/handlers/permission-manager.d.mts +2 -0
- package/types/dist/lib/handlers/permission-manager.d.mts.map +1 -1
- package/types/dist/lib/helpers/config.d.mts +3 -0
- package/types/dist/lib/helpers/config.d.mts.map +1 -1
- package/types/dist/lib/helpers/generate-manifest.d.mts +1 -0
- package/types/dist/lib/helpers/generate-manifest.d.mts.map +1 -1
- package/types/dist/lib/helpers/module-discovery.d.mts.map +1 -1
- package/types/dist/lib/helpers/module-manifest-validator.d.mts.map +1 -1
- package/types/dist/lib/modes/eager.d.mts +2 -1
- package/types/dist/lib/modes/eager.d.mts.map +1 -1
- package/types/dist/lib/modes/lazy.d.mts +2 -1
- package/types/dist/lib/modes/lazy.d.mts.map +1 -1
|
@@ -1,54 +1,110 @@
|
|
|
1
1
|
{
|
|
2
2
|
"translations": {
|
|
3
3
|
"INVALID_CONFIG": "配置错误:{option} 为 {value},预期为 {expected}。{hint}",
|
|
4
|
+
"HINT_INVALID_CONFIG": "请检查配置值,并确保其符合预期的类型和格式。",
|
|
5
|
+
"INVALID_CONFIG_SYNTHETIC_EXPORTS_SHAPE": "配置错误:内联 exports 必须是 { default?, ...named } 形式的普通对象,收到 {received}。",
|
|
6
|
+
"HINT_INVALID_CONFIG_SYNTHETIC_EXPORTS_SHAPE": "请将 exports 作为普通对象传入,例如 { default: fn } 或 { name: fn },也可使用 { exports: { default?, ...named } } 包装形式,或直接传入裸函数。",
|
|
7
|
+
"INVALID_CONFIG_SYNTHETIC_INPUT": "配置错误:内联内容必须是 { default?, ...named } exports 形式的普通对象、{ exports: … } 包装对象或裸函数,收到 {received}。",
|
|
8
|
+
"HINT_INVALID_CONFIG_SYNTHETIC_INPUT": "请将内联 exports 作为普通对象或裸函数传入;文件系统挂载需要字符串路径。",
|
|
9
|
+
"INVALID_CONFIG_SYNTHETIC_NAME": "配置错误:syntheticName 必须是非空字符串,收到 {received}。",
|
|
10
|
+
"HINT_INVALID_CONFIG_SYNTHETIC_NAME": "请为合成构建提供字符串键名,例如 \"synthetic\"。",
|
|
11
|
+
"INVALID_CONFIG_PRELOADED_STRUCTURE": "配置错误:preloadedStructure 必须是包含 files 和 directories 数组的普通对象,收到 {received}。",
|
|
12
|
+
"HINT_INVALID_CONFIG_PRELOADED_STRUCTURE": "preloadedStructure 由内部构建;请传递包含 files 和 directories 数组的对象,或省略它以扫描目录。",
|
|
4
13
|
"INVALID_CONFIG_DIR_MISSING": "配置错误:必须提供 'dir' 选项。请指定加载 API 的目录路径。",
|
|
14
|
+
"HINT_INVALID_CONFIG_DIR_MISSING": "必须提供目录路径,但当前未提供。",
|
|
5
15
|
"INVALID_CONFIG_BROWSER_REQUIRES_MANIFEST": "配置错误:当 env 为 'browser' 时,必须提供 'manifest'。请提供包含 'files' 和 'directories' 数组的预生成 manifest 对象。",
|
|
6
16
|
"INVALID_CONFIG_BROWSER_MANIFEST_INVALID": "配置错误:'manifest' 必须是包含 'files' 和 'directories' 数组的普通对象。收到:{received}",
|
|
7
17
|
"INVALID_CONFIG_BROWSER_RESOLVE_SPECIFIER_INVALID": "配置错误:当 env 为 'browser' 时,'resolveModuleSpecifier' 必须是一个函数。收到:{received}",
|
|
8
18
|
"INVALID_CONFIG_DIR_INVALID": "配置错误:'dir' 必须是非空字符串路径。接收到:{dir}",
|
|
19
|
+
"HINT_INVALID_CONFIG_DIR_INVALID": "请确保目录路径是有效的字符串,并指向一个现有的目录。",
|
|
9
20
|
"INVALID_CONFIG_MODE_INVALID": "配置错误:'mode' 必须是 'eager' 或 'lazy'。接收到:{value}",
|
|
21
|
+
"HINT_INVALID_CONFIG_MODE_INVALID": "模式必须是 'eager' 或 'lazy' 之一。",
|
|
10
22
|
"INVALID_CONFIG_NOT_LOADED": "无法执行操作 '{operation}' - 实例未加载。请先调用 load()。",
|
|
23
|
+
"HINT_INVALID_CONFIG_NOT_LOADED": "在执行此操作前必须加载实例。请先调用 load()。",
|
|
11
24
|
"INVALID_CONFIG_LAZY_MATERIALIZATION_FAILED": "无法实例化 '{apiPath}' 的延迟代理。请检查模块是否正确加载。",
|
|
12
25
|
"INVALID_CONFIG_NOT_A_FUNCTION": "无法调用 '{apiPath}' - 不是函数(得到 {actualType})。请检查模块是否导出了可调用的函数。",
|
|
13
26
|
"INVALID_CONFIG_API_PATH_INVALID": "无效的 API 路径 '{apiPath}':{reason}。API 路径必须是非空、格式正确的点分写法字符串,且不能与保留名称冲突。索引 {index} 处的片段:'{segment}'。",
|
|
27
|
+
"HINT_INVALID_CONFIG_API_PATH_INVALID": "请确保 API 路径是一个有效的点分写法字符串(例如 'plugins.tools'),其中不包含空片段或保留名称(slothlet, shutdown, destroy)。",
|
|
14
28
|
"INVALID_CONFIG_FORCE_OVERWRITE_REQUIRES_MODULE_ID": "配置错误:forceOverwrite/allowOverwrite 需要提供 moduleID。在使用路径 '{apiPath}' 的覆盖选项时,请提供唯一的 moduleID。",
|
|
29
|
+
"HINT_INVALID_CONFIG_FORCE_OVERWRITE_REQUIRES_MODULE_ID": "使用 forceOverwrite 或 allowOverwrite 时,必须提供唯一的 moduleID 以跟踪被覆盖路径的所有权。",
|
|
15
30
|
"INVALID_METADATA_TARGET": "无效的元数据目标:预期为 {expected},接收到 {target}。元数据操作需要函数或对象引用。",
|
|
31
|
+
"HINT_INVALID_METADATA_TARGET": "目标必须是通过 Slothlet 加载的函数或对象。请传递实际的函数/对象引用,而不是字符串或原始值。",
|
|
16
32
|
"METADATA_NO_MODULE_ID": "无法设置用户元数据:系统元数据中未找到 moduleID。请确保目标函数/对象是通过 Slothlet 加载的。",
|
|
33
|
+
"HINT_METADATA_NO_MODULE_ID": "请确保函数/对象是通过 Slothlet 的模块系统加载的。只有 Slothlet 管理的函数才具有相关的元数据。",
|
|
17
34
|
"METADATA_LIFECYCLE_BYPASS": "tagSystemMetadata() 必须通过生命周期系统调用。请使用 lifecycle.emit('impl:created') 或 lifecycle.emit('impl:changed'),而不是直接调用。",
|
|
35
|
+
"HINT_METADATA_LIFECYCLE_BYPASS": "切勿直接调用 tagSystemMetadata()。请改用 'impl:created' 或 'impl:changed' 生命周期函数,它们会通过正确渠道调用 tagSystemMetadata()。",
|
|
18
36
|
"INVALID_METADATA_KEY": "无效的元数据键:预期为 {expected},键 '{key}' 接收到类型 {type}。元数据键必须格式正确。",
|
|
37
|
+
"HINT_INVALID_METADATA_KEY": "元数据键必须是字符串、字符串数组或带有数组值的对象。请检查键格式是否符合这几种类型之一。",
|
|
19
38
|
"WARNING_METADATA_MISMATCH": "安全警告:'{apiPath}' 的元数据文件路径不匹配。堆栈跟踪显示为 '{stackFile}',但元数据记录为 '{metadataFile}'。这可能表明存在热重载或篡改。",
|
|
39
|
+
"HINT_WARNING_METADATA_MISMATCH": "此警告表示函数的执行位置与其注册的元数据路径不符。这可能发生在热重载期间,或者函数被篡改时。在大多数启用了热重载的开发环境下,这是正常现象。",
|
|
20
40
|
"COLLISION_ERROR": "冲突错误位于 '{key}' (context: {collisionContext}, mode: {collisionMode})。请将冲突模式设置为 'merge'、'replace'、'warn' 或 'skip' 以处理冲突。",
|
|
41
|
+
"HINT_COLLISION_ERROR": "冲突模式设置为 'error',会阻止任何覆盖。请改用 'merge'(合并属性)、'replace'(完全覆盖)、'warn'(警告但保留现有)或 'skip'(默默忽略)。",
|
|
21
42
|
"COLLISION_DEFAULT_EXPORT_ERROR": "检测到冲突:属性 '{key}' 已存在于 '{apiPath}' 的默认导出中。当前冲突模式为 'error'。",
|
|
43
|
+
"HINT_COLLISION_DEFAULT_EXPORT_ERROR": "具名导出与此路径下默认导出对象上已存在属性冲突。请将冲突模式更改为 'merge'、'replace'、'warn' 或 'skip',或者重命名冲突的属性。",
|
|
22
44
|
"INVALID_ARGUMENT": "无效参数 '{argument}':预期为 {expected},接收到 {received}。",
|
|
45
|
+
"HINT_INVALID_ARGUMENT": "路径必须是点分写法字符串(例如 'math.add')。",
|
|
23
46
|
"RUNTIME_NO_ACTIVE_CONTEXT": "未找到活动上下文。此操作需要在 slothlet API 函数内部调用。",
|
|
47
|
+
"HINT_RUNTIME_NO_ACTIVE_CONTEXT": "metadata.self() 必须在 slothlet API 函数内部调用。",
|
|
24
48
|
"INVALID_CONFIG_MUTATIONS_DISABLED": "无法执行 '{operation}' - 变动功能已禁用。请设置 allowMutation: true 以启用 API 修改操作(add/remove/reload)。",
|
|
49
|
+
"HINT_INVALID_CONFIG_MUTATIONS_DISABLED": "API 变动操作要求在配置中设置 allowMutation: true。请通过 diagnostics: true 访问这些方法以进行测试,而无需实际启用变动。",
|
|
25
50
|
"CACHE_MODULEID_MISMATCH": "缓存条目 moduleID 不匹配:预期为 '{cacheKey}',但条目中为 '{entryModuleID}'。这表明内部缓存不一致。",
|
|
51
|
+
"HINT_CACHE_MODULEID_MISMATCH": "这是一个由于缓存损坏导致的内部错误。请报告此问题并提供复现步骤。",
|
|
26
52
|
"CACHE_NOT_FOUND": "在执行 '{operation}' 操作期间未找到 moduleID 为 '{moduleID}' 的缓存条目。模块可能未加载或缓存已被清除。",
|
|
53
|
+
"HINT_CACHE_NOT_FOUND": "请确保在尝试重载或重建缓存前已加载模块。检查 moduleID 是否正确。",
|
|
27
54
|
"CACHE_MANAGER_NOT_AVAILABLE": "缓存管理器不可用。无法执行 '{operation}' 操作。请确保缓存管理器已初始化。",
|
|
55
|
+
"HINT_CACHE_MANAGER_NOT_AVAILABLE": "缓存管理器应自动初始化。如果您看到此错误,可能表明内部初始化存在问题。",
|
|
28
56
|
"MODULE_LOAD_FAILED": "加载模块 '{modulePath}'(ID: {moduleID})失败:{error}",
|
|
57
|
+
"HINT_MODULE_LOAD_FAILED": "请检查模块文件是否存在错误。确保其具有有效的 JavaScript 语法和导出。",
|
|
29
58
|
"MODULE_NOT_FOUND": "未找到模块:{modulePath}。{hint}",
|
|
59
|
+
"HINT_MODULE_NOT_FOUND": "请确保模块存在且路径正确。检查导入语句中是否存在拼写错误。",
|
|
30
60
|
"MODULE_IMPORT_FAILED": "导入模块 '{modulePath}' 失败:{error}。请检查文件是否存在且语法正确。",
|
|
61
|
+
"HINT_MODULE_IMPORT_FAILED": "请确保模块文件存在且可导入。检查语法错误或缺失的依赖项。",
|
|
31
62
|
"CONTEXT_ALREADY_EXISTS": "实例 '{instanceID}' 的上下文已存在。不能初始化两次。",
|
|
63
|
+
"HINT_CONTEXT_ALREADY_EXISTS": "此上下文已存在。请检查是否尝试初始化同一实例两次。",
|
|
32
64
|
"CONTEXT_NOT_FOUND": "未找到实例 '{instanceID}' 的上下文。实例可能已关闭。可用实例:{availableInstances}",
|
|
65
|
+
"HINT_CONTEXT_NOT_FOUND": "请确保 slothlet 实例已初始化,且在访问前已创建上下文。检查是否使用了正确的实例 ID。",
|
|
33
66
|
"CONTEXT_EXECUTION_FAILED": "在实例 '{instanceID}' 的上下文中执行失败:{error}",
|
|
67
|
+
"HINT_CONTEXT_EXECUTION_FAILED": "执行函数时出错。请查看错误详情以获取更多信息。",
|
|
34
68
|
"NO_ACTIVE_CONTEXT_LIVE": "没有活动上下文 - 当前没有实例处于 live 绑定模式。",
|
|
69
|
+
"HINT_NO_ACTIVE_CONTEXT_LIVE": "未找到活动上下文。请确保您在 slothlet 实时上下文(live context)下调用此函数。",
|
|
35
70
|
"NO_ACTIVE_CONTEXT_ASYNC": "没有活动上下文 - 必须在 slothlet API 上下文中调用函数。",
|
|
71
|
+
"HINT_NO_ACTIVE_CONTEXT_ASYNC": "未找到活动上下文。请确保您在 slothlet 异步上下文(async context)下调用此函数。",
|
|
36
72
|
"RUNTIME_NO_ACTIVE_CONTEXT_SELF": "没有活动上下文 - 无法访问 'self'。请确保您在 Slothlet API 函数内部进行调用。",
|
|
73
|
+
"HINT_RUNTIME_NO_ACTIVE_CONTEXT_SELF": "无法在 slothlet API 函数上下文之外访问 'self'。",
|
|
37
74
|
"RUNTIME_NO_ACTIVE_CONTEXT_CONTEXT": "没有活动上下文 - 'context' 只能在 slothlet API 调用中修改。",
|
|
75
|
+
"HINT_RUNTIME_NO_ACTIVE_CONTEXT_CONTEXT": "无法在 slothlet API 函数外部访问 'context'。上下文只能在 slothlet API 调用内部修改。",
|
|
38
76
|
"OWNERSHIP_INVALID_MODULE_ID": "无效的所有权注册:moduleID '{moduleID}' 无效。",
|
|
77
|
+
"HINT_OWNERSHIP_INVALID_MODULE_ID": "模块 ID 无效。请确保模块加载正确且 ID 准确。",
|
|
39
78
|
"OWNERSHIP_INVALID_API_PATH": "无效的所有权注册:apiPath '{apiPath}' 无效。",
|
|
79
|
+
"HINT_OWNERSHIP_INVALID_API_PATH": "API 路径无效。请确保路径格式正确。",
|
|
40
80
|
"OWNERSHIP_CONFLICT": "所有权冲突:路径 '{apiPath}' 已被模块 '{existingModuleId}' 拥有,无法分配给 '{newModuleId}'。请使用 forceOverwrite: true 或先调用 removeApi。",
|
|
81
|
+
"HINT_OWNERSHIP_CONFLICT": "路径已被另一个模块拥有。选项:(1) 在 api.add() 选项中使用 forceOverwrite: true;(2) 将冲突配置设置为 'merge' 或 'replace';(3) 先调用 api.slothlet.api.remove() 清除路径。",
|
|
41
82
|
"LOOSE_SET_NOT_OWNED": "模块 {callerApiPath} 无法写入 {apiPath}。模块只能在自己的 apiPath 下写入;要在其他路径注册,请使用 api.slothlet.api.add()。",
|
|
83
|
+
"HINT_LOOSE_SET_NOT_OWNED": "apiPath 为 \"P\" 的模块只能在 \"P.*\" 下写入。要在其他命名空间注册代码,请调用 api.slothlet.api.add()。",
|
|
42
84
|
"LOOSE_SET_RESERVED_KEY": "无法在 apiPath '{apiPath}' 中分配给保留键段 '{segment}'。__proto__、prototype 和 constructor 等名称已被阻止,以防止 API 树受到原型污染。",
|
|
85
|
+
"HINT_LOOSE_SET_RESERVED_KEY": "段 __proto__、prototype 和 constructor 不能用作 apiPath 名称,因为写入它们将更改 JavaScript 原型链。请选择其他名称。",
|
|
43
86
|
"INVALID_DIRECTORY": "无效目录 '{dir}':{error}。请确保目录存在且可访问。",
|
|
87
|
+
"HINT_INVALID_DIRECTORY": "请确保目录路径正确,且目录存在且可访问。",
|
|
44
88
|
"WARN_DIRECTORY_EMPTY": "目录 '{dir}'(解析路径:'{resolvedPath}')为空或不包含可加载模块(.mjs, .cjs, .js 文件)。这在 add-api 工作流程中是有效的,但可能表明路径配置有误。",
|
|
89
|
+
"HINT_WARN_DIRECTORY_EMPTY": "请检查目录路径是否正确。在模块动态加载的 add-api 工作流中,空目录是合法的。",
|
|
90
|
+
"WARN_SYNTHETIC_ROOT_EMPTY": "在 API 路径 '{apiPath}' 的合成添加未提供任何叶子;未挂载任何内容。",
|
|
91
|
+
"HINT_WARN_SYNTHETIC_ROOT_EMPTY": "请至少提供一个导出(具名默认函数或具名导出),以便合成添加有可挂载的内容。",
|
|
92
|
+
"WARN_SYNTHETIC_ROOT_UNNAMED": "API 根处的合成添加包含匿名默认导出;无法将其作为键挂载到根,已跳过。",
|
|
93
|
+
"HINT_WARN_SYNTHETIC_ROOT_UNNAMED": "为默认函数命名(其名称将成为根键)、提供具名导出,或将叶子挂载到具名的 apiPath。",
|
|
94
|
+
"WARN_SYNTHETIC_ROOT_COLLISION": "API 根处的合成添加将其默认导出重新键为 '{name}',但具名导出已使用 '{name}';具名导出优先。",
|
|
95
|
+
"HINT_WARN_SYNTHETIC_ROOT_COLLISION": "重命名默认函数或冲突的具名导出,使各自占用不同的根键。",
|
|
45
96
|
"INTERNAL_HOOK_STATE_CORRUPT": "[内部错误] HookManager 状态损坏:钩子 \"{hookId}\" ({type}/{subset}/{pattern}) — {detail}。这是一个 Slothlet 的缺陷 — 请报告它。",
|
|
97
|
+
"HINT_INTERNAL_HOOK_STATE_CORRUPT": "HookManager 内部状态不一致。这在正常使用中不应发生 — 请提交缺陷报告,并说明您是如何调用 hook.on() 和 hook.remove() 的。",
|
|
46
98
|
"WARNING_RESERVED_PROPERTY_CONFLICT": "用户 API 与保留属性冲突:{properties}",
|
|
99
|
+
"HINT_WARNING_RESERVED_PROPERTY_CONFLICT": "'slothlet' 属性名称已保留供内建 API 方法使用。请重命名您的 API 模块或属性,以避免与 slothlet.shutdown()、slothlet.api.* 等发生冲突。",
|
|
47
100
|
"WARNING_LANGUAGE_LOAD_FAILED": "加载语言 '{lang}' 失败,正在回退到英语。",
|
|
48
101
|
"WARNING_LANGUAGE_UNAVAILABLE": "语言 '{lang}' 不可用,正在使用英语。",
|
|
49
102
|
"WARNING_OWNERSHIP_CONFLICT": "'{apiPath}'处的所有权冲突:已被 '{existingModuleId}' 拥有,无法注册 '{newModuleId}'。保留现有所有权。",
|
|
103
|
+
"HINT_WARNING_OWNERSHIP_CONFLICT": "路径已被另一个模块拥有。若要强制覆盖,请在 api.add() 选项中使用 forceOverwrite: true,或先调用 api.slothlet.api.remove() 清除路径。",
|
|
50
104
|
"WARNING_HOT_RELOAD_PATH_COLLISION": "{apiPath} 处的路径冲突 - 保留现有值(冲突模式:warn)。",
|
|
105
|
+
"HINT_WARNING_HOT_RELOAD_PATH_COLLISION": "热重载期间在指定路径发生冲突。正在保留现有值。若要强制替换,请将冲突模式设置为 'replace' 而非 'warn'。",
|
|
51
106
|
"WARNING_HOT_RELOAD_MERGE_PRIMITIVES": "无法合并 {apiPath} 处的原始值 - 保留现有值。请使用冲突模式 'replace' 来覆盖,或确保两个值都是对象。",
|
|
107
|
+
"HINT_WARNING_HOT_RELOAD_MERGE_PRIMITIVES": "无法合并原始值(字符串、数字、布尔值)。若要替换该值,请使用冲突模式 'replace';若要保留现有值,请继续使用 'warn' 模式。",
|
|
52
108
|
"WARNING_COLLISION_FILE_FOLDER_MERGE": "在 '{key}' 处检测到冲突 - 正在合并文件和文件夹导出(冲突模式:'warn')。",
|
|
53
109
|
"HINT_WARNING_COLLISION_FILE_FOLDER_MERGE": "在 '{key}' 处,一个文件和一个文件夹共享相同的名称。它们的导出正在合并。请重命名其中一个以避免歧义,或者如果不打算合并,请将 collisionMode 设置为 'replace' 或 'error' 中的一个。",
|
|
54
110
|
"WARNING_COLLISION_DEFAULT_EXPORT_OVERWRITE": "冲突警告:属性 '{key}' 已存在于 {apiPath} 的默认导出函数上。具名导出将覆盖它。",
|
|
@@ -58,10 +114,13 @@
|
|
|
58
114
|
"WARNING_LIFECYCLE_HANDLER_ERROR": "生命周期事件处理程序为事件 '{event}' 抛出错误。该事件的其他处理程序继续执行。",
|
|
59
115
|
"HINT_WARNING_LIFECYCLE_HANDLER_ERROR": "为 '{event}' 事件注册的生命周期处理程序抛出错误。请检查您的 lifecycle.on('{event}', ...) 处理程序是否存在错误。同一事件中的其他处理程序不受影响。",
|
|
60
116
|
"WARNING_MULTIPLE_ROOT_CONTRIBUTORS": "检测到多个根级默认函数导出:{rootContributors}。每个导出已通过文件名(例如 api.{firstContributor}())进行命名空间划分。请考虑使用单个根级默认导出或将文件移动到子目录中。",
|
|
117
|
+
"HINT_WARNING_MULTIPLE_ROOT_CONTRIBUTORS": "在根层级检测到多个文件导出默认函数。每个导出已被划分至对应的命名空间(例如 api.filename())。请考虑将它们整合为单个根导出,或将文件移动到子目录中以方便管理。",
|
|
61
118
|
"WARN_SUPPRESS_FIX_ACTIVE": "规则修复 '{rule}' 已通过 'suppressFixes' 被禁用。详情请参阅 {url}。这是一个临时覆盖,将在 v4 中移除。'{rule}' 的修正行为将被永久执行。",
|
|
62
119
|
"HINT_WARN_SUPPRESS_FIX_ACTIVE": "在升级到 v4 之前,请从 'suppressFixes' 中删除 '{rule}',并更新您的 API 目录结构以适应修正后的行为。",
|
|
63
120
|
"V3_CONFIG_DEPRECATED": "配置选项 '{option}' 已弃用,将在 v4 中移除。请改用 '{replacement}'。",
|
|
121
|
+
"HINT_V3_CONFIG_DEPRECATED": "此配置选项已重命名以提高清晰度。请更新代码以使用新选项名称,以确保与 v4 的向前兼容性。",
|
|
64
122
|
"V2_CONFIG_UNSUPPORTED": "v2 中的配置选项 '{option}' 在 v3 中不受支持。{hint} 请改为使用 '{replacement}'。",
|
|
123
|
+
"HINT_V2_CONFIG_UNSUPPORTED": "v2 中的此配置选项在 v3 中不受支持。请更新您的配置以使用 v3 的对应项,从而获得更好的控制权和清晰度。",
|
|
65
124
|
"DEBUG_MODE_ROOT_CONTRIBUTOR": "[{mode}] 检测到根贡献者:{functionName}",
|
|
66
125
|
"DEBUG_MODE_ROOT_CONTRIBUTOR_APPLIED": "[{mode}] 应用了根贡献者模式 - 具有 {properties} 个附加属性的函数 API",
|
|
67
126
|
"DEBUG_MODE_PROCESSING_DIRECTORY": "[{mode}] 正在处理目录:{categoryName}(深度 {currentDepth})",
|
|
@@ -230,72 +289,15 @@
|
|
|
230
289
|
"DEBUG_MODE_LAZY_WRAPPER_MATERIALIZED": "延迟包装器已实例化",
|
|
231
290
|
"DEBUG_MODE_ALL_LAZY_WRAPPERS_MATERIALIZED": "所有延迟包装器均已实例化",
|
|
232
291
|
"HINT_REFERENCE_REMOVED": "'reference' 导出已从 '@cldmv/slothlet/runtime' 中移除。引用对象现在直接合并到 API 中。请通过 'self.*'(例如 'self.myRefProperty')访问它们。",
|
|
233
|
-
"HINT_MODULE_NOT_FOUND": "请确保模块存在且路径正确。检查导入语句中是否存在拼写错误。",
|
|
234
292
|
"HINT_SYNTAX_ERROR": "请检查模块文件的语法错误。常见问题:缺少括号、字符串未闭合或 JavaScript 语法无效。",
|
|
235
|
-
"HINT_CONTEXT_NOT_FOUND": "请确保 slothlet 实例已初始化,且在访问前已创建上下文。检查是否使用了正确的实例 ID。",
|
|
236
|
-
"HINT_CONTEXT_ALREADY_EXISTS": "此上下文已存在。请检查是否尝试初始化同一实例两次。",
|
|
237
|
-
"HINT_CONTEXT_EXECUTION_FAILED": "执行函数时出错。请查看错误详情以获取更多信息。",
|
|
238
|
-
"HINT_NO_ACTIVE_CONTEXT": "未找到活动上下文。请确保您在 slothlet 上下文(async 或 live 模式)下调用此函数。",
|
|
239
|
-
"HINT_NO_ACTIVE_CONTEXT_ASYNC": "未找到活动上下文。请确保您在 slothlet 异步上下文(async context)下调用此函数。",
|
|
240
|
-
"HINT_NO_ACTIVE_CONTEXT_LIVE": "未找到活动上下文。请确保您在 slothlet 实时上下文(live context)下调用此函数。",
|
|
241
|
-
"HINT_OWNERSHIP_INVALID_MODULE_ID": "模块 ID 无效。请确保模块加载正确且 ID 准确。",
|
|
242
|
-
"HINT_OWNERSHIP_INVALID_API_PATH": "API 路径无效。请确保路径格式正确。",
|
|
243
|
-
"HINT_OWNERSHIP_CONFLICT": "路径已被另一个模块拥有。选项:(1) 在 api.add() 选项中使用 forceOverwrite: true;(2) 将冲突配置设置为 'merge' 或 'replace';(3) 先调用 api.slothlet.api.remove() 清除路径。",
|
|
244
|
-
"HINT_INVALID_CONFIG": "请检查配置值,并确保其符合预期的类型和格式。",
|
|
245
|
-
"HINT_INVALID_CONFIG_DIR_INVALID": "请确保目录路径是有效的字符串,并指向一个现有的目录。",
|
|
246
|
-
"HINT_INVALID_CONFIG_FORCE_OVERWRITE_REQUIRES_MODULE_ID": "使用 forceOverwrite 或 allowOverwrite 时,必须提供唯一的 moduleID 以跟踪被覆盖路径的所有权。",
|
|
247
|
-
"HINT_COLLISION_ERROR": "冲突模式设置为 'error',会阻止任何覆盖。请改用 'merge'(合并属性)、'replace'(完全覆盖)、'warn'(警告但保留现有)或 'skip'(默默忽略)。",
|
|
248
|
-
"HINT_COLLISION_DEFAULT_EXPORT_ERROR": "具名导出与此路径下默认导出对象上已存在属性冲突。请将冲突模式更改为 'merge'、'replace'、'warn' 或 'skip',或者重命名冲突的属性。",
|
|
249
|
-
"HINT_INVALID_ARGUMENT": "路径必须是点分写法字符串(例如 'math.add')。",
|
|
250
|
-
"HINT_RUNTIME_NO_ACTIVE_CONTEXT": "metadata.self() 必须在 slothlet API 函数内部调用。",
|
|
251
|
-
"HINT_INVALID_CONFIG_MODE_INVALID": "模式必须是 'eager' 或 'lazy' 之一。",
|
|
252
|
-
"HINT_INVALID_CONFIG_MODE_UNKNOWN": "指定了未知的模式。请使用 'eager' 或 'lazy'。",
|
|
253
|
-
"HINT_INVALID_CONFIG_DIR_MISSING": "必须提供目录路径,但当前未提供。",
|
|
254
|
-
"HINT_INVALID_CONFIG_API_PATH_INVALID": "请确保 API 路径是一个有效的点分写法字符串(例如 'plugins.tools'),其中不包含空片段或保留名称(slothlet, shutdown, destroy)。",
|
|
255
|
-
"HINT_INVALID_CONFIG_MUTATIONS_DISABLED": "API 变动操作要求在配置中设置 allowMutation: true。请通过 diagnostics: true 访问这些方法以进行测试,而无需实际启用变动。",
|
|
256
|
-
"HINT_CACHE_MODULEID_MISMATCH": "这是一个由于缓存损坏导致的内部错误。请报告此问题并提供复现步骤。",
|
|
257
|
-
"HINT_CACHE_NOT_FOUND": "请确保在尝试重载或重建缓存前已加载模块。检查 moduleID 是否正确。",
|
|
258
|
-
"HINT_CACHE_MANAGER_NOT_AVAILABLE": "缓存管理器应自动初始化。如果您看到此错误,可能表明内部初始化存在问题。",
|
|
259
|
-
"HINT_INVALID_METADATA_TARGET": "目标必须是通过 Slothlet 加载的函数或对象。请传递实际的函数/对象引用,而不是字符串或原始值。",
|
|
260
|
-
"HINT_METADATA_NO_MODULE_ID": "请确保函数/对象是通过 Slothlet 的模块系统加载的。只有 Slothlet 管理的函数才具有相关的元数据。",
|
|
261
|
-
"HINT_METADATA_LIFECYCLE_BYPASS": "切勿直接调用 tagSystemMetadata()。请改用 'impl:created' 或 'impl:changed' 生命周期函数,它们会通过正确渠道调用 tagSystemMetadata()。",
|
|
262
|
-
"HINT_INVALID_METADATA_KEY": "元数据键必须是字符串、字符串数组或带有数组值的对象。请检查键格式是否符合这几种类型之一。",
|
|
263
|
-
"HINT_WARNING_METADATA_MISMATCH": "此警告表示函数的执行位置与其注册的元数据路径不符。这可能发生在热重载期间,或者函数被篡改时。在大多数启用了热重载的开发环境下,这是正常现象。",
|
|
264
|
-
"HINT_WARNING_INIT_COMPONENT_SKIPPED": "导入失败的组件文件将被跳过。对于可选组件而言,这是正常的。如果确需加载该组件,请查看错误详情。",
|
|
265
|
-
"HINT_WARNING_MULTIPLE_ROOT_CONTRIBUTORS": "在根层级检测到多个文件导出默认函数。每个导出已被划分至对应的命名空间(例如 api.filename())。请考虑将它们整合为单个根导出,或将文件移动到子目录中以方便管理。",
|
|
266
|
-
"HINT_WARNING_HOT_RELOAD_PATH_COLLISION": "热重载期间在指定路径发生冲突。正在保留现有值。若要强制替换,请将冲突模式设置为 'replace' 而非 'warn'。",
|
|
267
|
-
"HINT_WARNING_HOT_RELOAD_MERGE_PRIMITIVES": "无法合并原始值(字符串、数字、布尔值)。若要替换该值,请使用冲突模式 'replace';若要保留现有值,请继续使用 'warn' 模式。",
|
|
268
|
-
"HINT_WARNING_OWNERSHIP_CONFLICT": "路径已被另一个模块拥有。若要强制覆盖,请在 api.add() 选项中使用 forceOverwrite: true,或先调用 api.slothlet.api.remove() 清除路径。",
|
|
269
|
-
"HINT_V2_CONFIG_UNSUPPORTED": "v2 中的此配置选项在 v3 中不受支持。请更新您的配置以使用 v3 的对应项,从而获得更好的控制权和清晰度。",
|
|
270
|
-
"HINT_V3_CONFIG_DEPRECATED": "此配置选项已重命名以提高清晰度。请更新代码以使用新选项名称,以确保与 v4 的向前兼容性。",
|
|
271
|
-
"HINT_MODULE_LOAD_FAILED": "请检查模块文件是否存在错误。确保其具有有效的 JavaScript 语法和导出。",
|
|
272
|
-
"HINT_MODULE_IMPORT_FAILED": "请确保模块文件存在且可导入。检查语法错误或缺失的依赖项。",
|
|
273
|
-
"HINT_MODULE_NO_EXPORTS": "模块必须导出一个或多个函数或对象。",
|
|
274
|
-
"HINT_INVALID_DIRECTORY": "请确保目录路径正确,且目录存在且可访问。",
|
|
275
|
-
"HINT_WARN_DIRECTORY_EMPTY": "请检查目录路径是否正确。在模块动态加载的 add-api 工作流中,空目录是合法的。",
|
|
276
|
-
"HINT_INVALID_CONFIG_LAZY_NOT_READY": "在延迟(lazy)模式下,请在调用函数前通过访问属性来触发实例化。",
|
|
277
|
-
"HINT_INTERNAL_INVALID_STATE": "发生内部状态错误。这很可能是一个缺陷 — 请提供详细信息以便报告。",
|
|
278
|
-
"HINT_INTERNAL_HOOK_STATE_CORRUPT": "HookManager 内部状态不一致。这在正常使用中不应发生 — 请提交缺陷报告,并说明您是如何调用 hook.on() 和 hook.remove() 的。",
|
|
279
|
-
"HINT_INVALID_CONFIG_LAZY_ASYNC_REQUIRED": "延迟模式需要异步操作。请使用立即(eager)模式或实现适当的异步模式。",
|
|
280
|
-
"HINT_RUNTIME_NO_ACTIVE_CONTEXT_SELF": "无法在 slothlet API 函数上下文之外访问 'self'。",
|
|
281
|
-
"HINT_RUNTIME_NO_ACTIVE_CONTEXT_CONTEXT": "无法在 slothlet API 函数外部访问 'context'。上下文只能在 slothlet API 调用内部修改。",
|
|
282
|
-
"HINT_LOOSE_SET_NOT_OWNED": "apiPath 为 \"P\" 的模块只能在 \"P.*\" 下写入。要在其他命名空间注册代码,请调用 api.slothlet.api.add()。",
|
|
283
|
-
"HINT_LOOSE_SET_RESERVED_KEY": "段 __proto__、prototype 和 constructor 不能用作 apiPath 名称,因为写入它们将更改 JavaScript 原型链。请选择其他名称。",
|
|
284
|
-
"HINT_INVALID_CONFIG_NOT_LOADED": "在执行此操作前必须加载实例。请先调用 load()。",
|
|
285
|
-
"HINT_INVALID_CONFIG_RELOAD_NOT_IMPL": "提示:重载功能尚未实现,计划在未来的版本中添加。",
|
|
286
|
-
"HINT_WARNING_RESERVED_PROPERTY_CONFLICT": "'slothlet' 属性名称已保留供内建 API 方法使用。请重命名您的 API 模块或属性,以避免与 slothlet.shutdown()、slothlet.api.* 等发生冲突。",
|
|
287
|
-
"HINT_DEPRECATED_CONFIG_OPTION": "此配置选项已弃用,并将在未来版本中移除。请更新您的配置以使用推荐的替代项。",
|
|
288
|
-
"HINT_ERROR_RUNTIME_IMPORT_FAILED": "无法加载运行时模块。如果 @cldmv/slothlet/runtime 导出不可用或存在循环依赖,则可能会出现此问题。某些需要运行时访问的功能可能会受到限制。",
|
|
289
|
-
"INVALID_HOOK_TYPE": "无效的钩子类型 \"{type}\"。必须是以下之一:{validTypes}。",
|
|
290
293
|
"INVALID_HOOK_HANDLER": "钩子处理程序必须是一个函数。接收到的类型:{receivedType}。",
|
|
291
|
-
"DUPLICATE_HOOK_ID": "ID 为 \"{id}\" 的钩子已存在。请使用唯一的 ID,或省略 id 选项以自动生成一个。",
|
|
292
|
-
"INVALID_HOOK_SUBSET": "无效的钩子子集 \"{subset}\"。必须是 \"before\"、\"primary\" 或 \"after\"。有效的子集:{validSubsets}。",
|
|
293
|
-
"INVALID_TYPE_PATTERN": "无效的类型模式 \"{typePattern}\"。{expected}",
|
|
294
|
-
"HINT_INVALID_HOOK_TYPE": "请使用有效的钩子类型:before、after、always 或 error。",
|
|
295
294
|
"HINT_INVALID_HOOK_HANDLER": "请提供一个函数作为钩子处理程序,而不是字符串或其他类型。",
|
|
295
|
+
"DUPLICATE_HOOK_ID": "ID 为 \"{id}\" 的钩子已存在。请使用唯一的 ID,或省略 id 选项以自动生成一个。",
|
|
296
296
|
"HINT_DUPLICATE_HOOK_ID": "请使用不同的 id 值,或者移除 id 选项以便让 Slothlet 自动生成唯一的 ID。",
|
|
297
|
+
"INVALID_HOOK_SUBSET": "无效的钩子子集 \"{subset}\"。必须是 \"before\"、\"primary\" 或 \"after\"。有效的子集:{validSubsets}。",
|
|
297
298
|
"HINT_INVALID_HOOK_SUBSET": "子集控制着执行顺序。前置处理请用 'before',主要钩子请用 'primary'(默认),后置处理请用 'after'。",
|
|
298
|
-
"
|
|
299
|
+
"INVALID_TYPE_PATTERN": "无效的类型模式 \"{typePattern}\"。{expected}",
|
|
300
|
+
"HINT_INVALID_TYPE_PATTERN": "钩子模式使用 'pattern:type' 形式,例如 'math.*:before' 或 '**:error'。旧的 'type:pattern' 形式仍然有效,但已弃用。",
|
|
299
301
|
"HOOK_BEFORE_RETURNED_PROMISE": "路径 '{path}' 的前置钩子 '{id}' 返回了一个 Promise。前置钩子必须是同步的。",
|
|
300
302
|
"HINT_HOOK_BEFORE_RETURNED_PROMISE": "前置钩子在 API 调用前同步执行。请从此钩子中移除 async/await 或 Promise 的使用,如果需要异步处理,请改用 'after' 钩子。",
|
|
301
303
|
"HOOK_BRACE_EXPANSION_MAX_DEPTH": "钩子模式中的大括号扩展超过了最大嵌套深度 {maxDepth}。",
|
|
@@ -383,11 +385,11 @@
|
|
|
383
385
|
"INVALID_CONFIG_VERSION_DISPATCHER": "config.versionDispatcher 必须是字符串(元数据键)或函数;收到:{received}",
|
|
384
386
|
"INVALID_CONFIG_VERSION_TAG": "versionConfig.version 必须是非空字符串;收到:{received}",
|
|
385
387
|
"VERSION_NOT_FOUND": "版本 '{version}' 未在路径 '{apiPath}' 注册。",
|
|
388
|
+
"HINT_VERSION_NOT_FOUND": "调用 api.slothlet.versioning.list('{apiPath}') 查看当前在该路径注册的版本标签。",
|
|
386
389
|
"VERSION_NO_DEFAULT": "路径 '{apiPath}' 未配置默认版本,且无法从调用方元数据中解析版本。",
|
|
387
390
|
"VERSION_DISPATCH_NOT_CALLABLE": "'{apiPath}' 处的版本调度器是命名空间,不是可调用函数。",
|
|
388
391
|
"VERSION_REGISTER_DUPLICATE": "版本 '{version}' 已在路径 '{apiPath}' 注册。使用 collisionMode 'replace' 覆盖。",
|
|
389
392
|
"HINT_VERSION_REGISTER_DUPLICATE": "请先调用 api.slothlet.versioning.unregister('{apiPath}', '{version}'),或使用不同的版本标签注册。",
|
|
390
|
-
"HINT_VERSION_NOT_FOUND": "调用 api.slothlet.versioning.list('{apiPath}') 查看当前在该路径注册的版本标签。",
|
|
391
393
|
"VERSION_DISCRIMINATOR_INVALID_RETURN": "versionDispatcher 函数返回了 '{returned}',它不是路径 '{apiPath}' 的已注册版本标签。",
|
|
392
394
|
"DEBUG_VERSION_RESOLVED": "已解析版本:{version},路径:{apiPath}(调用方:{callerModule})",
|
|
393
395
|
"DEBUG_VERSION_DEFAULT_USED": "路径 {apiPath} 无匹配判别器;使用默认版本 {version}。",
|
|
@@ -417,7 +419,27 @@
|
|
|
417
419
|
"HINT_MODULE_MANIFEST_NOT_FOUND": "插件模块必须在包根目录提供 'slothlet.module.json'(或通过 `manifest` 覆盖指定的文件/键)。请检查文件是否存在于包中以及覆盖定位符是否正确。",
|
|
418
420
|
"MODULE_MANIFEST_INVALID": "包 '{packageName}' 的模块清单在 '{manifestPath}' 处无效:{reason}。",
|
|
419
421
|
"HINT_MODULE_MANIFEST_INVALID": "打开清单并确保它是有效的 JSON 且符合 slothlet 模块架构(参见 schemas/slothlet.module.schema.json)。必需字段:schemaVersion、mountPath、apiDir。",
|
|
420
|
-
"
|
|
422
|
+
"MODULE_MANIFEST_REASON_NOT_OBJECT": "清单必须是 JSON 对象",
|
|
423
|
+
"MODULE_MANIFEST_REASON_MISSING_FIELD": "缺少必填字段 '{field}'",
|
|
424
|
+
"MODULE_MANIFEST_REASON_FIELD_TYPE": "字段 '{field}' 必须是 {expected}",
|
|
425
|
+
"EXPECTED_NON_EMPTY_STRING": "非空字符串",
|
|
426
|
+
"EXPECTED_STRING": "字符串",
|
|
427
|
+
"EXPECTED_FINITE_NUMBER": "有限数字",
|
|
428
|
+
"EXPECTED_PLAIN_OBJECT": "普通对象",
|
|
429
|
+
"EXPECTED_ARRAY_OF_RULE_OBJECTS": "规则对象数组",
|
|
430
|
+
"MODULE_MANIFEST_REASON_MOUNTPATH_SHAPE": "字段 'mountPath' 必须是非空字符串或非空字符串数组(每个元素均为非空字符串)",
|
|
431
|
+
"MODULE_MANIFEST_REASON_MOUNTPATH_ENTRIES": "字段 'mountPath' 数组的所有元素必须为非空字符串",
|
|
432
|
+
"MODULE_MANIFEST_REASON_DEPENDENCY_TYPE": "依赖项 '{dependency}' 必须是字符串版本范围",
|
|
433
|
+
"MODULE_MANIFEST_REASON_PERMISSION_RULE": "permissions[{index}] 必须是规则对象",
|
|
434
|
+
"MODULE_MANIFEST_REASON_PERMISSION_CALLER": "permissions[{index}].caller 必须是非空字符串",
|
|
435
|
+
"MODULE_MANIFEST_REASON_PERMISSION_TARGET": "permissions[{index}].target 必须是非空字符串",
|
|
436
|
+
"MODULE_MANIFEST_REASON_PERMISSION_EFFECT": "permissions[{index}].effect 必须是 \"allow\" 或 \"deny\"",
|
|
437
|
+
"MODULE_MANIFEST_REASON_JSON_PARSE": "JSON 解析错误:{error}",
|
|
438
|
+
"GENERATE_MANIFEST_DIR_INVALID": "generateManifest:dir 必须是非空字符串,收到 {received}",
|
|
439
|
+
"GENERATE_MANIFEST_DIR_UNREADABLE": "generateManifest:无法读取目录 \"{dir}\":{reason}",
|
|
440
|
+
"GENERATE_MANIFEST_NOT_DIRECTORY": "generateManifest:\"{dir}\" 不是目录",
|
|
441
|
+
"GENERATE_BROWSER_ASSETS_SLOTHLET_BASE_INVALID": "generateBrowserAssets:options.slothletBase 必须是字符串(@cldmv/slothlet 在浏览器中的服务路径),收到 {received}",
|
|
442
|
+
"MODULE_MANIFEST_UNKNOWN_FIELD": "包 '{packageName}' 在 '{manifestPath}' 处的模块清单包含无法识别的顶层字段 '{field}'。未知字段将被拒绝;请使用专用的 'metadata' 块来存放开发者定义的附加项。",
|
|
421
443
|
"HINT_MODULE_MANIFEST_UNKNOWN_FIELD": "如果 '{field}' 是拼写错误,请修正。如果是有意的开发者元数据,请将其移到 'metadata' 对象内。",
|
|
422
444
|
"MODULE_MANIFEST_NAME_MISMATCH": "包 '{packageName}' 的模块清单声明名称 '{manifestName}',与 package.json 中的名称 '{packageName}' 不匹配。",
|
|
423
445
|
"HINT_MODULE_MANIFEST_NAME_MISMATCH": "slothlet.module.json 中的 'name' 字段是可选的,但存在时必须与 package.json 匹配。请删除清单中的 'name' 字段或使其与 package.json 一致。",
|
|
@@ -434,7 +456,11 @@
|
|
|
434
456
|
"MODULE_DUPLICATE_NAME_VERSION_MISMATCH": "模块包 '{packageName}' 版本 '{version}' 在多个不同的真实路径中被发现:{paths}。",
|
|
435
457
|
"HINT_MODULE_DUPLICATE_NAME_VERSION_MISMATCH": "这几乎肯定是配置错误 — 同一版本的同一包安装在两个不相关的位置。请调查哪个安装是预期的并删除另一个。",
|
|
436
458
|
"MODULE_MOUNT_COLLISION": "模块包 '{packageName}' 无法挂载在 '{mountPath}':路径已被模块 '{existingModuleID}' 占用且 collisionMode 为 '{collisionMode}'。",
|
|
437
|
-
"HINT_MODULE_MOUNT_COLLISION": "更改清单的 mountPath,向 `addModule()` / `addModules()` 传递 `collisionMode: \"merge\"` 以允许共存,或先在现有模块上调用 `removeModule()`。"
|
|
459
|
+
"HINT_MODULE_MOUNT_COLLISION": "更改清单的 mountPath,向 `addModule()` / `addModules()` 传递 `collisionMode: \"merge\"` 以允许共存,或先在现有模块上调用 `removeModule()`。",
|
|
460
|
+
"HOOK_TYPEPATTERN_PREFIX_DEPRECATED": "钩子注册形式 '{given}' 已弃用,将在 v4 中移除。请改用路径在前的形式 '{suggested}'(例如 'math.*:before')。",
|
|
461
|
+
"HINT_HOOK_TYPEPATTERN_PREFIX_DEPRECATED": "将钩子类型移到末尾作为后缀:把类型在前的选择器(如 'before:math.add')改写为路径在前的形式 'math.add:before'。",
|
|
462
|
+
"HOOK_UNPINNED_IGNORED": "钩子 '{pattern}' 的 lockCaller:false 已被忽略;钩子会绑定到注册它的模块。设置 hook.pin:false(初始化)或调用 api.slothlet.hook.pin.disable() 以允许未绑定的钩子。",
|
|
463
|
+
"HINT_HOOK_UNPINNED_IGNORED": "出于安全考虑,模块注册的钩子始终绑定到其所有者。若要允许未绑定的钩子,请在 slothlet 配置中设置 hook.pin:false,或在运行时调用 api.slothlet.hook.pin.disable()。"
|
|
438
464
|
},
|
|
439
465
|
"metadata": {
|
|
440
466
|
"code": "zh-cn",
|
package/dist/lib/modes/eager.mjs
CHANGED
|
@@ -14,4 +14,4 @@
|
|
|
14
14
|
limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import{ComponentBase}from"@cldmv/slothlet/factories/component-base";class EagerMode extends ComponentBase{static slothletProperty="eager";constructor(slothlet){super(slothlet)}async buildAPI({dir,apiPathPrefix="",collisionContext="initial",moduleID,apiDepth=Infinity,cacheBust=null,fileFilter=null}){const api={};const{modesProcessor}=this.slothlet.builders;const{loader}=this.slothlet.processors;const structure=await loader.scanDirectory(dir,{maxDepth:apiDepth,fileFilter});const rootDirectory={name:".",path:dir,children:{files:structure.files,directories:structure.directories}};const rootDefaultFunction=await modesProcessor.processFiles(api,structure.files,rootDirectory,0,"eager",true,true,false,apiPathPrefix,collisionContext,moduleID,dir,cacheBust);return modesProcessor.applyRootContributor(api,rootDefaultFunction,"eager")}}export{EagerMode};
|
|
17
|
+
import{ComponentBase}from"@cldmv/slothlet/factories/component-base";class EagerMode extends ComponentBase{static slothletProperty="eager";constructor(slothlet){super(slothlet)}async buildAPI({dir,apiPathPrefix="",collisionContext="initial",moduleID,apiDepth=Infinity,cacheBust=null,fileFilter=null,preloadedStructure=null}){const api={};const{modesProcessor}=this.slothlet.builders;const{loader}=this.slothlet.processors;if(preloadedStructure!=null&&(!Array.isArray(preloadedStructure.files)||!Array.isArray(preloadedStructure.directories))){const filesType=Array.isArray(preloadedStructure.files)?"array":typeof preloadedStructure.files;const directoriesType=Array.isArray(preloadedStructure.directories)?"array":typeof preloadedStructure.directories;const received=`{ files: ${filesType}, directories: ${directoriesType} }`;throw new this.SlothletError("INVALID_CONFIG_PRELOADED_STRUCTURE",{received},null,{validationError:true})}const structure=preloadedStructure??await loader.scanDirectory(dir,{maxDepth:apiDepth,fileFilter});const rootDirectory={name:".",path:dir,children:{files:structure.files,directories:structure.directories}};const rootDefaultFunction=await modesProcessor.processFiles(api,structure.files,rootDirectory,0,"eager",true,true,false,apiPathPrefix,collisionContext,moduleID,dir,cacheBust);return modesProcessor.applyRootContributor(api,rootDefaultFunction,"eager")}}export{EagerMode};
|
package/dist/lib/modes/lazy.mjs
CHANGED
|
@@ -14,4 +14,4 @@
|
|
|
14
14
|
limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import{ComponentBase}from"@cldmv/slothlet/factories/component-base";class LazyMode extends ComponentBase{static slothletProperty="lazy";constructor(slothlet){super(slothlet)}createNamedMaterializeFunc(apiPath,handler){const safePath=String(apiPath||"api").replace(/\./g,"__").replace(/[^A-Za-z0-9_$]/g,"_");const normalized=/^[A-Za-z_$]/.test(safePath[0])?safePath:`_${safePath}`;const funcName=`${normalized}__lazy_materializeFunc`;return{[funcName]:async function(...args){return handler(...args)}}[funcName]}async buildAPI({dir,apiPathPrefix="",collisionContext="initial",collisionMode=null,moduleID,apiDepth=Infinity,cacheBust=null,fileFilter=null}){this.slothlet.debug("modes",{key:"DEBUG_MODE_BUILD_LAZY_API_CALLED",apiPathPrefix,collisionMode,collisionContext});const api={};const{modesProcessor}=this.slothlet.builders;const{loader}=this.slothlet.processors;const structure=await loader.scanDirectory(dir,{maxDepth:apiDepth,fileFilter});const rootDirectory={name:".",path:dir,children:{files:structure.files,directories:structure.directories}};const rootDefaultFunction=await modesProcessor.processFiles(api,structure.files,rootDirectory,0,"lazy",true,false,false,apiPathPrefix,collisionContext,moduleID,dir,cacheBust,collisionMode);return modesProcessor.applyRootContributor(api,rootDefaultFunction,"lazy")}}export{LazyMode};
|
|
17
|
+
import{ComponentBase}from"@cldmv/slothlet/factories/component-base";class LazyMode extends ComponentBase{static slothletProperty="lazy";constructor(slothlet){super(slothlet)}createNamedMaterializeFunc(apiPath,handler){const safePath=String(apiPath||"api").replace(/\./g,"__").replace(/[^A-Za-z0-9_$]/g,"_");const normalized=/^[A-Za-z_$]/.test(safePath[0])?safePath:`_${safePath}`;const funcName=`${normalized}__lazy_materializeFunc`;return{[funcName]:async function(...args){return handler(...args)}}[funcName]}async buildAPI({dir,apiPathPrefix="",collisionContext="initial",collisionMode=null,moduleID,apiDepth=Infinity,cacheBust=null,fileFilter=null,preloadedStructure=null}){this.slothlet.debug("modes",{key:"DEBUG_MODE_BUILD_LAZY_API_CALLED",apiPathPrefix,collisionMode,collisionContext});const api={};const{modesProcessor}=this.slothlet.builders;const{loader}=this.slothlet.processors;if(preloadedStructure!=null&&(!Array.isArray(preloadedStructure.files)||!Array.isArray(preloadedStructure.directories))){const filesType=Array.isArray(preloadedStructure.files)?"array":typeof preloadedStructure.files;const directoriesType=Array.isArray(preloadedStructure.directories)?"array":typeof preloadedStructure.directories;const received=`{ files: ${filesType}, directories: ${directoriesType} }`;throw new this.SlothletError("INVALID_CONFIG_PRELOADED_STRUCTURE",{received},null,{validationError:true})}const structure=preloadedStructure??await loader.scanDirectory(dir,{maxDepth:apiDepth,fileFilter});const rootDirectory={name:".",path:dir,children:{files:structure.files,directories:structure.directories}};const rootDefaultFunction=await modesProcessor.processFiles(api,structure.files,rootDirectory,0,"lazy",true,false,false,apiPathPrefix,collisionContext,moduleID,dir,cacheBust,collisionMode);return modesProcessor.applyRootContributor(api,rootDefaultFunction,"lazy")}}export{LazyMode};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cldmv/slothlet",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0",
|
|
4
4
|
"moduleVersions": {
|
|
5
5
|
"lazy": "3.0.0",
|
|
6
6
|
"eager": "3.0.0",
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
"import": "./index.mjs",
|
|
20
20
|
"require": "./index.cjs"
|
|
21
21
|
},
|
|
22
|
+
"./package.json": "./package.json",
|
|
22
23
|
"./typegen": {
|
|
23
24
|
"slothlet-dev": {
|
|
24
25
|
"types": "./types/src/lib/typegen/typegen.d.mts",
|
|
@@ -161,6 +162,8 @@
|
|
|
161
162
|
"audit": "npm run analyze",
|
|
162
163
|
"analyze": "node tools/dev/analyze-errors.mjs",
|
|
163
164
|
"fix:headers": "node tools/dev/fix-headers.mjs",
|
|
165
|
+
"format": "prettier --write . --config .configs/.prettierrc",
|
|
166
|
+
"format:check": "prettier --check . --config .configs/.prettierrc",
|
|
164
167
|
"build": "npm run build:dev",
|
|
165
168
|
"build:ci": "npm run build:cleanup && npm run build:dist && npm run build:minify && npm run build:types && npm run build:exports && npm run test:types && npm run build:prepend-license && npm run ci:cleanup-src",
|
|
166
169
|
"build:dev": "npm run build:cleanup && npm run build:dist && npm run build:minify && npm run build:types && npm run build:exports && npm run test:types && npm run build:prepend-license",
|
|
@@ -281,11 +284,11 @@
|
|
|
281
284
|
}
|
|
282
285
|
},
|
|
283
286
|
"devDependencies": {
|
|
284
|
-
"@cldmv/fix-headers": "^1.
|
|
287
|
+
"@cldmv/fix-headers": "^1.3.0",
|
|
285
288
|
"@cldmv/vitest-runner": "^1.1.0",
|
|
286
289
|
"@eslint/css": "^1.1.0",
|
|
287
290
|
"@eslint/js": "^10.0.1",
|
|
288
|
-
"@eslint/json": "^
|
|
291
|
+
"@eslint/json": "^2.0.0",
|
|
289
292
|
"@eslint/markdown": "^8.0.1",
|
|
290
293
|
"@types/node": "^25.6.0",
|
|
291
294
|
"@vitest/coverage-v8": "^4.1.5",
|
|
@@ -308,7 +311,7 @@
|
|
|
308
311
|
"vitest": "^4.1.5"
|
|
309
312
|
},
|
|
310
313
|
"optionalDependencies": {
|
|
311
|
-
"@rolldown/binding-linux-x64-gnu": "1.0.
|
|
314
|
+
"@rolldown/binding-linux-x64-gnu": "1.0.3"
|
|
312
315
|
},
|
|
313
316
|
"repository": {
|
|
314
317
|
"type": "git",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api_builder.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/api_builder.mjs"],"names":[],"mappings":"AAAoiD;IAAuC,gCAAqC;IAAsC,0CAA66C;IAAA,
|
|
1
|
+
{"version":3,"file":"api_builder.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/api_builder.mjs"],"names":[],"mappings":"AAAoiD;IAAuC,gCAAqC;IAAsC,0CAA66C;IAAA,oDAAs78B;IAAA,6CAAqR;IAAA,uFAA0vB;IAAA,sDAA8sJ;IAAA,qDAAmkB;IAAA,kDAA2Z;CAAC;8BAAhlwC,0CAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/builder.mjs"],"names":[],"mappings":"AAAoE;IAAoC,gCAAkC;IAAsC,
|
|
1
|
+
{"version":3,"file":"builder.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/builder.mjs"],"names":[],"mappings":"AAAoE;IAAoC,gCAAkC;IAAsC,qCAAy2D;CAAC;8BAAjgE,0CAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modes-processor.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/modes-processor.mjs"],"names":[],"mappings":"AAAmQ;IAA2C,gCAAyC;IAAsC,
|
|
1
|
+
{"version":3,"file":"modes-processor.d.mts","sourceRoot":"","sources":["../../../../dist/lib/builders/modes-processor.mjs"],"names":[],"mappings":"AAAmQ;IAA2C,gCAAyC;IAAsC,iSAA6q8B;IAAA,2KAAq3M;IAAA,2EAAwS;CAAC;8BAA/qqC,0CAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-cache-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/api-cache-manager.mjs"],"names":[],"mappings":"AAAoE;IAA4C,gCAA0C;IAAsC,sBAAmB;IAAC,qCAAmtB;IAAA,wBAA+C;IAAA,4BAA+C;IAAA,+BAAoK;IAAA,yBAAwD;IAAA;;;;;;;;;;MAAiT;IAAA,yDAAiU;IAAA,cAA+F;IAAA,
|
|
1
|
+
{"version":3,"file":"api-cache-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/api-cache-manager.mjs"],"names":[],"mappings":"AAAoE;IAA4C,gCAA0C;IAAsC,sBAAmB;IAAC,qCAAmtB;IAAA,wBAA+C;IAAA,4BAA+C;IAAA,+BAAoK;IAAA,yBAAwD;IAAA;;;;;;;;;;MAAiT;IAAA,yDAAiU;IAAA,cAA+F;IAAA,0CAAs2B;CAAC;8BAAhwF,0CAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/api-manager.mjs"],"names":[],"mappings":"AAA2P;IAAuC,gCAAqC;IAAsC;;;;MAAmF;IAAC;;;MAAwwD;IAAA;;;;OAAwsB;IAAA,iDAAymB;IAAA,wEAAiL;IAAA,2CAA6L;IAAA,2DAAqxB;IAAA,qEAA+6D;IAAA,oCAA0H;IAAA,wHAAsyI;IAAA,4FAA4vE;IAAA,kFAAivE;IAAA,oDAAsjE;IAAA,2DAA+zC;IAAgrB,
|
|
1
|
+
{"version":3,"file":"api-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/api-manager.mjs"],"names":[],"mappings":"AAA2P;IAAuC,gCAAqC;IAAsC;;;;MAAmF;IAAC;;;MAAwwD;IAAA;;;;OAAwsB;IAAA,iDAAymB;IAAA,wEAAiL;IAAA,2CAA6L;IAAA,2DAAqxB;IAAA,qEAA+6D;IAAA,oCAA0H;IAAA,wHAAsyI;IAAA,4FAA4vE;IAAA,kFAAivE;IAAA,oDAAsjE;IAAA,2DAA+zC;IAAgrB,kCAA6xX;IAAA;;;;sBAAshB;IAAkb,wEAAk8Q;IAAA,+CAA2e;IAAA;;sBAAkwC;IAAA,4DAA0mD;IAAA,yCAAi3C;IAAA,gEAAynB;IAAA,6DAA6L;IAAA,wHAA2rL;;CAAC;8BAA1vnD,0CAA0C"}
|
|
@@ -3,6 +3,7 @@ export class HookManager extends ComponentBase {
|
|
|
3
3
|
enabled: boolean;
|
|
4
4
|
defaultPattern: string;
|
|
5
5
|
suppressErrors: boolean;
|
|
6
|
+
pinEnforced: boolean;
|
|
6
7
|
enabledPatterns: Set<any>;
|
|
7
8
|
patternFilterActive: boolean;
|
|
8
9
|
hooks: Map<any, any>;
|
|
@@ -15,6 +16,7 @@ export class HookManager extends ComponentBase {
|
|
|
15
16
|
enablePattern(pattern: any): number;
|
|
16
17
|
disablePattern(pattern: any): number;
|
|
17
18
|
resetPatternFilter(): void;
|
|
19
|
+
setPinEnforced(value: any): boolean;
|
|
18
20
|
list(filter?: {}): {
|
|
19
21
|
registeredHooks: {
|
|
20
22
|
id: any;
|
|
@@ -55,6 +57,8 @@ export class HookManager extends ComponentBase {
|
|
|
55
57
|
subset: any;
|
|
56
58
|
lockCaller: any;
|
|
57
59
|
};
|
|
60
|
+
ownerPath: any;
|
|
61
|
+
ownerFilePath: any;
|
|
58
62
|
enabled: any;
|
|
59
63
|
}[];
|
|
60
64
|
importHooks(registrations: any): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/hook-manager.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hook-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/hook-manager.mjs"],"names":[],"mappings":"AAA2V;IAAwC,gCAAsC;IAA6Y,iBAA+B;IAAC,uBAA4C;IAAC,wBAAoD;IAAC,qBAA+B;IAAC,0BAA4B;IAAC,6BAA8B;IAA4G,qBAAkB;IAAC,0BAAwB;IAAC,gCAA+B;IAAmV,sDAA2gE;IAAub,4BAA2vB;IAAA,4BAAmI;IAAA,6BAAyK;IAAA,oCAAsJ;IAAA,qCAAuM;IAAA,2BAA6N;IAAA,oCAA4E;IAAA;;;;;;;;;;MAA46B;IAAA,gDAAgiC;IAAA;;;;;;;;MAAswB;IAAA;;;;;;MAA2pB;IAAA,iJAAqb;IAAA,2FAA2Y;IAAyrD,yDAAyE;IAAyoD;;;;;;;;;;;;QAAgW;IAAA,sCAAsS;IAAA,0BAA8N;;CAAC;8BAAhhc,0CAA0C"}
|
|
@@ -5,6 +5,8 @@ export class PermissionManager extends ComponentBase {
|
|
|
5
5
|
checkAccess(callerPath: any, targetPath: any, callerFilePath?: null, targetFilePath?: null, runtimeContext?: null, options?: null): any;
|
|
6
6
|
matchesCondition(condition: any, runtimeContext?: null): boolean;
|
|
7
7
|
enforceAccess(callerPath: any, targetPath: any, callerFilePath?: null, targetFilePath?: null, runtimeContext?: null): any;
|
|
8
|
+
enforceHookAccess(callerPath: any, hookPath: any, hookType: any, callerFilePath?: null, targetFilePath?: null, runtimeContext?: null): any;
|
|
9
|
+
checkHookAccess(callerPath: any, hookPath: any, hookType: any, callerFilePath?: null, targetFilePath?: null, runtimeContext?: null): any;
|
|
8
10
|
getRulesForPath(targetPath: any): {
|
|
9
11
|
id: any;
|
|
10
12
|
caller: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/permission-manager.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"permission-manager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/handlers/permission-manager.mjs"],"names":[],"mappings":"AAAoR;IAA8C,gCAA4C;IAAkgC,gEAA8lB;IAAA,wDAAqc;IAAA,wIAAqwB;IAAA,iEAAgN;IAA4Q,0HAAoS;IAAA,2IAAqT;IAAA,yIAA4N;IAAA;;;;;;;;QAA2O;IAAA;;;;;;;;QAAoL;IAAA;;;;;;;;QAA6O;IAAA,eAA+C;IAAA,gBAAiD;IAAA,qBAAiC;IAAA,+BAA8C;IAAA,gCAA2M;IAAA;;;;;;;QAAsM;IAAA,sCAA6I;IAAA,0BAA0L;IAAs1P,sCAAwD;;CAAC;8BAAlzb,0CAA0C"}
|
|
@@ -30,6 +30,7 @@ export class Config extends ComponentBase {
|
|
|
30
30
|
enabled: boolean;
|
|
31
31
|
pattern: string;
|
|
32
32
|
suppressErrors: boolean;
|
|
33
|
+
pin: boolean;
|
|
33
34
|
};
|
|
34
35
|
transformConfig(config?: {}): {
|
|
35
36
|
base: any;
|
|
@@ -63,6 +64,7 @@ export class Config extends ComponentBase {
|
|
|
63
64
|
enabled: boolean;
|
|
64
65
|
pattern: string;
|
|
65
66
|
suppressErrors: boolean;
|
|
67
|
+
pin: boolean;
|
|
66
68
|
};
|
|
67
69
|
collision: {
|
|
68
70
|
initial: string;
|
|
@@ -145,6 +147,7 @@ export function normalizeHookConfig(hook: any): {
|
|
|
145
147
|
enabled: boolean;
|
|
146
148
|
pattern: string;
|
|
147
149
|
suppressErrors: boolean;
|
|
150
|
+
pin: boolean;
|
|
148
151
|
};
|
|
149
152
|
import { ComponentBase } from "@cldmv/slothlet/factories/component-base";
|
|
150
153
|
//# sourceMappingURL=config.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/config.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/config.mjs"],"names":[],"mappings":"AAAwqB;IAAmC,gCAAiC;IAAA;;;MAA2mB;IAAA,iDAA+U;IAAA,2CAA0S;IAAA;;;;;MAAqV;IAAA;;;;;;;;;;;;MAA46B;IAAA,6EAAwL;IAAA;;;;;MAAqD;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAu8I;IAAA,kEAA0gB;IAAA;;;;;;;;;;;;aAAyf;IAAA;;aAAiN;IAAA;;;;;;aAAymD;CAAC;AAA7gV;;;;;EAAkf;8BAA/oB,0CAA0C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-manifest.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/generate-manifest.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate-manifest.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/generate-manifest.mjs"],"names":[],"mappings":"AAAooE,2EAA2wD;AAA6vB;;;;;GAAoZ;AAAjpC;;GAA6vB;AAApuG,yDAAgnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-discovery.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/module-discovery.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module-discovery.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/module-discovery.mjs"],"names":[],"mappings":"AAA+S;;;;;;MAA2nE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-manifest-validator.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/module-manifest-validator.mjs"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module-manifest-validator.d.mts","sourceRoot":"","sources":["../../../../dist/lib/helpers/module-manifest-validator.mjs"],"names":[],"mappings":"AAAie;;;;;;;;;;;;EAAmmK"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export class EagerMode extends ComponentBase {
|
|
2
2
|
static slothletProperty: string;
|
|
3
|
-
buildAPI({ dir, apiPathPrefix, collisionContext, moduleID, apiDepth, cacheBust, fileFilter }: {
|
|
3
|
+
buildAPI({ dir, apiPathPrefix, collisionContext, moduleID, apiDepth, cacheBust, fileFilter, preloadedStructure }: {
|
|
4
4
|
dir: any;
|
|
5
5
|
apiPathPrefix?: string | undefined;
|
|
6
6
|
collisionContext?: string | undefined;
|
|
@@ -8,6 +8,7 @@ export class EagerMode extends ComponentBase {
|
|
|
8
8
|
apiDepth?: number | undefined;
|
|
9
9
|
cacheBust?: null | undefined;
|
|
10
10
|
fileFilter?: null | undefined;
|
|
11
|
+
preloadedStructure?: null | undefined;
|
|
11
12
|
}): Promise<any>;
|
|
12
13
|
}
|
|
13
14
|
import { ComponentBase } from "@cldmv/slothlet/factories/component-base";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/modes/eager.mjs"],"names":[],"mappings":"AAAoE;IAAsC,gCAAgC;IAAsC
|
|
1
|
+
{"version":3,"file":"eager.d.mts","sourceRoot":"","sources":["../../../../dist/lib/modes/eager.mjs"],"names":[],"mappings":"AAAoE;IAAsC,gCAAgC;IAAsC;;;;;;;;;qBAA6rC;CAAC;8BAAr1C,0CAA0C"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export class LazyMode extends ComponentBase {
|
|
2
2
|
static slothletProperty: string;
|
|
3
3
|
createNamedMaterializeFunc(apiPath: any, handler: any): (...args: any[]) => Promise<any>;
|
|
4
|
-
buildAPI({ dir, apiPathPrefix, collisionContext, collisionMode, moduleID, apiDepth, cacheBust, fileFilter }: {
|
|
4
|
+
buildAPI({ dir, apiPathPrefix, collisionContext, collisionMode, moduleID, apiDepth, cacheBust, fileFilter, preloadedStructure }: {
|
|
5
5
|
dir: any;
|
|
6
6
|
apiPathPrefix?: string | undefined;
|
|
7
7
|
collisionContext?: string | undefined;
|
|
@@ -10,6 +10,7 @@ export class LazyMode extends ComponentBase {
|
|
|
10
10
|
apiDepth?: number | undefined;
|
|
11
11
|
cacheBust?: null | undefined;
|
|
12
12
|
fileFilter?: null | undefined;
|
|
13
|
+
preloadedStructure?: null | undefined;
|
|
13
14
|
}): Promise<any>;
|
|
14
15
|
}
|
|
15
16
|
import { ComponentBase } from "@cldmv/slothlet/factories/component-base";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.d.mts","sourceRoot":"","sources":["../../../../dist/lib/modes/lazy.mjs"],"names":[],"mappings":"AAAoE;IAAqC,gCAA+B;IAAsC,yFAAiV;IAAA
|
|
1
|
+
{"version":3,"file":"lazy.d.mts","sourceRoot":"","sources":["../../../../dist/lib/modes/lazy.mjs"],"names":[],"mappings":"AAAoE;IAAqC,gCAA+B;IAAsC,yFAAiV;IAAA;;;;;;;;;;qBAAg1C;CAAC;8BAAvzD,0CAA0C"}
|