@tabstack/sdk 1.0.4 → 2.0.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.
Files changed (513) hide show
  1. package/CHANGELOG.md +90 -0
  2. package/LICENSE +22 -11
  3. package/README.md +276 -377
  4. package/api-promise.d.mts +2 -0
  5. package/api-promise.d.mts.map +1 -0
  6. package/api-promise.d.ts +2 -0
  7. package/api-promise.d.ts.map +1 -0
  8. package/api-promise.js +6 -0
  9. package/api-promise.js.map +1 -0
  10. package/api-promise.mjs +2 -0
  11. package/api-promise.mjs.map +1 -0
  12. package/client.d.mts +186 -0
  13. package/client.d.mts.map +1 -0
  14. package/client.d.ts +186 -0
  15. package/client.d.ts.map +1 -0
  16. package/client.js +467 -0
  17. package/client.js.map +1 -0
  18. package/client.mjs +463 -0
  19. package/client.mjs.map +1 -0
  20. package/core/api-promise.d.mts +46 -0
  21. package/core/api-promise.d.mts.map +1 -0
  22. package/core/api-promise.d.ts +46 -0
  23. package/core/api-promise.d.ts.map +1 -0
  24. package/core/api-promise.js +74 -0
  25. package/core/api-promise.js.map +1 -0
  26. package/core/api-promise.mjs +70 -0
  27. package/core/api-promise.mjs.map +1 -0
  28. package/core/error.d.mts +46 -0
  29. package/core/error.d.mts.map +1 -0
  30. package/core/error.d.ts +46 -0
  31. package/core/error.d.ts.map +1 -0
  32. package/core/error.js +113 -0
  33. package/core/error.js.map +1 -0
  34. package/core/error.mjs +97 -0
  35. package/core/error.mjs.map +1 -0
  36. package/core/resource.d.mts +6 -0
  37. package/core/resource.d.mts.map +1 -0
  38. package/core/resource.d.ts +6 -0
  39. package/core/resource.d.ts.map +1 -0
  40. package/core/resource.js +11 -0
  41. package/core/resource.js.map +1 -0
  42. package/core/resource.mjs +7 -0
  43. package/core/resource.mjs.map +1 -0
  44. package/core/streaming.d.mts +33 -0
  45. package/core/streaming.d.mts.map +1 -0
  46. package/core/streaming.d.ts +33 -0
  47. package/core/streaming.d.ts.map +1 -0
  48. package/core/streaming.js +263 -0
  49. package/core/streaming.js.map +1 -0
  50. package/core/streaming.mjs +258 -0
  51. package/core/streaming.mjs.map +1 -0
  52. package/core/uploads.d.mts +3 -0
  53. package/core/uploads.d.mts.map +1 -0
  54. package/core/uploads.d.ts +3 -0
  55. package/core/uploads.d.ts.map +1 -0
  56. package/core/uploads.js +6 -0
  57. package/core/uploads.js.map +1 -0
  58. package/core/uploads.mjs +2 -0
  59. package/core/uploads.mjs.map +1 -0
  60. package/error.d.mts +2 -0
  61. package/error.d.mts.map +1 -0
  62. package/error.d.ts +2 -0
  63. package/error.d.ts.map +1 -0
  64. package/error.js +6 -0
  65. package/error.js.map +1 -0
  66. package/error.mjs +2 -0
  67. package/error.mjs.map +1 -0
  68. package/index.d.mts +6 -0
  69. package/index.d.mts.map +1 -0
  70. package/index.d.ts +6 -0
  71. package/index.d.ts.map +1 -0
  72. package/index.js +30 -0
  73. package/index.js.map +1 -0
  74. package/index.mjs +7 -0
  75. package/index.mjs.map +1 -0
  76. package/internal/builtin-types.d.mts +73 -0
  77. package/internal/builtin-types.d.mts.map +1 -0
  78. package/internal/builtin-types.d.ts +73 -0
  79. package/internal/builtin-types.d.ts.map +1 -0
  80. package/internal/builtin-types.js +4 -0
  81. package/internal/builtin-types.js.map +1 -0
  82. package/internal/builtin-types.mjs +3 -0
  83. package/internal/builtin-types.mjs.map +1 -0
  84. package/internal/decoders/line.d.mts +17 -0
  85. package/internal/decoders/line.d.mts.map +1 -0
  86. package/internal/decoders/line.d.ts +17 -0
  87. package/internal/decoders/line.d.ts.map +1 -0
  88. package/internal/decoders/line.js +113 -0
  89. package/internal/decoders/line.js.map +1 -0
  90. package/internal/decoders/line.mjs +108 -0
  91. package/internal/decoders/line.mjs.map +1 -0
  92. package/internal/detect-platform.d.mts +15 -0
  93. package/internal/detect-platform.d.mts.map +1 -0
  94. package/internal/detect-platform.d.ts +15 -0
  95. package/internal/detect-platform.d.ts.map +1 -0
  96. package/internal/detect-platform.js +162 -0
  97. package/internal/detect-platform.js.map +1 -0
  98. package/internal/detect-platform.mjs +157 -0
  99. package/internal/detect-platform.mjs.map +1 -0
  100. package/internal/errors.d.mts +3 -0
  101. package/internal/errors.d.mts.map +1 -0
  102. package/internal/errors.d.ts +3 -0
  103. package/internal/errors.d.ts.map +1 -0
  104. package/internal/errors.js +41 -0
  105. package/internal/errors.js.map +1 -0
  106. package/internal/errors.mjs +36 -0
  107. package/internal/errors.mjs.map +1 -0
  108. package/internal/headers.d.mts +20 -0
  109. package/internal/headers.d.mts.map +1 -0
  110. package/internal/headers.d.ts +20 -0
  111. package/internal/headers.d.ts.map +1 -0
  112. package/internal/headers.js +79 -0
  113. package/internal/headers.js.map +1 -0
  114. package/internal/headers.mjs +74 -0
  115. package/internal/headers.mjs.map +1 -0
  116. package/internal/parse.d.mts +12 -0
  117. package/internal/parse.d.mts.map +1 -0
  118. package/internal/parse.d.ts +12 -0
  119. package/internal/parse.d.ts.map +1 -0
  120. package/internal/parse.js +45 -0
  121. package/internal/parse.js.map +1 -0
  122. package/internal/parse.mjs +42 -0
  123. package/internal/parse.mjs.map +1 -0
  124. package/internal/request-options.d.mts +77 -0
  125. package/internal/request-options.d.mts.map +1 -0
  126. package/internal/request-options.d.ts +77 -0
  127. package/internal/request-options.d.ts.map +1 -0
  128. package/internal/request-options.js +14 -0
  129. package/internal/request-options.js.map +1 -0
  130. package/internal/request-options.mjs +10 -0
  131. package/internal/request-options.mjs.map +1 -0
  132. package/internal/shim-types.d.mts +17 -0
  133. package/internal/shim-types.d.mts.map +1 -0
  134. package/internal/shim-types.d.ts +17 -0
  135. package/internal/shim-types.d.ts.map +1 -0
  136. package/internal/shim-types.js +4 -0
  137. package/internal/shim-types.js.map +1 -0
  138. package/internal/shim-types.mjs +3 -0
  139. package/internal/shim-types.mjs.map +1 -0
  140. package/internal/shims.d.mts +20 -0
  141. package/internal/shims.d.mts.map +1 -0
  142. package/internal/shims.d.ts +20 -0
  143. package/internal/shims.d.ts.map +1 -0
  144. package/internal/shims.js +92 -0
  145. package/internal/shims.js.map +1 -0
  146. package/internal/shims.mjs +85 -0
  147. package/internal/shims.mjs.map +1 -0
  148. package/internal/to-file.d.mts +45 -0
  149. package/internal/to-file.d.mts.map +1 -0
  150. package/internal/to-file.d.ts +45 -0
  151. package/internal/to-file.d.ts.map +1 -0
  152. package/internal/to-file.js +91 -0
  153. package/internal/to-file.js.map +1 -0
  154. package/internal/to-file.mjs +88 -0
  155. package/internal/to-file.mjs.map +1 -0
  156. package/internal/tslib.js +81 -0
  157. package/internal/tslib.mjs +17 -0
  158. package/internal/types.d.mts +69 -0
  159. package/internal/types.d.mts.map +1 -0
  160. package/internal/types.d.ts +69 -0
  161. package/internal/types.d.ts.map +1 -0
  162. package/internal/types.js +4 -0
  163. package/internal/types.js.map +1 -0
  164. package/internal/types.mjs +3 -0
  165. package/internal/types.mjs.map +1 -0
  166. package/internal/uploads.d.mts +42 -0
  167. package/internal/uploads.d.mts.map +1 -0
  168. package/internal/uploads.d.ts +42 -0
  169. package/internal/uploads.d.ts.map +1 -0
  170. package/internal/uploads.js +141 -0
  171. package/internal/uploads.js.map +1 -0
  172. package/internal/uploads.mjs +131 -0
  173. package/internal/uploads.mjs.map +1 -0
  174. package/internal/utils/base64.d.mts +3 -0
  175. package/internal/utils/base64.d.mts.map +1 -0
  176. package/internal/utils/base64.d.ts +3 -0
  177. package/internal/utils/base64.d.ts.map +1 -0
  178. package/internal/utils/base64.js +38 -0
  179. package/internal/utils/base64.js.map +1 -0
  180. package/internal/utils/base64.mjs +33 -0
  181. package/internal/utils/base64.mjs.map +1 -0
  182. package/internal/utils/bytes.d.mts +4 -0
  183. package/internal/utils/bytes.d.mts.map +1 -0
  184. package/internal/utils/bytes.d.ts +4 -0
  185. package/internal/utils/bytes.d.ts.map +1 -0
  186. package/internal/utils/bytes.js +31 -0
  187. package/internal/utils/bytes.js.map +1 -0
  188. package/internal/utils/bytes.mjs +26 -0
  189. package/internal/utils/bytes.mjs.map +1 -0
  190. package/internal/utils/env.d.mts +9 -0
  191. package/internal/utils/env.d.mts.map +1 -0
  192. package/internal/utils/env.d.ts +9 -0
  193. package/internal/utils/env.d.ts.map +1 -0
  194. package/internal/utils/env.js +22 -0
  195. package/internal/utils/env.js.map +1 -0
  196. package/internal/utils/env.mjs +18 -0
  197. package/internal/utils/env.mjs.map +1 -0
  198. package/internal/utils/log.d.mts +37 -0
  199. package/internal/utils/log.d.mts.map +1 -0
  200. package/internal/utils/log.d.ts +37 -0
  201. package/internal/utils/log.d.ts.map +1 -0
  202. package/internal/utils/log.js +85 -0
  203. package/internal/utils/log.js.map +1 -0
  204. package/internal/utils/log.mjs +79 -0
  205. package/internal/utils/log.mjs.map +1 -0
  206. package/internal/utils/path.d.mts +15 -0
  207. package/internal/utils/path.d.mts.map +1 -0
  208. package/internal/utils/path.d.ts +15 -0
  209. package/internal/utils/path.d.ts.map +1 -0
  210. package/internal/utils/path.js +79 -0
  211. package/internal/utils/path.js.map +1 -0
  212. package/internal/utils/path.mjs +74 -0
  213. package/internal/utils/path.mjs.map +1 -0
  214. package/internal/utils/sleep.d.mts +2 -0
  215. package/internal/utils/sleep.d.mts.map +1 -0
  216. package/internal/utils/sleep.d.ts +2 -0
  217. package/internal/utils/sleep.d.ts.map +1 -0
  218. package/internal/utils/sleep.js +7 -0
  219. package/internal/utils/sleep.js.map +1 -0
  220. package/internal/utils/sleep.mjs +3 -0
  221. package/internal/utils/sleep.mjs.map +1 -0
  222. package/internal/utils/uuid.d.mts +5 -0
  223. package/internal/utils/uuid.d.mts.map +1 -0
  224. package/internal/utils/uuid.d.ts +5 -0
  225. package/internal/utils/uuid.d.ts.map +1 -0
  226. package/internal/utils/uuid.js +19 -0
  227. package/internal/utils/uuid.js.map +1 -0
  228. package/internal/utils/uuid.mjs +15 -0
  229. package/internal/utils/uuid.mjs.map +1 -0
  230. package/internal/utils/values.d.mts +18 -0
  231. package/internal/utils/values.d.mts.map +1 -0
  232. package/internal/utils/values.d.ts +18 -0
  233. package/internal/utils/values.d.ts.map +1 -0
  234. package/internal/utils/values.js +112 -0
  235. package/internal/utils/values.js.map +1 -0
  236. package/internal/utils/values.mjs +94 -0
  237. package/internal/utils/values.mjs.map +1 -0
  238. package/internal/utils.d.mts +7 -0
  239. package/internal/utils.d.mts.map +1 -0
  240. package/internal/utils.d.ts +7 -0
  241. package/internal/utils.d.ts.map +1 -0
  242. package/internal/utils.js +11 -0
  243. package/internal/utils.js.map +1 -0
  244. package/internal/utils.mjs +8 -0
  245. package/internal/utils.mjs.map +1 -0
  246. package/package.json +139 -82
  247. package/resource.d.mts +2 -0
  248. package/resource.d.mts.map +1 -0
  249. package/resource.d.ts +2 -0
  250. package/resource.d.ts.map +1 -0
  251. package/resource.js +6 -0
  252. package/resource.js.map +1 -0
  253. package/resource.mjs +2 -0
  254. package/resource.mjs.map +1 -0
  255. package/resources/agent.d.mts +74 -0
  256. package/resources/agent.d.mts.map +1 -0
  257. package/resources/agent.d.ts +74 -0
  258. package/resources/agent.d.ts.map +1 -0
  259. package/resources/agent.js +45 -0
  260. package/resources/agent.js.map +1 -0
  261. package/resources/agent.mjs +41 -0
  262. package/resources/agent.mjs.map +1 -0
  263. package/resources/extract.d.mts +118 -0
  264. package/resources/extract.d.mts.map +1 -0
  265. package/resources/extract.d.ts +118 -0
  266. package/resources/extract.d.ts.map +1 -0
  267. package/resources/extract.js +37 -0
  268. package/resources/extract.js.map +1 -0
  269. package/resources/extract.mjs +33 -0
  270. package/resources/extract.mjs.map +1 -0
  271. package/resources/generate.d.mts +45 -0
  272. package/resources/generate.d.mts.map +1 -0
  273. package/resources/generate.d.ts +45 -0
  274. package/resources/generate.d.ts.map +1 -0
  275. package/resources/generate.js +26 -0
  276. package/resources/generate.js.map +1 -0
  277. package/resources/generate.mjs +22 -0
  278. package/resources/generate.mjs.map +1 -0
  279. package/resources/index.d.mts +4 -0
  280. package/resources/index.d.mts.map +1 -0
  281. package/resources/index.d.ts +4 -0
  282. package/resources/index.d.ts.map +1 -0
  283. package/resources/index.js +11 -0
  284. package/resources/index.js.map +1 -0
  285. package/resources/index.mjs +5 -0
  286. package/resources/index.mjs.map +1 -0
  287. package/resources.d.mts +2 -0
  288. package/resources.d.mts.map +1 -0
  289. package/resources.d.ts +2 -0
  290. package/resources.d.ts.map +1 -0
  291. package/resources.js +5 -0
  292. package/resources.js.map +1 -0
  293. package/resources.mjs +2 -0
  294. package/resources.mjs.map +1 -0
  295. package/src/api-promise.ts +2 -0
  296. package/src/client.ts +756 -0
  297. package/src/core/README.md +3 -0
  298. package/src/core/api-promise.ts +92 -0
  299. package/src/core/error.ts +130 -0
  300. package/src/core/resource.ts +11 -0
  301. package/src/core/streaming.ts +315 -0
  302. package/src/core/uploads.ts +2 -0
  303. package/src/error.ts +2 -0
  304. package/src/index.ts +22 -0
  305. package/src/internal/README.md +3 -0
  306. package/src/internal/builtin-types.ts +93 -0
  307. package/src/internal/decoders/line.ts +135 -0
  308. package/src/internal/detect-platform.ts +196 -0
  309. package/src/internal/errors.ts +33 -0
  310. package/src/internal/headers.ts +97 -0
  311. package/src/internal/parse.ts +64 -0
  312. package/src/internal/request-options.ts +93 -0
  313. package/src/internal/shim-types.ts +26 -0
  314. package/src/internal/shims.ts +107 -0
  315. package/src/internal/to-file.ts +154 -0
  316. package/src/internal/types.ts +95 -0
  317. package/src/internal/uploads.ts +187 -0
  318. package/src/internal/utils/base64.ts +40 -0
  319. package/src/internal/utils/bytes.ts +32 -0
  320. package/src/internal/utils/env.ts +18 -0
  321. package/src/internal/utils/log.ts +126 -0
  322. package/src/internal/utils/path.ts +88 -0
  323. package/src/internal/utils/sleep.ts +3 -0
  324. package/src/internal/utils/uuid.ts +17 -0
  325. package/src/internal/utils/values.ts +105 -0
  326. package/src/internal/utils.ts +8 -0
  327. package/src/lib/.keep +4 -0
  328. package/src/resource.ts +2 -0
  329. package/src/resources/agent.ts +93 -0
  330. package/src/resources/extract.ts +147 -0
  331. package/src/resources/generate.ts +53 -0
  332. package/src/resources/index.ts +11 -0
  333. package/src/resources.ts +1 -0
  334. package/src/streaming.ts +2 -0
  335. package/src/tsconfig.json +11 -0
  336. package/src/uploads.ts +2 -0
  337. package/src/version.ts +1 -0
  338. package/streaming.d.mts +2 -0
  339. package/streaming.d.mts.map +1 -0
  340. package/streaming.d.ts +2 -0
  341. package/streaming.d.ts.map +1 -0
  342. package/streaming.js +6 -0
  343. package/streaming.js.map +1 -0
  344. package/streaming.mjs +2 -0
  345. package/streaming.mjs.map +1 -0
  346. package/uploads.d.mts +2 -0
  347. package/uploads.d.mts.map +1 -0
  348. package/uploads.d.ts +2 -0
  349. package/uploads.d.ts.map +1 -0
  350. package/uploads.js +6 -0
  351. package/uploads.js.map +1 -0
  352. package/uploads.mjs +2 -0
  353. package/uploads.mjs.map +1 -0
  354. package/version.d.mts +2 -0
  355. package/version.d.mts.map +1 -0
  356. package/version.d.ts +2 -0
  357. package/version.d.ts.map +1 -0
  358. package/version.js +5 -0
  359. package/version.js.map +1 -0
  360. package/version.mjs +2 -0
  361. package/version.mjs.map +1 -0
  362. package/dist/cjs/automate.d.ts +0 -156
  363. package/dist/cjs/automate.d.ts.map +0 -1
  364. package/dist/cjs/automate.js +0 -211
  365. package/dist/cjs/automate.js.map +0 -1
  366. package/dist/cjs/automate.test.d.ts +0 -5
  367. package/dist/cjs/automate.test.d.ts.map +0 -1
  368. package/dist/cjs/automate.test.js +0 -441
  369. package/dist/cjs/automate.test.js.map +0 -1
  370. package/dist/cjs/client.d.ts +0 -58
  371. package/dist/cjs/client.d.ts.map +0 -1
  372. package/dist/cjs/client.js +0 -58
  373. package/dist/cjs/client.js.map +0 -1
  374. package/dist/cjs/client.test.d.ts +0 -5
  375. package/dist/cjs/client.test.d.ts.map +0 -1
  376. package/dist/cjs/client.test.js +0 -256
  377. package/dist/cjs/client.test.js.map +0 -1
  378. package/dist/cjs/exceptions.d.ts +0 -57
  379. package/dist/cjs/exceptions.d.ts.map +0 -1
  380. package/dist/cjs/exceptions.js +0 -95
  381. package/dist/cjs/exceptions.js.map +0 -1
  382. package/dist/cjs/exceptions.test.d.ts +0 -5
  383. package/dist/cjs/exceptions.test.d.ts.map +0 -1
  384. package/dist/cjs/exceptions.test.js +0 -239
  385. package/dist/cjs/exceptions.test.js.map +0 -1
  386. package/dist/cjs/extract.d.ts +0 -206
  387. package/dist/cjs/extract.d.ts.map +0 -1
  388. package/dist/cjs/extract.js +0 -223
  389. package/dist/cjs/extract.js.map +0 -1
  390. package/dist/cjs/extract.test.d.ts +0 -5
  391. package/dist/cjs/extract.test.d.ts.map +0 -1
  392. package/dist/cjs/extract.test.js +0 -364
  393. package/dist/cjs/extract.test.js.map +0 -1
  394. package/dist/cjs/generate.d.ts +0 -113
  395. package/dist/cjs/generate.d.ts.map +0 -1
  396. package/dist/cjs/generate.js +0 -124
  397. package/dist/cjs/generate.js.map +0 -1
  398. package/dist/cjs/generate.test.d.ts +0 -5
  399. package/dist/cjs/generate.test.d.ts.map +0 -1
  400. package/dist/cjs/generate.test.js +0 -314
  401. package/dist/cjs/generate.test.js.map +0 -1
  402. package/dist/cjs/index.d.ts +0 -52
  403. package/dist/cjs/index.d.ts.map +0 -1
  404. package/dist/cjs/index.js +0 -72
  405. package/dist/cjs/index.js.map +0 -1
  406. package/dist/cjs/package.json +0 -3
  407. package/dist/cjs/types.d.ts +0 -73
  408. package/dist/cjs/types.d.ts.map +0 -1
  409. package/dist/cjs/types.js +0 -118
  410. package/dist/cjs/types.js.map +0 -1
  411. package/dist/cjs/types.test.d.ts +0 -5
  412. package/dist/cjs/types.test.d.ts.map +0 -1
  413. package/dist/cjs/types.test.js +0 -370
  414. package/dist/cjs/types.test.js.map +0 -1
  415. package/dist/cjs/util/http.d.ts +0 -29
  416. package/dist/cjs/util/http.d.ts.map +0 -1
  417. package/dist/cjs/util/http.js +0 -201
  418. package/dist/cjs/util/http.js.map +0 -1
  419. package/dist/cjs/util/http.test.d.ts +0 -5
  420. package/dist/cjs/util/http.test.d.ts.map +0 -1
  421. package/dist/cjs/util/http.test.js +0 -237
  422. package/dist/cjs/util/http.test.js.map +0 -1
  423. package/dist/esm/automate.d.ts +0 -156
  424. package/dist/esm/automate.d.ts.map +0 -1
  425. package/dist/esm/automate.js +0 -207
  426. package/dist/esm/automate.js.map +0 -1
  427. package/dist/esm/automate.test.d.ts +0 -5
  428. package/dist/esm/automate.test.d.ts.map +0 -1
  429. package/dist/esm/automate.test.js +0 -439
  430. package/dist/esm/automate.test.js.map +0 -1
  431. package/dist/esm/client.d.ts +0 -58
  432. package/dist/esm/client.d.ts.map +0 -1
  433. package/dist/esm/client.js +0 -54
  434. package/dist/esm/client.js.map +0 -1
  435. package/dist/esm/client.test.d.ts +0 -5
  436. package/dist/esm/client.test.d.ts.map +0 -1
  437. package/dist/esm/client.test.js +0 -254
  438. package/dist/esm/client.test.js.map +0 -1
  439. package/dist/esm/exceptions.d.ts +0 -57
  440. package/dist/esm/exceptions.d.ts.map +0 -1
  441. package/dist/esm/exceptions.js +0 -85
  442. package/dist/esm/exceptions.js.map +0 -1
  443. package/dist/esm/exceptions.test.d.ts +0 -5
  444. package/dist/esm/exceptions.test.d.ts.map +0 -1
  445. package/dist/esm/exceptions.test.js +0 -237
  446. package/dist/esm/exceptions.test.js.map +0 -1
  447. package/dist/esm/extract.d.ts +0 -206
  448. package/dist/esm/extract.d.ts.map +0 -1
  449. package/dist/esm/extract.js +0 -219
  450. package/dist/esm/extract.js.map +0 -1
  451. package/dist/esm/extract.test.d.ts +0 -5
  452. package/dist/esm/extract.test.d.ts.map +0 -1
  453. package/dist/esm/extract.test.js +0 -362
  454. package/dist/esm/extract.test.js.map +0 -1
  455. package/dist/esm/generate.d.ts +0 -113
  456. package/dist/esm/generate.d.ts.map +0 -1
  457. package/dist/esm/generate.js +0 -120
  458. package/dist/esm/generate.js.map +0 -1
  459. package/dist/esm/generate.test.d.ts +0 -5
  460. package/dist/esm/generate.test.d.ts.map +0 -1
  461. package/dist/esm/generate.test.js +0 -312
  462. package/dist/esm/generate.test.js.map +0 -1
  463. package/dist/esm/index.d.ts +0 -52
  464. package/dist/esm/index.d.ts.map +0 -1
  465. package/dist/esm/index.js +0 -53
  466. package/dist/esm/index.js.map +0 -1
  467. package/dist/esm/package.json +0 -3
  468. package/dist/esm/types.d.ts +0 -73
  469. package/dist/esm/types.d.ts.map +0 -1
  470. package/dist/esm/types.js +0 -110
  471. package/dist/esm/types.js.map +0 -1
  472. package/dist/esm/types.test.d.ts +0 -5
  473. package/dist/esm/types.test.d.ts.map +0 -1
  474. package/dist/esm/types.test.js +0 -368
  475. package/dist/esm/types.test.js.map +0 -1
  476. package/dist/esm/util/http.d.ts +0 -29
  477. package/dist/esm/util/http.d.ts.map +0 -1
  478. package/dist/esm/util/http.js +0 -164
  479. package/dist/esm/util/http.js.map +0 -1
  480. package/dist/esm/util/http.test.d.ts +0 -5
  481. package/dist/esm/util/http.test.d.ts.map +0 -1
  482. package/dist/esm/util/http.test.js +0 -232
  483. package/dist/esm/util/http.test.js.map +0 -1
  484. package/dist/types/automate.d.ts +0 -156
  485. package/dist/types/automate.d.ts.map +0 -1
  486. package/dist/types/automate.test.d.ts +0 -5
  487. package/dist/types/automate.test.d.ts.map +0 -1
  488. package/dist/types/client.d.ts +0 -58
  489. package/dist/types/client.d.ts.map +0 -1
  490. package/dist/types/client.test.d.ts +0 -5
  491. package/dist/types/client.test.d.ts.map +0 -1
  492. package/dist/types/exceptions.d.ts +0 -57
  493. package/dist/types/exceptions.d.ts.map +0 -1
  494. package/dist/types/exceptions.test.d.ts +0 -5
  495. package/dist/types/exceptions.test.d.ts.map +0 -1
  496. package/dist/types/extract.d.ts +0 -206
  497. package/dist/types/extract.d.ts.map +0 -1
  498. package/dist/types/extract.test.d.ts +0 -5
  499. package/dist/types/extract.test.d.ts.map +0 -1
  500. package/dist/types/generate.d.ts +0 -113
  501. package/dist/types/generate.d.ts.map +0 -1
  502. package/dist/types/generate.test.d.ts +0 -5
  503. package/dist/types/generate.test.d.ts.map +0 -1
  504. package/dist/types/index.d.ts +0 -52
  505. package/dist/types/index.d.ts.map +0 -1
  506. package/dist/types/types.d.ts +0 -73
  507. package/dist/types/types.d.ts.map +0 -1
  508. package/dist/types/types.test.d.ts +0 -5
  509. package/dist/types/types.test.d.ts.map +0 -1
  510. package/dist/types/util/http.d.ts +0 -29
  511. package/dist/types/util/http.d.ts.map +0 -1
  512. package/dist/types/util/http.test.d.ts +0 -5
  513. package/dist/types/util/http.test.d.ts.map +0 -1
@@ -1,362 +0,0 @@
1
- /**
2
- * Tests for Extract operator
3
- */
4
- import { Extract } from './extract.js';
5
- import { HTTPClient } from './util/http.js';
6
- import { MarkdownResponse, JsonResponse, Metadata } from './types.js';
7
- // Mock HTTPClient
8
- jest.mock('./util/http');
9
- describe('Extract', () => {
10
- let extract;
11
- let mockHttpClient;
12
- beforeEach(() => {
13
- mockHttpClient = new HTTPClient({ apiKey: 'test-key' });
14
- extract = new Extract(mockHttpClient);
15
- });
16
- afterEach(() => {
17
- jest.clearAllMocks();
18
- });
19
- describe('markdown', () => {
20
- it('should extract markdown from URL', async () => {
21
- const mockResponse = {
22
- url: 'https://example.com',
23
- content: '# Test Page\n\nContent here',
24
- };
25
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
26
- const result = await extract.markdown('https://example.com');
27
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/markdown', {
28
- url: 'https://example.com',
29
- });
30
- expect(result).toBeInstanceOf(MarkdownResponse);
31
- expect(result.url).toBe('https://example.com');
32
- expect(result.content).toBe('# Test Page\n\nContent here');
33
- });
34
- it('should extract markdown with metadata option', async () => {
35
- const mockResponse = {
36
- url: 'https://example.com',
37
- content: '# Test Page\n\nContent',
38
- metadata: {
39
- title: 'Test Page',
40
- description: 'A test page',
41
- site_name: 'Example Site',
42
- },
43
- };
44
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
45
- const result = await extract.markdown('https://example.com', { metadata: true });
46
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/markdown', {
47
- url: 'https://example.com',
48
- metadata: true,
49
- });
50
- expect(result.metadata).toBeInstanceOf(Metadata);
51
- expect(result.metadata?.title).toBe('Test Page');
52
- expect(result.metadata?.siteName).toBe('Example Site');
53
- });
54
- it('should extract markdown with nocache option', async () => {
55
- const mockResponse = {
56
- url: 'https://example.com',
57
- content: 'Fresh content',
58
- };
59
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
60
- await extract.markdown('https://example.com', { nocache: true });
61
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/markdown', {
62
- url: 'https://example.com',
63
- nocache: true,
64
- });
65
- });
66
- it('should extract markdown with both metadata and nocache options', async () => {
67
- const mockResponse = {
68
- url: 'https://example.com',
69
- content: 'Content',
70
- metadata: { title: 'Test' },
71
- };
72
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
73
- await extract.markdown('https://example.com', { metadata: true, nocache: true });
74
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/markdown', {
75
- url: 'https://example.com',
76
- metadata: true,
77
- nocache: true,
78
- });
79
- });
80
- it('should handle empty content', async () => {
81
- const mockResponse = {
82
- url: 'https://example.com',
83
- content: '',
84
- };
85
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
86
- const result = await extract.markdown('https://example.com');
87
- expect(result.content).toBe('');
88
- });
89
- it('should handle markdown without metadata', async () => {
90
- const mockResponse = {
91
- url: 'https://example.com',
92
- content: '# Title',
93
- };
94
- mockHttpClient.post = jest.fn().mockResolvedValue(mockResponse);
95
- const result = await extract.markdown('https://example.com', { metadata: false });
96
- expect(result.metadata).toBeUndefined();
97
- });
98
- it('should propagate errors from HTTP client', async () => {
99
- const error = new Error('Network error');
100
- mockHttpClient.post = jest.fn().mockRejectedValue(error);
101
- await expect(extract.markdown('https://example.com')).rejects.toThrow('Network error');
102
- });
103
- });
104
- describe('schema', () => {
105
- it('should generate schema from URL', async () => {
106
- const mockSchema = {
107
- type: 'object',
108
- properties: {
109
- title: { type: 'string' },
110
- items: {
111
- type: 'array',
112
- items: { type: 'string' },
113
- },
114
- },
115
- };
116
- mockHttpClient.post = jest.fn().mockResolvedValue(mockSchema);
117
- const result = await extract.schema('https://example.com');
118
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json/schema', {
119
- url: 'https://example.com',
120
- });
121
- expect(result).toEqual(mockSchema);
122
- });
123
- it('should generate schema with instructions', async () => {
124
- const mockSchema = {
125
- type: 'object',
126
- properties: {
127
- stories: { type: 'array' },
128
- },
129
- };
130
- mockHttpClient.post = jest.fn().mockResolvedValue(mockSchema);
131
- await extract.schema('https://example.com', {
132
- instructions: 'extract top stories with title and author',
133
- });
134
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json/schema', {
135
- url: 'https://example.com',
136
- instructions: 'extract top stories with title and author',
137
- });
138
- });
139
- it('should generate schema with nocache option', async () => {
140
- const mockSchema = { type: 'object' };
141
- mockHttpClient.post = jest.fn().mockResolvedValue(mockSchema);
142
- await extract.schema('https://example.com', { nocache: true });
143
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json/schema', {
144
- url: 'https://example.com',
145
- nocache: true,
146
- });
147
- });
148
- it('should generate schema with both instructions and nocache', async () => {
149
- const mockSchema = { type: 'object' };
150
- mockHttpClient.post = jest.fn().mockResolvedValue(mockSchema);
151
- await extract.schema('https://example.com', {
152
- instructions: 'extract products',
153
- nocache: true,
154
- });
155
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json/schema', {
156
- url: 'https://example.com',
157
- instructions: 'extract products',
158
- nocache: true,
159
- });
160
- });
161
- it('should handle complex nested schemas', async () => {
162
- const mockSchema = {
163
- type: 'object',
164
- properties: {
165
- data: {
166
- type: 'object',
167
- properties: {
168
- items: {
169
- type: 'array',
170
- items: {
171
- type: 'object',
172
- properties: {
173
- name: { type: 'string' },
174
- value: { type: 'number' },
175
- },
176
- },
177
- },
178
- },
179
- },
180
- },
181
- };
182
- mockHttpClient.post = jest.fn().mockResolvedValue(mockSchema);
183
- const result = await extract.schema('https://example.com');
184
- expect(result).toEqual(mockSchema);
185
- });
186
- it('should propagate errors from HTTP client', async () => {
187
- const error = new Error('Schema generation failed');
188
- mockHttpClient.post = jest.fn().mockRejectedValue(error);
189
- await expect(extract.schema('https://example.com')).rejects.toThrow('Schema generation failed');
190
- });
191
- });
192
- describe('json', () => {
193
- const testSchema = {
194
- type: 'object',
195
- properties: {
196
- title: { type: 'string' },
197
- count: { type: 'number' },
198
- },
199
- };
200
- it('should extract JSON data from URL', async () => {
201
- const mockData = {
202
- title: 'Test Article',
203
- count: 42,
204
- };
205
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
206
- const result = await extract.json('https://example.com', testSchema);
207
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json', {
208
- url: 'https://example.com',
209
- json_schema: testSchema,
210
- });
211
- expect(result).toBeInstanceOf(JsonResponse);
212
- expect(result.data).toEqual(mockData);
213
- });
214
- it('should extract JSON with nocache option', async () => {
215
- const mockData = { fresh: true };
216
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
217
- await extract.json('https://example.com', testSchema, { nocache: true });
218
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json', {
219
- url: 'https://example.com',
220
- json_schema: testSchema,
221
- nocache: true,
222
- });
223
- });
224
- it('should handle array data', async () => {
225
- const schema = {
226
- type: 'array',
227
- items: {
228
- type: 'object',
229
- properties: {
230
- id: { type: 'number' },
231
- name: { type: 'string' },
232
- },
233
- },
234
- };
235
- const mockData = [
236
- { id: 1, name: 'Item 1' },
237
- { id: 2, name: 'Item 2' },
238
- ];
239
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
240
- const result = await extract.json('https://example.com', schema);
241
- expect(result.data).toEqual(mockData);
242
- });
243
- it('should handle nested object data', async () => {
244
- const schema = {
245
- type: 'object',
246
- properties: {
247
- user: {
248
- type: 'object',
249
- properties: {
250
- profile: {
251
- type: 'object',
252
- properties: {
253
- name: { type: 'string' },
254
- age: { type: 'number' },
255
- },
256
- },
257
- },
258
- },
259
- },
260
- };
261
- const mockData = {
262
- user: {
263
- profile: {
264
- name: 'John Doe',
265
- age: 30,
266
- },
267
- },
268
- };
269
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
270
- const result = await extract.json('https://example.com', schema);
271
- expect(result.data).toEqual(mockData);
272
- });
273
- it('should work with TypeScript generics', async () => {
274
- const mockData = {
275
- name: 'Headphones',
276
- price: 299.99,
277
- inStock: true,
278
- };
279
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
280
- const result = await extract.json('https://example.com', testSchema);
281
- expect(result.data.name).toBe('Headphones');
282
- expect(result.data.price).toBe(299.99);
283
- expect(result.data.inStock).toBe(true);
284
- });
285
- it('should handle empty schema', async () => {
286
- const mockData = { value: 'test' };
287
- mockHttpClient.post = jest.fn().mockResolvedValue(mockData);
288
- const result = await extract.json('https://example.com', {});
289
- expect(mockHttpClient.post).toHaveBeenCalledWith('v1/extract/json', {
290
- url: 'https://example.com',
291
- json_schema: {},
292
- });
293
- expect(result.data).toEqual(mockData);
294
- });
295
- it('should handle null data', async () => {
296
- mockHttpClient.post = jest.fn().mockResolvedValue(null);
297
- const result = await extract.json('https://example.com', testSchema);
298
- expect(result.data).toBeNull();
299
- });
300
- it('should propagate errors from HTTP client', async () => {
301
- const error = new Error('Extraction failed');
302
- mockHttpClient.post = jest.fn().mockRejectedValue(error);
303
- await expect(extract.json('https://example.com', testSchema)).rejects.toThrow('Extraction failed');
304
- });
305
- });
306
- describe('Integration scenarios', () => {
307
- it('should use generated schema for extraction', async () => {
308
- const mockSchema = {
309
- type: 'object',
310
- properties: {
311
- stories: { type: 'array' },
312
- },
313
- };
314
- const mockData = {
315
- stories: [
316
- { title: 'Story 1', points: 100 },
317
- { title: 'Story 2', points: 50 },
318
- ],
319
- };
320
- mockHttpClient.post = jest
321
- .fn()
322
- .mockResolvedValueOnce(mockSchema)
323
- .mockResolvedValueOnce(mockData);
324
- // First generate schema
325
- const schema = await extract.schema('https://example.com', {
326
- instructions: 'extract top stories',
327
- });
328
- // Then use it for extraction
329
- const result = await extract.json('https://example.com', schema);
330
- expect(mockHttpClient.post).toHaveBeenCalledTimes(2);
331
- expect(result.data).toEqual(mockData);
332
- });
333
- it('should handle multiple extractions with same schema', async () => {
334
- const schema = { type: 'object', properties: { value: { type: 'string' } } };
335
- mockHttpClient.post = jest
336
- .fn()
337
- .mockResolvedValueOnce({ value: 'first' })
338
- .mockResolvedValueOnce({ value: 'second' });
339
- const result1 = await extract.json('https://example.com/page1', schema);
340
- const result2 = await extract.json('https://example.com/page2', schema);
341
- expect(result1.data).toEqual({ value: 'first' });
342
- expect(result2.data).toEqual({ value: 'second' });
343
- });
344
- it('should extract markdown and JSON from same URL', async () => {
345
- mockHttpClient.post = jest
346
- .fn()
347
- .mockResolvedValueOnce({
348
- url: 'https://example.com',
349
- content: '# Title',
350
- })
351
- .mockResolvedValueOnce({ title: 'Title', content: 'Content' });
352
- const markdownResult = await extract.markdown('https://example.com');
353
- const jsonResult = await extract.json('https://example.com', {
354
- type: 'object',
355
- properties: { title: { type: 'string' } },
356
- });
357
- expect(markdownResult.content).toBe('# Title');
358
- expect(jsonResult.data).toEqual({ title: 'Title', content: 'Content' });
359
- });
360
- });
361
- });
362
- //# sourceMappingURL=extract.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extract.test.js","sourceRoot":"","sources":["../../src/extract.test.ts"],"names":[],"mappings":"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"}
@@ -1,113 +0,0 @@
1
- /**
2
- * Generate operator for TABStack AI SDK
3
- */
4
- import { HTTPClient } from './util/http';
5
- import { JsonResponse } from './types';
6
- export interface GenerateJsonOptions {
7
- nocache?: boolean;
8
- }
9
- /**
10
- * Generate operator for AI-powered content transformation
11
- *
12
- * This class provides methods for generating transformed content from URLs using AI,
13
- * allowing you to create summaries, restructure data, and enhance content based on
14
- * custom instructions.
15
- */
16
- export declare class Generate {
17
- private httpClient;
18
- constructor(httpClient: HTTPClient);
19
- /**
20
- * Generate transformed JSON with AI
21
- *
22
- * Fetches URL content, extracts data, and transforms it using AI based on custom
23
- * instructions. Use this to generate new content, summaries, categorizations, or
24
- * restructured data. Unlike extract.json() which extracts existing data, this
25
- * method creates new content based on your instructions.
26
- *
27
- * @param url - URL to fetch content from
28
- * @param schema - JSON schema object defining the structure of the transformed output
29
- * @param instructions - Instructions describing how to transform the data. Example: "For each story, categorize it (tech/business/science/other) and write a one-sentence summary explaining what it's about in simple terms."
30
- * @param options - Optional generation options
31
- * @param options.nocache - Bypass cache and force fresh data retrieval. Default: false
32
- *
33
- * @returns JsonResponse containing the transformed data matching the schema
34
- *
35
- * @throws {BadRequestError} When URL, schema, or instructions are missing, or schema format is invalid
36
- * @throws {UnauthorizedError} When API key is invalid or missing
37
- * @throws {InvalidURLError} When URL is invalid
38
- * @throws {ServerError} When server fails to fetch URL, page is too large, or data transformation fails
39
- *
40
- * @example
41
- * Categorize and summarize news stories:
42
- * ```typescript
43
- * const schema = {
44
- * type: 'object',
45
- * properties: {
46
- * summaries: {
47
- * type: 'array',
48
- * items: {
49
- * type: 'object',
50
- * properties: {
51
- * title: { type: 'string' },
52
- * category: { type: 'string' },
53
- * summary: { type: 'string' }
54
- * },
55
- * required: ['title', 'category', 'summary']
56
- * }
57
- * }
58
- * },
59
- * required: ['summaries']
60
- * };
61
- *
62
- * const result = await tabs.generate.json(
63
- * 'https://news.ycombinator.com',
64
- * schema,
65
- * 'For each story, categorize it (tech/business/science/other) and write a one-sentence summary explaining what it\'s about in simple terms.'
66
- * );
67
- *
68
- * console.log(result.data.summaries);
69
- * // [
70
- * // {
71
- * // title: "New AI Model Released",
72
- * // category: "tech",
73
- * // summary: "A research lab announced a new large language model that achieves state-of-the-art performance on reasoning tasks."
74
- * // },
75
- * // ...
76
- * // ]
77
- * ```
78
- *
79
- * @example
80
- * Create structured analysis:
81
- * ```typescript
82
- * const schema = {
83
- * type: 'object',
84
- * properties: {
85
- * sentiment: { type: 'string' },
86
- * keyPoints: {
87
- * type: 'array',
88
- * items: { type: 'string' }
89
- * },
90
- * summary: { type: 'string' },
91
- * tags: {
92
- * type: 'array',
93
- * items: { type: 'string' }
94
- * }
95
- * },
96
- * required: ['sentiment', 'keyPoints', 'summary', 'tags']
97
- * };
98
- *
99
- * const result = await tabs.generate.json(
100
- * 'https://example.com/article',
101
- * schema,
102
- * 'Analyze the sentiment (positive/negative/neutral), extract key points, create a brief summary, and add relevant tags'
103
- * );
104
- *
105
- * console.log(result.data.sentiment); // "positive"
106
- * console.log(result.data.keyPoints); // ["Key point 1", "Key point 2", ...]
107
- * console.log(result.data.summary); // "Brief summary of the article..."
108
- * console.log(result.data.tags); // ["technology", "innovation", ...]
109
- * ```
110
- */
111
- json<T = unknown>(url: string, schema: Record<string, unknown>, instructions: string, options?: GenerateJsonOptions): Promise<JsonResponse<T>>;
112
- }
113
- //# sourceMappingURL=generate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;GAMG;AACH,qBAAa,QAAQ;IACP,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2FG;IACG,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAW5B"}
@@ -1,120 +0,0 @@
1
- /**
2
- * Generate operator for TABStack AI SDK
3
- */
4
- import { JsonResponse } from './types.js';
5
- /**
6
- * Generate operator for AI-powered content transformation
7
- *
8
- * This class provides methods for generating transformed content from URLs using AI,
9
- * allowing you to create summaries, restructure data, and enhance content based on
10
- * custom instructions.
11
- */
12
- export class Generate {
13
- constructor(httpClient) {
14
- this.httpClient = httpClient;
15
- }
16
- /**
17
- * Generate transformed JSON with AI
18
- *
19
- * Fetches URL content, extracts data, and transforms it using AI based on custom
20
- * instructions. Use this to generate new content, summaries, categorizations, or
21
- * restructured data. Unlike extract.json() which extracts existing data, this
22
- * method creates new content based on your instructions.
23
- *
24
- * @param url - URL to fetch content from
25
- * @param schema - JSON schema object defining the structure of the transformed output
26
- * @param instructions - Instructions describing how to transform the data. Example: "For each story, categorize it (tech/business/science/other) and write a one-sentence summary explaining what it's about in simple terms."
27
- * @param options - Optional generation options
28
- * @param options.nocache - Bypass cache and force fresh data retrieval. Default: false
29
- *
30
- * @returns JsonResponse containing the transformed data matching the schema
31
- *
32
- * @throws {BadRequestError} When URL, schema, or instructions are missing, or schema format is invalid
33
- * @throws {UnauthorizedError} When API key is invalid or missing
34
- * @throws {InvalidURLError} When URL is invalid
35
- * @throws {ServerError} When server fails to fetch URL, page is too large, or data transformation fails
36
- *
37
- * @example
38
- * Categorize and summarize news stories:
39
- * ```typescript
40
- * const schema = {
41
- * type: 'object',
42
- * properties: {
43
- * summaries: {
44
- * type: 'array',
45
- * items: {
46
- * type: 'object',
47
- * properties: {
48
- * title: { type: 'string' },
49
- * category: { type: 'string' },
50
- * summary: { type: 'string' }
51
- * },
52
- * required: ['title', 'category', 'summary']
53
- * }
54
- * }
55
- * },
56
- * required: ['summaries']
57
- * };
58
- *
59
- * const result = await tabs.generate.json(
60
- * 'https://news.ycombinator.com',
61
- * schema,
62
- * 'For each story, categorize it (tech/business/science/other) and write a one-sentence summary explaining what it\'s about in simple terms.'
63
- * );
64
- *
65
- * console.log(result.data.summaries);
66
- * // [
67
- * // {
68
- * // title: "New AI Model Released",
69
- * // category: "tech",
70
- * // summary: "A research lab announced a new large language model that achieves state-of-the-art performance on reasoning tasks."
71
- * // },
72
- * // ...
73
- * // ]
74
- * ```
75
- *
76
- * @example
77
- * Create structured analysis:
78
- * ```typescript
79
- * const schema = {
80
- * type: 'object',
81
- * properties: {
82
- * sentiment: { type: 'string' },
83
- * keyPoints: {
84
- * type: 'array',
85
- * items: { type: 'string' }
86
- * },
87
- * summary: { type: 'string' },
88
- * tags: {
89
- * type: 'array',
90
- * items: { type: 'string' }
91
- * }
92
- * },
93
- * required: ['sentiment', 'keyPoints', 'summary', 'tags']
94
- * };
95
- *
96
- * const result = await tabs.generate.json(
97
- * 'https://example.com/article',
98
- * schema,
99
- * 'Analyze the sentiment (positive/negative/neutral), extract key points, create a brief summary, and add relevant tags'
100
- * );
101
- *
102
- * console.log(result.data.sentiment); // "positive"
103
- * console.log(result.data.keyPoints); // ["Key point 1", "Key point 2", ...]
104
- * console.log(result.data.summary); // "Brief summary of the article..."
105
- * console.log(result.data.tags); // ["technology", "innovation", ...]
106
- * ```
107
- */
108
- async json(url, schema, instructions, options) {
109
- const requestData = {
110
- url,
111
- json_schema: schema,
112
- instructions,
113
- };
114
- if (options?.nocache)
115
- requestData.nocache = options.nocache;
116
- const response = await this.httpClient.post('v1/generate/json', requestData);
117
- return JsonResponse.fromJSON(response);
118
- }
119
- }
120
- //# sourceMappingURL=generate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/generate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC;;;;;;GAMG;AACH,MAAM,OAAO,QAAQ;IACnB,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2FG;IACH,KAAK,CAAC,IAAI,CACR,GAAW,EACX,MAA+B,EAC/B,YAAoB,EACpB,OAA6B;QAE7B,MAAM,WAAW,GAA4B;YAC3C,GAAG;YACH,WAAW,EAAE,MAAM;YACnB,YAAY;SACb,CAAC;QACF,IAAI,OAAO,EAAE,OAAO;YAAE,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAE5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAI,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAChF,OAAO,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;CACF"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Tests for Generate operator
3
- */
4
- export {};
5
- //# sourceMappingURL=generate.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.test.d.ts","sourceRoot":"","sources":["../../src/generate.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}