@revealui/ai 0.2.7 → 0.2.9

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.
Files changed (220) hide show
  1. package/LICENSE +104 -17
  2. package/README.md +2 -2
  3. package/dist/a2a/card.d.ts +1 -1
  4. package/dist/a2a/card.d.ts.map +1 -1
  5. package/dist/a2a/card.js +4 -4
  6. package/dist/a2a/handler.d.ts +4 -4
  7. package/dist/a2a/handler.js +5 -5
  8. package/dist/a2a/index.d.ts +1 -1
  9. package/dist/a2a/index.js +1 -1
  10. package/dist/audit/emitter.d.ts +1 -1
  11. package/dist/audit/emitter.js +2 -2
  12. package/dist/audit/index.d.ts +2 -2
  13. package/dist/audit/index.js +2 -2
  14. package/dist/audit/store.d.ts +2 -2
  15. package/dist/audit/store.js +2 -2
  16. package/dist/client/errors.d.ts +13 -0
  17. package/dist/client/errors.d.ts.map +1 -0
  18. package/dist/client/errors.js +28 -0
  19. package/dist/client/hooks/useAgentContext.d.ts.map +1 -1
  20. package/dist/client/hooks/useAgentContext.js +6 -5
  21. package/dist/client/hooks/useAgentStream.d.ts +2 -2
  22. package/dist/client/hooks/useAgentStream.js +3 -3
  23. package/dist/client/hooks/useEpisodicMemory.d.ts.map +1 -1
  24. package/dist/client/hooks/useEpisodicMemory.js +6 -5
  25. package/dist/client/hooks/useWorkingMemory.d.ts.map +1 -1
  26. package/dist/client/hooks/useWorkingMemory.js +7 -6
  27. package/dist/embeddings/index.d.ts +1 -1
  28. package/dist/embeddings/index.js +4 -4
  29. package/dist/index.d.ts +1 -2
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +1 -2
  32. package/dist/inference/context-budget.d.ts +1 -1
  33. package/dist/inference/context-budget.js +4 -4
  34. package/dist/inference/index.d.ts +1 -1
  35. package/dist/inference/index.js +1 -1
  36. package/dist/inference/runRag.d.ts +3 -3
  37. package/dist/inference/runRag.d.ts.map +1 -1
  38. package/dist/inference/runRag.js +1 -1
  39. package/dist/inference/task-decomposer.d.ts +1 -1
  40. package/dist/inference/task-decomposer.d.ts.map +1 -1
  41. package/dist/inference/task-decomposer.js +3 -3
  42. package/dist/inference/tool-result-compressor.d.ts +1 -1
  43. package/dist/inference/tool-result-compressor.js +1 -1
  44. package/dist/ingestion/{cms-indexer.d.ts → admin-indexer.d.ts} +12 -12
  45. package/dist/ingestion/admin-indexer.d.ts.map +1 -0
  46. package/dist/ingestion/{cms-indexer.js → admin-indexer.js} +9 -9
  47. package/dist/ingestion/bm25.d.ts +1 -1
  48. package/dist/ingestion/bm25.js +1 -1
  49. package/dist/ingestion/file-parsers.d.ts +1 -1
  50. package/dist/ingestion/file-parsers.d.ts.map +1 -1
  51. package/dist/ingestion/file-parsers.js +36 -17
  52. package/dist/ingestion/hybrid-search.d.ts +1 -1
  53. package/dist/ingestion/hybrid-search.js +1 -1
  54. package/dist/ingestion/index.d.ts +1 -1
  55. package/dist/ingestion/index.d.ts.map +1 -1
  56. package/dist/ingestion/index.js +1 -1
  57. package/dist/ingestion/rag-vector-service.d.ts +1 -1
  58. package/dist/ingestion/rag-vector-service.js +1 -1
  59. package/dist/ingestion/reranker.d.ts +1 -1
  60. package/dist/ingestion/reranker.js +1 -1
  61. package/dist/ingestion/text-splitter.d.ts +1 -1
  62. package/dist/ingestion/text-splitter.js +2 -2
  63. package/dist/llm/cache-utils.d.ts.map +1 -1
  64. package/dist/llm/cache-utils.js +1 -17
  65. package/dist/llm/client.d.ts +8 -13
  66. package/dist/llm/client.d.ts.map +1 -1
  67. package/dist/llm/client.js +12 -60
  68. package/dist/llm/key-validator.d.ts +1 -1
  69. package/dist/llm/key-validator.js +8 -8
  70. package/dist/llm/providers/base.d.ts +2 -2
  71. package/dist/llm/providers/groq.d.ts +2 -2
  72. package/dist/llm/providers/groq.d.ts.map +1 -1
  73. package/dist/llm/providers/groq.js +4 -4
  74. package/dist/llm/providers/inference-snaps.d.ts +5 -5
  75. package/dist/llm/providers/inference-snaps.d.ts.map +1 -1
  76. package/dist/llm/providers/inference-snaps.js +6 -6
  77. package/dist/llm/providers/ollama.d.ts +2 -2
  78. package/dist/llm/providers/ollama.d.ts.map +1 -1
  79. package/dist/llm/providers/ollama.js +3 -3
  80. package/dist/llm/providers/{openai.d.ts → openai-compat.d.ts} +8 -7
  81. package/dist/llm/providers/openai-compat.d.ts.map +1 -0
  82. package/dist/llm/providers/{openai.js → openai-compat.js} +13 -17
  83. package/dist/llm/providers/vultr.d.ts.map +1 -1
  84. package/dist/llm/providers/vultr.js +1 -0
  85. package/dist/llm/server.d.ts +1 -3
  86. package/dist/llm/server.d.ts.map +1 -1
  87. package/dist/llm/server.js +1 -3
  88. package/dist/llm/token-counter.d.ts.map +1 -1
  89. package/dist/llm/token-counter.js +11 -8
  90. package/dist/llm/workspace-provider-config.d.ts +1 -1
  91. package/dist/llm/workspace-provider-config.d.ts.map +1 -1
  92. package/dist/llm/workspace-provider-config.js +1 -1
  93. package/dist/memory/crdt/or-set.d.ts +12 -0
  94. package/dist/memory/crdt/or-set.d.ts.map +1 -1
  95. package/dist/memory/crdt/or-set.js +27 -0
  96. package/dist/memory/index.d.ts +1 -0
  97. package/dist/memory/index.d.ts.map +1 -1
  98. package/dist/memory/index.js +1 -0
  99. package/dist/memory/persistence/crdt-persistence.d.ts +21 -1
  100. package/dist/memory/persistence/crdt-persistence.d.ts.map +1 -1
  101. package/dist/memory/persistence/crdt-persistence.js +67 -0
  102. package/dist/memory/preferences/user-preferences-manager.d.ts.map +1 -1
  103. package/dist/memory/preferences/user-preferences-manager.js +11 -1
  104. package/dist/memory/stores/episodic-memory.js +2 -2
  105. package/dist/memory/stores/working-memory.d.ts +7 -2
  106. package/dist/memory/stores/working-memory.d.ts.map +1 -1
  107. package/dist/memory/stores/working-memory.js +31 -17
  108. package/dist/memory/sync/index.d.ts +2 -0
  109. package/dist/memory/sync/index.d.ts.map +1 -0
  110. package/dist/memory/sync/index.js +1 -0
  111. package/dist/memory/sync/sync-manager.d.ts +104 -0
  112. package/dist/memory/sync/sync-manager.d.ts.map +1 -0
  113. package/dist/memory/sync/sync-manager.js +137 -0
  114. package/dist/memory/utils/validation.js +1 -1
  115. package/dist/memory/vector/vector-memory-service.d.ts +1 -1
  116. package/dist/memory/vector/vector-memory-service.js +1 -1
  117. package/dist/orchestration/agent.d.ts +2 -2
  118. package/dist/orchestration/defaults.d.ts +1 -1
  119. package/dist/orchestration/defaults.js +1 -1
  120. package/dist/orchestration/orchestrator.d.ts +3 -3
  121. package/dist/orchestration/orchestrator.js +3 -3
  122. package/dist/orchestration/runtime.d.ts +1 -1
  123. package/dist/orchestration/runtime.js +1 -1
  124. package/dist/orchestration/streaming-runtime.d.ts +2 -2
  125. package/dist/orchestration/streaming-runtime.js +2 -2
  126. package/dist/orchestration/ticket-agent.d.ts +11 -11
  127. package/dist/orchestration/ticket-agent.d.ts.map +1 -1
  128. package/dist/orchestration/ticket-agent.js +10 -10
  129. package/dist/skills/catalog/vercel-catalog.d.ts.map +1 -1
  130. package/dist/skills/catalog/vercel-catalog.js +7 -4
  131. package/dist/skills/loader/github-loader.d.ts.map +1 -1
  132. package/dist/skills/loader/github-loader.js +2 -0
  133. package/dist/skills/loader/local-loader.js +1 -1
  134. package/dist/skills/loader/vercel-loader.d.ts.map +1 -1
  135. package/dist/skills/loader/vercel-loader.js +2 -0
  136. package/dist/skills/parser/skill-md-parser.js +2 -2
  137. package/dist/skills/registry/skill-registry.js +1 -1
  138. package/dist/skills/types.d.ts +6 -6
  139. package/dist/templates/prompt-spec.js +1 -1
  140. package/dist/templates/skill-spec.js +1 -1
  141. package/dist/tools/{cms → admin}/collection-tools.d.ts +2 -2
  142. package/dist/tools/admin/collection-tools.d.ts.map +1 -0
  143. package/dist/tools/{cms → admin}/collection-tools.js +8 -8
  144. package/dist/tools/{cms → admin}/factory.d.ts +11 -11
  145. package/dist/tools/admin/factory.d.ts.map +1 -0
  146. package/dist/tools/{cms → admin}/factory.js +4 -4
  147. package/dist/tools/{cms → admin}/global-tools.d.ts +1 -1
  148. package/dist/tools/admin/global-tools.d.ts.map +1 -0
  149. package/dist/tools/{cms → admin}/global-tools.js +4 -4
  150. package/dist/tools/{cms → admin}/index.d.ts +4 -4
  151. package/dist/tools/admin/index.d.ts.map +1 -0
  152. package/dist/tools/{cms → admin}/index.js +3 -3
  153. package/dist/tools/{cms → admin}/media-tools.d.ts +1 -1
  154. package/dist/tools/admin/media-tools.d.ts.map +1 -0
  155. package/dist/tools/{cms → admin}/media-tools.js +4 -4
  156. package/dist/tools/{cms → admin}/user-tools.d.ts +1 -1
  157. package/dist/tools/admin/user-tools.d.ts.map +1 -0
  158. package/dist/tools/{cms → admin}/user-tools.js +1 -1
  159. package/dist/tools/coding/file-edit.d.ts +1 -1
  160. package/dist/tools/coding/file-edit.js +2 -2
  161. package/dist/tools/coding/file-glob.d.ts +1 -1
  162. package/dist/tools/coding/file-glob.d.ts.map +1 -1
  163. package/dist/tools/coding/file-glob.js +2 -1
  164. package/dist/tools/coding/file-grep.d.ts +1 -1
  165. package/dist/tools/coding/file-grep.d.ts.map +1 -1
  166. package/dist/tools/coding/file-grep.js +2 -1
  167. package/dist/tools/coding/file-read.d.ts +1 -1
  168. package/dist/tools/coding/file-read.d.ts.map +1 -1
  169. package/dist/tools/coding/file-read.js +15 -9
  170. package/dist/tools/coding/file-write.d.ts +1 -1
  171. package/dist/tools/coding/file-write.js +1 -1
  172. package/dist/tools/coding/git-ops.d.ts +1 -1
  173. package/dist/tools/coding/git-ops.d.ts.map +1 -1
  174. package/dist/tools/coding/git-ops.js +5 -7
  175. package/dist/tools/coding/index.d.ts +1 -1
  176. package/dist/tools/coding/index.d.ts.map +1 -1
  177. package/dist/tools/coding/lint-fix.d.ts +1 -1
  178. package/dist/tools/coding/lint-fix.d.ts.map +1 -1
  179. package/dist/tools/coding/lint-fix.js +8 -4
  180. package/dist/tools/coding/project-context.d.ts +1 -1
  181. package/dist/tools/coding/project-context.d.ts.map +1 -1
  182. package/dist/tools/coding/project-context.js +25 -24
  183. package/dist/tools/coding/safety.d.ts +1 -1
  184. package/dist/tools/coding/safety.d.ts.map +1 -1
  185. package/dist/tools/coding/shell-exec.d.ts +1 -1
  186. package/dist/tools/coding/shell-exec.js +1 -1
  187. package/dist/tools/coding/test-runner.d.ts +1 -1
  188. package/dist/tools/coding/test-runner.d.ts.map +1 -1
  189. package/dist/tools/coding/test-runner.js +12 -7
  190. package/dist/tools/deduplicator.js +1 -1
  191. package/dist/tools/document-summarizer.js +2 -2
  192. package/dist/tools/memory/store-memory.d.ts +1 -1
  193. package/dist/tools/memory/store-memory.js +2 -2
  194. package/dist/tools/ticket-tools.d.ts +2 -2
  195. package/dist/tools/ticket-tools.js +3 -3
  196. package/dist/tools/web/duck-duck-go.d.ts +3 -3
  197. package/dist/tools/web/duck-duck-go.js +4 -4
  198. package/dist/tools/web/exa.d.ts +1 -1
  199. package/dist/tools/web/exa.js +1 -1
  200. package/dist/tools/web/scraper.js +1 -1
  201. package/dist/tools/web/tavily.d.ts +2 -2
  202. package/dist/tools/web/tavily.js +2 -2
  203. package/dist/tools/web/types.d.ts +2 -2
  204. package/dist/tools/web/types.js +2 -2
  205. package/package.json +23 -17
  206. package/LICENSE.commercial +0 -111
  207. package/dist/ingestion/cms-indexer.d.ts.map +0 -1
  208. package/dist/llm/providers/anthropic.d.ts +0 -31
  209. package/dist/llm/providers/anthropic.d.ts.map +0 -1
  210. package/dist/llm/providers/anthropic.js +0 -264
  211. package/dist/llm/providers/bitnet.d.ts +0 -28
  212. package/dist/llm/providers/bitnet.d.ts.map +0 -1
  213. package/dist/llm/providers/bitnet.js +0 -36
  214. package/dist/llm/providers/openai.d.ts.map +0 -1
  215. package/dist/tools/cms/collection-tools.d.ts.map +0 -1
  216. package/dist/tools/cms/factory.d.ts.map +0 -1
  217. package/dist/tools/cms/global-tools.d.ts.map +0 -1
  218. package/dist/tools/cms/index.d.ts.map +0 -1
  219. package/dist/tools/cms/media-tools.d.ts.map +0 -1
  220. package/dist/tools/cms/user-tools.d.ts.map +0 -1
@@ -1,111 +0,0 @@
1
- RevealUI Commercial License
2
- Version 1.0, February 2026
3
-
4
- Copyright (c) 2025-2026 RevealUI Studio (founder@revealui.com)
5
-
6
- TERMS AND CONDITIONS
7
-
8
- 1. DEFINITIONS
9
-
10
- "Software" means the RevealUI source code, documentation, and associated
11
- files contained in directories and packages designated as commercial,
12
- including but not limited to: packages/ai, packages/harnesses, and any
13
- directory named "ee" within the repository.
14
-
15
- "License Key" means a valid RevealUI license key obtained through an active
16
- paid subscription at https://revealui.com.
17
-
18
- "Licensee" means the individual or organization that holds a valid License
19
- Key through an active subscription.
20
-
21
- "Production Use" means any use of the Software beyond local development and
22
- evaluation, including but not limited to: deploying the Software to serve
23
- end users, integrating the Software into a product or service, or using the
24
- Software in a revenue-generating capacity.
25
-
26
- 2. GRANT OF RIGHTS
27
-
28
- Subject to the terms of this License and a valid License Key, the Licensee
29
- is granted a non-exclusive, non-transferable, revocable license to:
30
-
31
- (a) Use the Software for internal development and Production Use.
32
- (b) Modify the Software for internal use.
33
- (c) Deploy the Software on infrastructure controlled by the Licensee.
34
-
35
- Enterprise License holders are additionally granted the right to:
36
-
37
- (d) Deploy the Software in a self-hosted environment.
38
- (e) Remove or replace RevealUI branding (white-label).
39
- (f) Use the Software for multiple tenants within the Licensee's
40
- organization or customer base.
41
-
42
- 3. RESTRICTIONS
43
-
44
- The Licensee SHALL NOT:
45
-
46
- (a) Provide the Software, or any portion of it, to third parties as a
47
- hosted or managed service that competes with RevealUI.
48
- (b) Redistribute, sublicense, sell, or otherwise transfer the Software
49
- or any portion of it to third parties.
50
- (c) Remove, alter, or circumvent the license key verification
51
- functionality of the Software.
52
- (d) Use the Software in Production without a valid License Key.
53
- (e) Share, publish, or make the License Key available to unauthorized
54
- parties.
55
-
56
- 4. EVALUATION
57
-
58
- The Software may be used for evaluation and local development purposes
59
- without a License Key. Evaluation use does not grant any rights to
60
- Production Use.
61
-
62
- 5. SUBSCRIPTION AND PAYMENT
63
-
64
- This License is valid only during the term of an active paid subscription.
65
- Upon cancellation or expiration of the subscription:
66
-
67
- (a) The License terminates automatically.
68
- (b) A grace period of fourteen (14) days is provided for the Licensee
69
- to transition away from Production Use.
70
- (c) After the grace period, the Licensee must cease all Production Use
71
- of the Software.
72
-
73
- 6. INTELLECTUAL PROPERTY
74
-
75
- The Software is and remains the intellectual property of RevealUI Studio.
76
- This License does not grant any ownership rights. Contributions to
77
- commercial portions of the Software require a Contributor License Agreement.
78
-
79
- 7. OPEN SOURCE COMPONENTS
80
-
81
- This License applies only to files and directories designated as commercial.
82
- Files under the MIT License (as indicated in the root LICENSE file) are not
83
- subject to this commercial license and may be used freely under MIT terms.
84
-
85
- 8. DISCLAIMER OF WARRANTY
86
-
87
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
88
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
89
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
90
-
91
- 9. LIMITATION OF LIABILITY
92
-
93
- IN NO EVENT SHALL REVEALUI STUDIO BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
94
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
95
- FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
96
- DEALINGS IN THE SOFTWARE, EXCEEDING THE AMOUNT PAID BY THE LICENSEE IN
97
- THE TWELVE (12) MONTHS PRECEDING THE CLAIM.
98
-
99
- 10. GOVERNING LAW
100
-
101
- This License shall be governed by the laws of the State of California,
102
- United States of America, without regard to its conflict of law provisions.
103
-
104
- 11. ENTIRE AGREEMENT
105
-
106
- This License constitutes the entire agreement between the parties with
107
- respect to the commercial portions of the Software and supersedes all
108
- prior agreements, understandings, and communications.
109
-
110
- For licensing inquiries: founder@revealui.com
111
- For pricing and subscriptions: https://revealui.com/pricing
@@ -1 +0,0 @@
1
- {"version":3,"file":"cms-indexer.d.ts","sourceRoot":"","sources":["../../src/ingestion/cms-indexer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC1C,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAoBD,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,kBAAkB,CAAc;IACxC,OAAO,CAAC,kBAAkB,CAAS;gBAEvB,MAAM,EAAE,gBAAgB;IAMpC;;;OAGG;IACG,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CA8BhE"}
@@ -1,31 +0,0 @@
1
- /**
2
- * Anthropic Provider
3
- *
4
- * Implementation of LLMProvider for Anthropic Claude API
5
- */
6
- import type { Embedding, LLMChatOptions, LLMChunk, LLMEmbedOptions, LLMProvider, LLMProviderConfig, LLMResponse, LLMStreamOptions, Message } from './base.js';
7
- export interface AnthropicProviderConfig extends LLMProviderConfig {
8
- apiVersion?: string;
9
- /** Enable prompt caching by default (5min TTL, 90% cost reduction on cache hits) */
10
- enableCacheByDefault?: boolean;
11
- }
12
- export declare class AnthropicProvider implements LLMProvider {
13
- private config;
14
- private baseURL;
15
- constructor(config: AnthropicProviderConfig);
16
- chat(messages: Message[], options?: LLMChatOptions): Promise<LLMResponse>;
17
- embed(text: string | string[], options?: LLMEmbedOptions): Promise<Embedding | Embedding[]>;
18
- stream(messages: Message[], options?: LLMStreamOptions): AsyncIterable<LLMChunk>;
19
- /**
20
- * Format system messages with optional caching
21
- * Caches the last system message for maximum benefit
22
- */
23
- private formatSystemMessages;
24
- /**
25
- * Format tools with optional caching
26
- * Caches the last tool definition for maximum benefit
27
- */
28
- private formatTools;
29
- private formatMessages;
30
- }
31
- //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/llm/providers/anthropic.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAEV,SAAS,EACT,cAAc,EACd,QAAQ,EACR,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,OAAO,EAER,MAAM,WAAW,CAAC;AAenB,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAqDD,qBAAa,iBAAkB,YAAW,WAAW;IACnD,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,uBAAuB;IAKrC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IA+F/E,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC;IAUpF,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IAoGvF;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;;OAGG;IACH,OAAO,CAAC,WAAW;IAmBnB,OAAO,CAAC,cAAc;CAkBvB"}
@@ -1,264 +0,0 @@
1
- /**
2
- * Anthropic Provider
3
- *
4
- * Implementation of LLMProvider for Anthropic Claude API
5
- */
6
- /**
7
- * Extract plain text from a message content value.
8
- * Anthropic has its own image format — for now, image parts are silently skipped
9
- * and only text parts are forwarded. Vision via Anthropic is out of scope.
10
- */
11
- function toTextContent(content) {
12
- if (typeof content === 'string')
13
- return content;
14
- return content
15
- .filter((p) => p.type === 'text')
16
- .map((p) => p.text)
17
- .join('\n');
18
- }
19
- const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
20
- const isTextBlock = (block) => block.type === 'text' && typeof block.text === 'string';
21
- const isToolUseBlock = (block) => block.type === 'tool_use';
22
- const maxTokensKey = 'max_tokens';
23
- const inputTokensKey = 'input_tokens';
24
- const outputTokensKey = 'output_tokens';
25
- const stopReasonKey = 'stop_reason';
26
- const cacheCreationTokensKey = 'cache_creation_input_tokens';
27
- const cacheReadTokensKey = 'cache_read_input_tokens';
28
- export class AnthropicProvider {
29
- config;
30
- baseURL;
31
- constructor(config) {
32
- this.config = config;
33
- this.baseURL = config.baseURL || 'https://api.anthropic.com/v1';
34
- }
35
- async chat(messages, options) {
36
- // Anthropic API format is slightly different
37
- const systemMessages = messages.filter((m) => m.role === 'system');
38
- const conversationMessages = messages.filter((m) => m.role !== 'system');
39
- const enableCache = options?.enableCache ?? this.config.enableCacheByDefault ?? false;
40
- // Use 2024-07-15 API version for prompt caching support
41
- const apiVersion = enableCache ? '2024-07-15' : this.config.apiVersion || '2023-06-01';
42
- // Format system messages with caching
43
- const systemContent = this.formatSystemMessages(systemMessages, enableCache);
44
- // Format tools with caching (cache last tool if enabled)
45
- const tools = this.formatTools(options?.tools, enableCache);
46
- const response = await fetch(`${this.baseURL}/messages`, {
47
- method: 'POST',
48
- headers: {
49
- 'Content-Type': 'application/json',
50
- 'x-api-key': this.config.apiKey,
51
- 'anthropic-version': apiVersion,
52
- },
53
- body: JSON.stringify({
54
- model: this.config.model || 'claude-3-5-sonnet-20241022',
55
- system: systemContent,
56
- messages: this.formatMessages(conversationMessages),
57
- temperature: options?.temperature ?? this.config.temperature ?? 0.7,
58
- [maxTokensKey]: options?.maxTokens ?? this.config.maxTokens ?? 4096,
59
- tools,
60
- }),
61
- });
62
- if (!response.ok) {
63
- const errorPayload = (await response.json().catch(() => undefined));
64
- const errorMessage = isRecord(errorPayload) &&
65
- isRecord(errorPayload.error) &&
66
- typeof errorPayload.error.message === 'string'
67
- ? errorPayload.error.message
68
- : response.statusText;
69
- throw new Error(`Anthropic API error: ${errorMessage}`);
70
- }
71
- const data = (await response.json());
72
- const contentBlocks = Array.isArray(data.content)
73
- ? data.content
74
- : [];
75
- const textBlock = contentBlocks.find(isTextBlock);
76
- const toolCalls = contentBlocks.filter(isToolUseBlock).map((tc) => ({
77
- id: tc.id,
78
- type: 'function',
79
- function: {
80
- name: tc.name,
81
- arguments: JSON.stringify(tc.input),
82
- },
83
- }));
84
- const usage = data.usage && typeof data.usage === 'object'
85
- ? data.usage
86
- : undefined;
87
- const inputTokens = usage && typeof usage[inputTokensKey] === 'number' ? usage[inputTokensKey] : undefined;
88
- const outputTokens = usage && typeof usage[outputTokensKey] === 'number' ? usage[outputTokensKey] : undefined;
89
- const cacheCreationTokens = usage && typeof usage[cacheCreationTokensKey] === 'number'
90
- ? usage[cacheCreationTokensKey]
91
- : undefined;
92
- const cacheReadTokens = usage && typeof usage[cacheReadTokensKey] === 'number'
93
- ? usage[cacheReadTokensKey]
94
- : undefined;
95
- const finishReason = typeof data[stopReasonKey] === 'string'
96
- ? data[stopReasonKey]
97
- : undefined;
98
- return {
99
- content: textBlock?.text || '',
100
- role: 'assistant',
101
- toolCalls,
102
- finishReason,
103
- usage: inputTokens !== undefined && outputTokens !== undefined
104
- ? {
105
- promptTokens: inputTokens,
106
- completionTokens: outputTokens,
107
- totalTokens: inputTokens + outputTokens,
108
- cacheCreationTokens,
109
- cacheReadTokens,
110
- }
111
- : undefined,
112
- };
113
- }
114
- embed(text, options) {
115
- void text;
116
- void options;
117
- // Anthropic doesn't have a separate embeddings API
118
- // Would need to use a different provider or service
119
- return Promise.reject(new Error('Anthropic does not support embeddings. Use OpenAI provider for embeddings.'));
120
- }
121
- async *stream(messages, options) {
122
- const systemMessages = messages.filter((m) => m.role === 'system');
123
- const conversationMessages = messages.filter((m) => m.role !== 'system');
124
- const enableCache = options?.enableCache ?? this.config.enableCacheByDefault ?? false;
125
- // Use 2024-07-15 API version for prompt caching support
126
- const apiVersion = enableCache ? '2024-07-15' : this.config.apiVersion || '2023-06-01';
127
- // Format system messages with caching
128
- const systemContent = this.formatSystemMessages(systemMessages, enableCache);
129
- // Format tools with caching
130
- const tools = this.formatTools(options?.tools, enableCache);
131
- const response = await fetch(`${this.baseURL}/messages`, {
132
- method: 'POST',
133
- headers: {
134
- 'Content-Type': 'application/json',
135
- 'x-api-key': this.config.apiKey,
136
- 'anthropic-version': apiVersion,
137
- },
138
- body: JSON.stringify({
139
- model: this.config.model || 'claude-3-5-sonnet-20241022',
140
- system: systemContent,
141
- messages: this.formatMessages(conversationMessages),
142
- temperature: options?.temperature ?? this.config.temperature ?? 0.7,
143
- [maxTokensKey]: options?.maxTokens ?? this.config.maxTokens ?? 4096,
144
- tools,
145
- stream: true,
146
- }),
147
- });
148
- if (!response.ok) {
149
- const errorPayload = (await response.json().catch(() => undefined));
150
- const errorMessage = isRecord(errorPayload) &&
151
- isRecord(errorPayload.error) &&
152
- typeof errorPayload.error.message === 'string'
153
- ? errorPayload.error.message
154
- : response.statusText;
155
- throw new Error(`Anthropic API error: ${errorMessage}`);
156
- }
157
- const reader = response.body?.getReader();
158
- const decoder = new TextDecoder();
159
- if (!reader) {
160
- throw new Error('Response body is not readable');
161
- }
162
- let buffer = '';
163
- while (true) {
164
- const { done, value } = await reader.read();
165
- if (done) {
166
- yield { content: '', done: true };
167
- break;
168
- }
169
- buffer += decoder.decode(value, { stream: true });
170
- const lines = buffer.split('\n');
171
- buffer = lines.pop() || '';
172
- for (const line of lines) {
173
- if (line.startsWith('data: ')) {
174
- const data = line.slice(6);
175
- if (data === '[DONE]') {
176
- yield { content: '', done: true };
177
- return;
178
- }
179
- try {
180
- const parsed = JSON.parse(data);
181
- if (!isRecord(parsed)) {
182
- continue;
183
- }
184
- const eventType = typeof parsed.type === 'string' ? parsed.type : undefined;
185
- if (eventType === 'content_block_delta' && isRecord(parsed.delta)) {
186
- const deltaType = typeof parsed.delta.type === 'string' ? parsed.delta.type : undefined;
187
- if (deltaType === 'text_delta') {
188
- yield {
189
- content: typeof parsed.delta.text === 'string' ? parsed.delta.text : '',
190
- done: false,
191
- };
192
- }
193
- }
194
- else if (eventType === 'message_stop') {
195
- yield { content: '', done: true };
196
- return;
197
- }
198
- }
199
- catch {
200
- // Ignore parse errors for incomplete chunks
201
- }
202
- }
203
- }
204
- }
205
- }
206
- /**
207
- * Format system messages with optional caching
208
- * Caches the last system message for maximum benefit
209
- */
210
- formatSystemMessages(systemMessages, enableCache) {
211
- if (systemMessages.length === 0) {
212
- return '';
213
- }
214
- // If caching disabled, use simple string format
215
- if (!enableCache) {
216
- return systemMessages.map((m) => toTextContent(m.content)).join('\n');
217
- }
218
- // With caching, use structured format and cache the last block
219
- return systemMessages.map((msg, index) => ({
220
- type: 'text',
221
- text: toTextContent(msg.content),
222
- // Cache the last system message (most likely to be reused)
223
- ...(index === systemMessages.length - 1 && msg.cacheControl
224
- ? { cache_control: msg.cacheControl }
225
- : index === systemMessages.length - 1
226
- ? { cache_control: { type: 'ephemeral' } }
227
- : {}),
228
- }));
229
- }
230
- /**
231
- * Format tools with optional caching
232
- * Caches the last tool definition for maximum benefit
233
- */
234
- formatTools(tools, enableCache) {
235
- if (!tools || tools.length === 0) {
236
- return undefined;
237
- }
238
- return tools.map((tool, index) => ({
239
- name: tool.function.name,
240
- description: tool.function.description,
241
- input_schema: tool.function.parameters,
242
- // Cache the last tool (most likely to be reused across calls)
243
- ...(enableCache && index === tools.length - 1
244
- ? { cache_control: { type: 'ephemeral' } }
245
- : {}),
246
- }));
247
- }
248
- formatMessages(messages) {
249
- return messages
250
- .map((msg) => {
251
- if (msg.role === 'system') {
252
- // System messages are handled separately in Anthropic API
253
- return null;
254
- }
255
- const formatted = {
256
- role: msg.role === 'assistant' ? 'assistant' : 'user',
257
- // Anthropic uses a different image format; extract text only for now.
258
- content: toTextContent(msg.content),
259
- };
260
- return formatted;
261
- })
262
- .filter((message) => Boolean(message));
263
- }
264
- }
@@ -1,28 +0,0 @@
1
- /**
2
- * BitNet Provider
3
- *
4
- * Local inference via BitNet's OpenAI-compatible llama-server (http://localhost:8080/v1).
5
- * No API key required. Runs entirely on CPU (AVX2). Zero cost, fully offline.
6
- *
7
- * Setup: pnpm bitnet:install (clone + compile + download model)
8
- * Start: pnpm bitnet:serve (start inference server on :8080)
9
- *
10
- * Note: BitNet is a generative model only. It does not expose /v1/embeddings.
11
- * For vector search, use Ollama (nomic-embed-text) or @xenova/transformers.
12
- */
13
- import type { Embedding, LLMChatOptions, LLMChunk, LLMEmbedOptions, LLMProvider, LLMProviderConfig, LLMResponse, LLMStreamOptions, Message } from './base.js';
14
- export interface BitnetProviderConfig extends Omit<LLMProviderConfig, 'apiKey'> {
15
- apiKey?: string;
16
- /** Defaults to http://localhost:8080/v1 */
17
- baseURL?: string;
18
- /** Chat model. Defaults to bitnet-b1.58-2B-4T — installed by pnpm bitnet:install */
19
- model?: string;
20
- }
21
- export declare class BitnetProvider implements LLMProvider {
22
- private inner;
23
- constructor(config: BitnetProviderConfig);
24
- chat(messages: Message[], options?: LLMChatOptions): Promise<LLMResponse>;
25
- stream(messages: Message[], options?: LLMStreamOptions): AsyncIterable<LLMChunk>;
26
- embed(_text: string | string[], _options?: LLMEmbedOptions): Promise<Embedding | Embedding[]>;
27
- }
28
- //# sourceMappingURL=bitnet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bitnet.d.ts","sourceRoot":"","sources":["../../../src/llm/providers/bitnet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,QAAQ,EACR,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,OAAO,EACR,MAAM,WAAW,CAAC;AAGnB,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,KAAK,CAAiB;gBAElB,MAAM,EAAE,oBAAoB;IAUxC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IAIzE,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IAIhF,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC;CAO9F"}
@@ -1,36 +0,0 @@
1
- /**
2
- * BitNet Provider
3
- *
4
- * Local inference via BitNet's OpenAI-compatible llama-server (http://localhost:8080/v1).
5
- * No API key required. Runs entirely on CPU (AVX2). Zero cost, fully offline.
6
- *
7
- * Setup: pnpm bitnet:install (clone + compile + download model)
8
- * Start: pnpm bitnet:serve (start inference server on :8080)
9
- *
10
- * Note: BitNet is a generative model only. It does not expose /v1/embeddings.
11
- * For vector search, use Ollama (nomic-embed-text) or @xenova/transformers.
12
- */
13
- import { OpenAIProvider } from './openai.js';
14
- export class BitnetProvider {
15
- inner;
16
- constructor(config) {
17
- this.inner = new OpenAIProvider({
18
- ...config,
19
- // llama-server ignores the API key but the OpenAI client requires a non-empty value
20
- apiKey: config.apiKey ?? 'bitnet',
21
- baseURL: config.baseURL ?? 'http://localhost:8080/v1',
22
- model: config.model ?? 'bitnet-b1.58-2B-4T',
23
- });
24
- }
25
- chat(messages, options) {
26
- return this.inner.chat(messages, options);
27
- }
28
- stream(messages, options) {
29
- return this.inner.stream(messages, options);
30
- }
31
- embed(_text, _options) {
32
- throw new Error('BitNet does not support embeddings. Set OLLAMA_BASE_URL to auto-wire Ollama ' +
33
- '(nomic-embed-text) as the embed backend, or use @xenova/transformers for ' +
34
- 'fully offline embedding generation.');
35
- }
36
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/llm/providers/openai.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,SAAS,EAET,cAAc,EACd,QAAQ,EACR,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,OAAO,EAER,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAsDD,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,oBAAoB;IAKlC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IAgFzE,KAAK,CACT,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,SAAS,GAAG,SAAS,EAAE,CAAC;IA2C5B,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,QAAQ,CAAC;IA0FvF,OAAO,CAAC,cAAc;CA4BvB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"collection-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/collection-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,IAiCjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,IA2C/B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,IAwB7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,IA+BhC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAmChC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAwBhC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAyBvC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,OAAO,EAAE;QACZ,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC;QACV,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D,MAAM,CAAC,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzF,MAAM,CAAC,OAAO,EAAE;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC/B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAErB,MAAM,CAAC,OAAO,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnE,UAAU,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExE,YAAY,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1F;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0BAA0B;IAC1B,SAAS,EAAE,YAAY,CAAC;IAExB,kEAAkE;IAClE,WAAW,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAEnC,0DAA0D;IAC1D,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAE3B,mDAAmD;IACnD,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,EAAE,CAggB7D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"global-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/global-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,IA6B7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,IAwB3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,IA+B9B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,cAAc,GACf,MAAM,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/media-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,IAqC3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,IAsB1B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,IAyC7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,IAuB7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,IAoC7B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/cms/user-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAoBhC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,IAiC3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,IAsC5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,IAsC5B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,IAuB5B,CAAC"}