@onlive.ai/common-121 0.2.70 → 0.2.179

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 (366) hide show
  1. package/README.md +0 -1
  2. package/chunk-CHMR2I4G.js +2 -0
  3. package/components/asset/asset-modal-portal.cjs +550 -0
  4. package/components/asset/asset-modal-portal.d.cts +22 -0
  5. package/components/asset/asset-modal-portal.d.ts +22 -0
  6. package/components/asset/asset-modal-portal.js +550 -0
  7. package/components/asset/asset.cjs +3536 -0
  8. package/components/asset/asset.d.cts +37 -0
  9. package/components/asset/asset.d.ts +37 -0
  10. package/components/asset/asset.js +3536 -0
  11. package/components/asset/asset.loaders.cjs +2 -0
  12. package/components/asset/asset.loaders.d.cts +17 -0
  13. package/components/asset/asset.loaders.d.ts +17 -0
  14. package/components/asset/asset.loaders.js +2 -0
  15. package/components/asset/asset.renderer.cjs +2292 -0
  16. package/components/asset/asset.renderer.d.cts +29 -0
  17. package/components/asset/asset.renderer.d.ts +29 -0
  18. package/components/asset/asset.renderer.js +2292 -0
  19. package/components/asset/asset.styles.cjs +683 -0
  20. package/components/asset/asset.styles.d.cts +6 -0
  21. package/components/asset/asset.styles.d.ts +6 -0
  22. package/components/asset/asset.styles.js +683 -0
  23. package/components/asset/asset.types.cjs +2 -0
  24. package/components/asset/asset.types.d.cts +103 -0
  25. package/components/asset/asset.types.d.ts +103 -0
  26. package/components/asset/asset.types.js +1 -0
  27. package/components/asset/index.cjs +3536 -0
  28. package/components/asset/index.d.cts +8 -0
  29. package/components/asset/index.d.ts +8 -0
  30. package/components/asset/index.js +3536 -0
  31. package/components/player/player.cjs +2044 -0
  32. package/components/player/player.d.cts +25 -0
  33. package/components/player/player.d.ts +25 -0
  34. package/components/player/player.js +2044 -0
  35. package/components/player/player.styles.cjs +16 -0
  36. package/components/player/player.styles.d.cts +6 -0
  37. package/components/player/player.styles.d.ts +6 -0
  38. package/components/player/player.styles.js +16 -0
  39. package/components/side-bar/index.cjs +3185 -0
  40. package/components/side-bar/index.d.cts +11 -0
  41. package/components/side-bar/index.d.ts +11 -0
  42. package/components/side-bar/index.js +3185 -0
  43. package/components/side-bar/side-bar.cjs +3185 -0
  44. package/components/side-bar/side-bar.d.cts +83 -0
  45. package/components/side-bar/side-bar.d.ts +83 -0
  46. package/components/side-bar/side-bar.js +3185 -0
  47. package/components/side-bar/side-bar.styles.cjs +801 -0
  48. package/components/side-bar/side-bar.styles.d.cts +6 -0
  49. package/components/side-bar/side-bar.styles.d.ts +6 -0
  50. package/components/side-bar/side-bar.styles.js +801 -0
  51. package/components/side-bar/side-bar.types.cjs +2 -0
  52. package/components/side-bar/side-bar.types.d.cts +105 -0
  53. package/components/side-bar/side-bar.types.d.ts +105 -0
  54. package/components/side-bar/side-bar.types.js +2 -0
  55. package/components/upload/index.cjs +83 -0
  56. package/components/upload/index.d.cts +4 -0
  57. package/components/upload/index.d.ts +4 -0
  58. package/components/upload/index.js +83 -0
  59. package/components/upload/upload.cjs +83 -0
  60. package/components/upload/upload.d.cts +28 -0
  61. package/components/upload/upload.d.ts +28 -0
  62. package/components/upload/upload.js +83 -0
  63. package/components/upload/upload.styles.cjs +65 -0
  64. package/components/upload/upload.styles.d.cts +6 -0
  65. package/components/upload/upload.styles.d.ts +6 -0
  66. package/components/upload/upload.styles.js +65 -0
  67. package/components/upload/upload.types.cjs +2 -0
  68. package/components/upload/upload.types.d.cts +16 -0
  69. package/components/upload/upload.types.d.ts +16 -0
  70. package/components/upload/upload.types.js +1 -0
  71. package/index.cjs +4677 -0
  72. package/index.d.cts +4397 -0
  73. package/index.d.ts +4397 -0
  74. package/index.js +4677 -0
  75. package/media-TFGJGBU2.js +2 -0
  76. package/package.json +35 -11
  77. package/react/components/asset/Asset.cjs +2 -0
  78. package/react/components/asset/Asset.jsx +2 -0
  79. package/react/components/side-bar/SideBar.cjs +2 -0
  80. package/react/components/side-bar/SideBar.jsx +2 -0
  81. package/react/components/upload/Upload.cjs +2 -0
  82. package/react/components/upload/Upload.jsx +2 -0
  83. package/services/audio.service.cjs +2 -2
  84. package/services/audio.service.d.cts +1 -0
  85. package/services/audio.service.d.ts +1 -0
  86. package/services/audio.service.js +2 -2
  87. package/services/conversation/conversation.service.cjs +2 -0
  88. package/services/conversation/conversation.service.d.cts +543 -0
  89. package/services/conversation/conversation.service.d.ts +543 -0
  90. package/services/conversation/conversation.service.js +2 -0
  91. package/services/conversation/conversation.types.cjs +2 -0
  92. package/services/conversation/conversation.types.d.cts +525 -0
  93. package/services/conversation/conversation.types.d.ts +525 -0
  94. package/services/conversation/conversation.types.js +2 -0
  95. package/services/conversation/index.cjs +2 -0
  96. package/services/conversation/index.d.cts +24 -0
  97. package/services/conversation/index.d.ts +24 -0
  98. package/services/conversation/index.js +2 -0
  99. package/services/conversation/mock/actor/agent.cjs +2 -0
  100. package/services/conversation/mock/actor/agent.d.cts +202 -0
  101. package/services/conversation/mock/actor/agent.d.ts +202 -0
  102. package/services/conversation/mock/actor/agent.js +2 -0
  103. package/services/conversation/mock/actor/index.cjs +2 -0
  104. package/services/conversation/mock/actor/index.d.cts +4 -0
  105. package/services/conversation/mock/actor/index.d.ts +4 -0
  106. package/services/conversation/mock/actor/index.js +2 -0
  107. package/services/conversation/mock/actor/strategies.cjs +2 -0
  108. package/services/conversation/mock/actor/strategies.d.cts +31 -0
  109. package/services/conversation/mock/actor/strategies.d.ts +31 -0
  110. package/services/conversation/mock/actor/strategies.js +2 -0
  111. package/services/conversation/mock/errors.cjs +2 -0
  112. package/services/conversation/mock/errors.d.cts +125 -0
  113. package/services/conversation/mock/errors.d.ts +125 -0
  114. package/services/conversation/mock/errors.js +2 -0
  115. package/services/conversation/mock/events.cjs +2 -0
  116. package/services/conversation/mock/events.d.cts +253 -0
  117. package/services/conversation/mock/events.d.ts +253 -0
  118. package/services/conversation/mock/events.js +2 -0
  119. package/services/conversation/mock/factory.cjs +2 -0
  120. package/services/conversation/mock/factory.d.cts +134 -0
  121. package/services/conversation/mock/factory.d.ts +134 -0
  122. package/services/conversation/mock/factory.js +2 -0
  123. package/services/conversation/mock/fixtures.cjs +2 -0
  124. package/services/conversation/mock/fixtures.d.cts +191 -0
  125. package/services/conversation/mock/fixtures.d.ts +191 -0
  126. package/services/conversation/mock/fixtures.js +2 -0
  127. package/services/conversation/mock/generators.cjs +2 -0
  128. package/services/conversation/mock/generators.d.cts +123 -0
  129. package/services/conversation/mock/generators.d.ts +123 -0
  130. package/services/conversation/mock/generators.js +2 -0
  131. package/services/conversation/mock/index.cjs +2 -0
  132. package/services/conversation/mock/index.d.cts +24 -0
  133. package/services/conversation/mock/index.d.ts +24 -0
  134. package/services/conversation/mock/index.js +2 -0
  135. package/services/conversation/mock/livekit/index.cjs +2 -0
  136. package/services/conversation/mock/livekit/index.d.cts +7 -0
  137. package/services/conversation/mock/livekit/index.d.ts +7 -0
  138. package/services/conversation/mock/livekit/index.js +2 -0
  139. package/services/conversation/mock/livekit/local-participant.cjs +2 -0
  140. package/services/conversation/mock/livekit/local-participant.d.cts +204 -0
  141. package/services/conversation/mock/livekit/local-participant.d.ts +204 -0
  142. package/services/conversation/mock/livekit/local-participant.js +2 -0
  143. package/services/conversation/mock/livekit/participant.cjs +2 -0
  144. package/services/conversation/mock/livekit/participant.d.cts +171 -0
  145. package/services/conversation/mock/livekit/participant.d.ts +171 -0
  146. package/services/conversation/mock/livekit/participant.js +2 -0
  147. package/services/conversation/mock/livekit/room.cjs +2 -0
  148. package/services/conversation/mock/livekit/room.d.cts +292 -0
  149. package/services/conversation/mock/livekit/room.d.ts +292 -0
  150. package/services/conversation/mock/livekit/room.js +2 -0
  151. package/services/conversation/mock/livekit/streams.cjs +2 -0
  152. package/services/conversation/mock/livekit/streams.d.cts +190 -0
  153. package/services/conversation/mock/livekit/streams.d.ts +190 -0
  154. package/services/conversation/mock/livekit/streams.js +2 -0
  155. package/services/conversation/mock/livekit/tracks.cjs +2 -0
  156. package/services/conversation/mock/livekit/tracks.d.cts +149 -0
  157. package/services/conversation/mock/livekit/tracks.d.ts +149 -0
  158. package/services/conversation/mock/livekit/tracks.js +2 -0
  159. package/services/conversation/mock/media.cjs +2 -0
  160. package/services/conversation/mock/media.d.cts +174 -0
  161. package/services/conversation/mock/media.d.ts +174 -0
  162. package/services/conversation/mock/media.js +2 -0
  163. package/services/conversation/mock/service.cjs +2 -0
  164. package/services/conversation/mock/service.d.cts +300 -0
  165. package/services/conversation/mock/service.d.ts +300 -0
  166. package/services/conversation/mock/service.js +2 -0
  167. package/services/conversation/mock/service.test.cjs +2 -0
  168. package/services/conversation/mock/service.test.d.cts +1 -0
  169. package/services/conversation/mock/service.test.d.ts +1 -0
  170. package/services/conversation/mock/service.test.js +2 -0
  171. package/services/conversation/mock/state.cjs +2 -0
  172. package/services/conversation/mock/state.d.cts +296 -0
  173. package/services/conversation/mock/state.d.ts +296 -0
  174. package/services/conversation/mock/state.js +2 -0
  175. package/services/conversation/mock/storybook.cjs +2 -0
  176. package/services/conversation/mock/storybook.d.cts +197 -0
  177. package/services/conversation/mock/storybook.d.ts +197 -0
  178. package/services/conversation/mock/storybook.js +2 -0
  179. package/services/conversation/mock/types.cjs +2 -0
  180. package/services/conversation/mock/types.d.cts +442 -0
  181. package/services/conversation/mock/types.d.ts +442 -0
  182. package/services/conversation/mock/types.js +1 -0
  183. package/services/faqs/faqs.service.cjs +2 -0
  184. package/services/faqs/faqs.service.d.cts +16 -0
  185. package/services/faqs/faqs.service.d.ts +16 -0
  186. package/services/faqs/faqs.service.js +2 -0
  187. package/services/faqs/faqs.types.cjs +2 -0
  188. package/services/faqs/faqs.types.d.cts +60 -0
  189. package/services/faqs/faqs.types.d.ts +60 -0
  190. package/services/faqs/faqs.types.js +1 -0
  191. package/services/faqs/index.cjs +2 -0
  192. package/services/faqs/index.d.cts +3 -0
  193. package/services/faqs/index.d.ts +3 -0
  194. package/services/faqs/index.js +2 -0
  195. package/services/file/file.service.cjs +2 -0
  196. package/services/file/file.service.d.cts +66 -0
  197. package/services/file/file.service.d.ts +66 -0
  198. package/services/file/file.service.js +2 -0
  199. package/services/file/file.types.cjs +2 -0
  200. package/services/file/file.types.d.cts +72 -0
  201. package/services/file/file.types.d.ts +72 -0
  202. package/services/file/file.types.js +1 -0
  203. package/services/file/index.cjs +2 -0
  204. package/services/file/index.d.cts +3 -0
  205. package/services/file/index.d.ts +3 -0
  206. package/services/file/index.js +2 -0
  207. package/services/firebase/firebase-api.cjs +2 -2
  208. package/services/firebase/firebase-api.d.cts +25 -9
  209. package/services/firebase/firebase-api.d.ts +25 -9
  210. package/services/firebase/firebase-api.js +2 -2
  211. package/services/multimedia/config.example.cjs +2 -0
  212. package/services/multimedia/config.example.d.cts +13 -0
  213. package/services/multimedia/config.example.d.ts +13 -0
  214. package/services/multimedia/config.example.js +2 -0
  215. package/services/multimedia/index.cjs +2 -0
  216. package/services/multimedia/index.d.cts +3 -0
  217. package/services/multimedia/index.d.ts +3 -0
  218. package/services/multimedia/index.js +2 -0
  219. package/services/multimedia/multimedia.service.cjs +2 -0
  220. package/services/multimedia/multimedia.service.d.cts +28 -0
  221. package/services/multimedia/multimedia.service.d.ts +28 -0
  222. package/services/multimedia/multimedia.service.js +2 -0
  223. package/services/multimedia/multimedia.types.cjs +2 -0
  224. package/services/multimedia/multimedia.types.d.cts +65 -0
  225. package/services/multimedia/multimedia.types.d.ts +65 -0
  226. package/services/multimedia/multimedia.types.js +1 -0
  227. package/services/product/index.cjs +2 -0
  228. package/services/product/index.d.cts +3 -0
  229. package/services/product/index.d.ts +3 -0
  230. package/services/product/index.js +2 -0
  231. package/services/product/product.service.cjs +2 -0
  232. package/services/product/product.service.d.cts +19 -0
  233. package/services/product/product.service.d.ts +19 -0
  234. package/services/product/product.service.js +2 -0
  235. package/services/product/product.types.cjs +2 -0
  236. package/services/product/product.types.d.cts +78 -0
  237. package/services/product/product.types.d.ts +78 -0
  238. package/services/product/product.types.js +1 -0
  239. package/services/request.provider.cjs +1 -1
  240. package/services/request.provider.d.cts +1 -0
  241. package/services/request.provider.d.ts +1 -0
  242. package/services/request.provider.js +1 -1
  243. package/services/session.service.cjs +2 -0
  244. package/services/session.service.d.cts +70 -0
  245. package/services/session.service.d.ts +70 -0
  246. package/services/session.service.js +2 -0
  247. package/services/upload/index.cjs +2 -0
  248. package/services/upload/index.d.cts +2 -0
  249. package/services/upload/index.d.ts +2 -0
  250. package/services/upload/index.js +2 -0
  251. package/services/upload/upload.service.cjs +2 -0
  252. package/services/upload/upload.service.d.cts +81 -0
  253. package/services/upload/upload.service.d.ts +81 -0
  254. package/services/upload/upload.service.js +2 -0
  255. package/themes/dark.cjs +16 -2
  256. package/themes/dark.d.cts +1 -0
  257. package/themes/dark.d.ts +1 -0
  258. package/themes/dark.js +15 -1
  259. package/themes/light.cjs +13 -2
  260. package/themes/light.d.cts +1 -0
  261. package/themes/light.d.ts +1 -0
  262. package/themes/light.js +12 -1
  263. package/types/globals.cjs +2 -0
  264. package/types/globals.d.cts +39 -0
  265. package/types/globals.d.ts +39 -0
  266. package/types/globals.js +1 -0
  267. package/types/tracking-options.cjs +2 -2
  268. package/types/tracking-options.d.cts +8 -6
  269. package/types/tracking-options.d.ts +8 -6
  270. package/types/tracking-options.js +1 -1
  271. package/utils/adopt-styles.cjs +2 -2
  272. package/utils/adopt-styles.d.cts +1 -0
  273. package/utils/adopt-styles.d.ts +1 -0
  274. package/utils/adopt-styles.js +2 -2
  275. package/utils/browser-preferences.cjs +2 -2
  276. package/utils/browser-preferences.d.cts +1 -0
  277. package/utils/browser-preferences.d.ts +1 -0
  278. package/utils/browser-preferences.js +2 -2
  279. package/utils/classify-media.cjs +1 -1
  280. package/utils/classify-media.d.cts +1 -0
  281. package/utils/classify-media.d.ts +1 -0
  282. package/utils/classify-media.js +1 -1
  283. package/utils/decorators.cjs +1 -1
  284. package/utils/decorators.d.cts +1 -0
  285. package/utils/decorators.d.ts +1 -0
  286. package/utils/decorators.js +1 -1
  287. package/utils/detected-lang.cjs +2 -2
  288. package/utils/detected-lang.d.cts +1 -0
  289. package/utils/detected-lang.d.ts +1 -0
  290. package/utils/detected-lang.js +2 -2
  291. package/utils/fullscreen.cjs +2 -2
  292. package/utils/fullscreen.d.cts +6 -5
  293. package/utils/fullscreen.d.ts +6 -5
  294. package/utils/fullscreen.js +2 -2
  295. package/utils/insert-script.cjs +1 -1
  296. package/utils/insert-script.d.cts +1 -0
  297. package/utils/insert-script.d.ts +1 -0
  298. package/utils/insert-script.js +1 -1
  299. package/utils/is-map-compatible.cjs +1 -1
  300. package/utils/is-map-compatible.d.cts +1 -0
  301. package/utils/is-map-compatible.d.ts +1 -0
  302. package/utils/is-map-compatible.js +1 -1
  303. package/utils/markdown.cjs +2 -2
  304. package/utils/markdown.d.cts +1 -0
  305. package/utils/markdown.d.ts +1 -0
  306. package/utils/markdown.js +2 -2
  307. package/utils/merge.cjs +2 -2
  308. package/utils/merge.d.cts +2 -1
  309. package/utils/merge.d.ts +2 -1
  310. package/utils/merge.js +2 -2
  311. package/utils/multiband-track-volume.cjs +2 -2
  312. package/utils/multiband-track-volume.d.cts +1 -0
  313. package/utils/multiband-track-volume.d.ts +1 -0
  314. package/utils/multiband-track-volume.js +2 -2
  315. package/utils/onlive-url-params.cjs +1 -1
  316. package/utils/onlive-url-params.d.cts +1 -0
  317. package/utils/onlive-url-params.d.ts +1 -0
  318. package/utils/onlive-url-params.js +1 -1
  319. package/utils/pretty-distance.cjs +2 -2
  320. package/utils/pretty-distance.d.cts +2 -1
  321. package/utils/pretty-distance.d.ts +2 -1
  322. package/utils/pretty-distance.js +2 -2
  323. package/utils/pretty-time.cjs +2 -0
  324. package/utils/pretty-time.d.cts +16 -0
  325. package/utils/pretty-time.d.ts +16 -0
  326. package/utils/pretty-time.js +2 -0
  327. package/utils/random-string.cjs +1 -1
  328. package/utils/random-string.d.cts +1 -0
  329. package/utils/random-string.d.ts +1 -0
  330. package/utils/random-string.js +1 -1
  331. package/utils/resource-type.cjs +1 -1
  332. package/utils/resource-type.d.cts +1 -0
  333. package/utils/resource-type.d.ts +1 -0
  334. package/utils/resource-type.js +1 -1
  335. package/utils/round-number.cjs +2 -0
  336. package/utils/round-number.d.cts +30 -0
  337. package/utils/round-number.d.ts +30 -0
  338. package/utils/round-number.js +2 -0
  339. package/utils/safe-html.cjs +2 -2
  340. package/utils/safe-html.d.cts +12 -4
  341. package/utils/safe-html.d.ts +12 -4
  342. package/utils/safe-html.js +2 -2
  343. package/utils/sanitize.cjs +2 -2
  344. package/utils/sanitize.d.cts +1 -0
  345. package/utils/sanitize.d.ts +1 -0
  346. package/utils/sanitize.js +2 -2
  347. package/utils/spread.cjs +2 -2
  348. package/utils/spread.d.cts +1 -0
  349. package/utils/spread.d.ts +1 -0
  350. package/utils/spread.js +2 -2
  351. package/utils/watch.cjs +1 -1
  352. package/utils/watch.d.cts +1 -0
  353. package/utils/watch.d.ts +1 -0
  354. package/utils/watch.js +1 -1
  355. package/services/firebase/firebase.service.cjs +0 -2
  356. package/services/firebase/firebase.service.d.cts +0 -40
  357. package/services/firebase/firebase.service.d.ts +0 -40
  358. package/services/firebase/firebase.service.js +0 -2
  359. package/services/livekit.service.cjs +0 -2
  360. package/services/livekit.service.d.cts +0 -219
  361. package/services/livekit.service.d.ts +0 -219
  362. package/services/livekit.service.js +0 -2
  363. package/types/window-context.cjs +0 -2
  364. package/types/window-context.d.cts +0 -8
  365. package/types/window-context.d.ts +0 -8
  366. package/types/window-context.js +0 -1
@@ -0,0 +1,442 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ /**
3
+ * @summary Type definitions for the mock LiveKit/Conversation service.
4
+ *
5
+ * @description Contains all type definitions needed for the mock implementation
6
+ * including room state, participant state, track state, agent state, and configuration options.
7
+ */
8
+ /**
9
+ * Represents the state of a mock room.
10
+ *
11
+ * @property {string} id - Unique room identifier.
12
+ * @property {string} name - Display name of the room.
13
+ * @property {string} groupId - Group identifier for room categorization.
14
+ * @property {string} createdAt - ISO timestamp of room creation.
15
+ * @property {string} [endedAt] - ISO timestamp when room ended, undefined if active.
16
+ * @property {Record<string, unknown>} [metadata] - Additional room metadata.
17
+ * @property {boolean} isActive - Whether the room is currently active.
18
+ * @property {string[]} participantIds - Array of participant identities in the room.
19
+ * @property {MockConnectionState} connectionState - Current connection state of the room.
20
+ */
21
+ interface MockRoomState {
22
+ id: string;
23
+ name: string;
24
+ groupId: string;
25
+ createdAt: string;
26
+ endedAt?: string;
27
+ metadata?: Record<string, unknown>;
28
+ isActive: boolean;
29
+ participantIds: string[];
30
+ connectionState: MockConnectionState;
31
+ wsURL: string;
32
+ token: string;
33
+ }
34
+ /**
35
+ * Connection states that mirror LiveKit's ConnectionState enum.
36
+ */
37
+ type MockConnectionState = "disconnected" | "connecting" | "connected" | "reconnecting";
38
+ /**
39
+ * Represents the state of a mock participant.
40
+ *
41
+ * @property {string} identity - Unique participant identity.
42
+ * @property {string} [name] - Display name of the participant.
43
+ * @property {string} roomId - ID of the room the participant is in.
44
+ * @property {string} joinedAt - ISO timestamp when participant joined.
45
+ * @property {boolean} isConnected - Whether the participant is currently connected.
46
+ * @property {string[]} trackIds - Array of track IDs published by this participant.
47
+ * @property {MockParticipantRole} role - Role of the participant.
48
+ * @property {Record<string, string>} attributes - Participant attributes.
49
+ * @property {MockParticipantKind} kind - Kind of participant (standard, ingress, egress, sip, agent).
50
+ */
51
+ interface MockParticipantState {
52
+ identity: string;
53
+ name?: string;
54
+ roomId: string;
55
+ joinedAt: string;
56
+ isConnected: boolean;
57
+ trackIds: string[];
58
+ role: MockParticipantRole;
59
+ attributes: Record<string, string>;
60
+ kind: MockParticipantKind;
61
+ isLocal: boolean;
62
+ }
63
+ /**
64
+ * Participant roles in the conversation.
65
+ */
66
+ type MockParticipantRole = "user" | "agent" | "assistant";
67
+ /**
68
+ * Participant kinds matching LiveKit's participant types.
69
+ */
70
+ type MockParticipantKind = "standard" | "ingress" | "egress" | "sip" | "agent";
71
+ /**
72
+ * Represents the state of a mock track.
73
+ *
74
+ * @property {string} id - Unique track identifier.
75
+ * @property {MockTrackKind} kind - Type of track (audio, video, data).
76
+ * @property {MockTrackSource} source - Source of the track.
77
+ * @property {string} participantIdentity - Identity of the participant who published this track.
78
+ * @property {string} roomId - ID of the room this track belongs to.
79
+ * @property {string} publishedAt - ISO timestamp when track was published.
80
+ * @property {boolean} muted - Whether the track is currently muted.
81
+ * @property {Record<string, unknown>} [metadata] - Additional track metadata.
82
+ */
83
+ interface MockTrackState {
84
+ id: string;
85
+ kind: MockTrackKind;
86
+ source: MockTrackSource;
87
+ participantIdentity: string;
88
+ roomId: string;
89
+ publishedAt: string;
90
+ muted: boolean;
91
+ metadata?: Record<string, unknown>;
92
+ }
93
+ /**
94
+ * Types of tracks that can be published.
95
+ */
96
+ type MockTrackKind = "audio" | "video" | "data";
97
+ /**
98
+ * Track source types matching LiveKit's track sources.
99
+ */
100
+ type MockTrackSource = "camera" | "microphone" | "screen_share" | "screen_share_audio" | "unknown";
101
+ /**
102
+ * Represents the state of a mock agent.
103
+ *
104
+ * @property {string} id - Unique agent identifier.
105
+ * @property {string} roomId - ID of the room the agent is in.
106
+ * @property {string} name - Display name of the agent.
107
+ * @property {MockAgentStatus} status - Current status of the agent.
108
+ * @property {string} startedAt - ISO timestamp when agent started.
109
+ * @property {string} [stoppedAt] - ISO timestamp when agent stopped.
110
+ * @property {MockAgentConfig} config - Agent configuration.
111
+ * @property {MockAgentMessage[]} messageHistory - History of messages exchanged with agent.
112
+ */
113
+ interface MockAgentState {
114
+ id: string;
115
+ roomId: string;
116
+ name: string;
117
+ status: MockAgentStatus;
118
+ startedAt: string;
119
+ stoppedAt?: string;
120
+ config: MockAgentConfig;
121
+ messageHistory: MockAgentMessage[];
122
+ }
123
+ /**
124
+ * Agent status values.
125
+ */
126
+ type MockAgentStatus = "idle" | "starting" | "running" | "stopping" | "stopped" | "error";
127
+ /**
128
+ * Configuration for a mock agent.
129
+ *
130
+ * @property {string} [type] - Type of agent (e.g., 'chat', 'voice').
131
+ * @property {string} [nature] - Nature of agent ('ai' or 'real').
132
+ * @property {MockAgentResponseStrategy} responseStrategy - How the agent should respond.
133
+ * @property {number} [responseDelayMs] - Delay before responding in milliseconds.
134
+ * @property {string[]} [cannedResponses] - Predefined responses for deterministic testing.
135
+ * @property {number} [maxMessages] - Maximum messages before stopping.
136
+ * @property {boolean} [simulateTyping] - Whether to simulate typing indicator.
137
+ * @property {number} [typingDelayPerChar] - Typing delay per character (ms).
138
+ * @property {string} [name] - Agent display name.
139
+ */
140
+ interface MockAgentConfig {
141
+ type?: string | string[];
142
+ nature?: "ai" | "real";
143
+ name?: string;
144
+ responseStrategy: MockAgentResponseStrategy;
145
+ responseDelayMs?: number;
146
+ cannedResponses?: string[];
147
+ maxMessages?: number;
148
+ simulateTyping?: boolean;
149
+ typingDelayPerChar?: number;
150
+ }
151
+ /**
152
+ * Strategies for how mock agents should respond.
153
+ */
154
+ type MockAgentResponseStrategy = "echo" | "canned" | "random" | "sequential" | "silent" | "error" | "custom";
155
+ /**
156
+ * Message exchanged with a mock agent.
157
+ */
158
+ interface MockAgentMessage {
159
+ id: string;
160
+ content: string;
161
+ role: "user" | "agent";
162
+ /** Timestamp - ISO string or number */
163
+ timestamp: string | number;
164
+ }
165
+ /**
166
+ * Represents a mock message in a room.
167
+ *
168
+ * @property {string} id - Unique message identifier.
169
+ * @property {string} roomId - ID of the room this message belongs to.
170
+ * @property {string} content - Text content of the message.
171
+ * @property {string} participantIdentity - Identity of the sender.
172
+ * @property {string} createdAt - ISO timestamp of message creation.
173
+ * @property {"standard" | "system"} [type] - Message type classification.
174
+ * @property {Record<string, unknown>} [attributes] - Message attributes.
175
+ */
176
+ interface MockMessageState {
177
+ id: string;
178
+ roomId: string;
179
+ content: string;
180
+ participantIdentity: string;
181
+ createdAt: string;
182
+ type?: "standard" | "system";
183
+ attributes?: Record<string, unknown>;
184
+ }
185
+ /**
186
+ * All possible mock event types.
187
+ */
188
+ type MockEventType = "roomCreated" | "roomEnded" | "roomConnectionStateChanged" | "participantJoined" | "participantLeft" | "participantAttributesChanged" | "trackPublished" | "trackUnpublished" | "trackMuted" | "trackUnmuted" | "messageReceived" | "messageSent" | "typingIndicator" | "agentStarted" | "agentStopped" | "agentMessage" | "dataReceived" | "error";
189
+ /**
190
+ * Base event structure for all mock events.
191
+ */
192
+ interface MockEventBase {
193
+ type: MockEventType;
194
+ timestamp: string;
195
+ roomId?: string;
196
+ }
197
+ /**
198
+ * Room created event.
199
+ */
200
+ interface MockRoomCreatedEvent extends MockEventBase {
201
+ type: "roomCreated";
202
+ roomId: string;
203
+ room: MockRoomState;
204
+ }
205
+ /**
206
+ * Room ended event.
207
+ */
208
+ interface MockRoomEndedEvent extends MockEventBase {
209
+ type: "roomEnded";
210
+ roomId: string;
211
+ }
212
+ /**
213
+ * Room connection state changed event.
214
+ */
215
+ interface MockRoomConnectionStateChangedEvent extends MockEventBase {
216
+ type: "roomConnectionStateChanged";
217
+ roomId: string;
218
+ state: MockConnectionState;
219
+ previousState: MockConnectionState;
220
+ }
221
+ /**
222
+ * Participant joined event.
223
+ */
224
+ interface MockParticipantJoinedEvent extends MockEventBase {
225
+ type: "participantJoined";
226
+ roomId: string;
227
+ participant: MockParticipantState;
228
+ }
229
+ /**
230
+ * Participant left event.
231
+ */
232
+ interface MockParticipantLeftEvent extends MockEventBase {
233
+ type: "participantLeft";
234
+ roomId: string;
235
+ participantIdentity: string;
236
+ }
237
+ /**
238
+ * Participant attributes changed event.
239
+ */
240
+ interface MockParticipantAttributesChangedEvent extends MockEventBase {
241
+ type: "participantAttributesChanged";
242
+ roomId: string;
243
+ participantIdentity: string;
244
+ attributes: Record<string, string>;
245
+ previousAttributes: Record<string, string>;
246
+ }
247
+ /**
248
+ * Track published event.
249
+ */
250
+ interface MockTrackPublishedEvent extends MockEventBase {
251
+ type: "trackPublished";
252
+ roomId: string;
253
+ participantIdentity: string;
254
+ track: MockTrackState;
255
+ }
256
+ /**
257
+ * Track unpublished event.
258
+ */
259
+ interface MockTrackUnpublishedEvent extends MockEventBase {
260
+ type: "trackUnpublished";
261
+ roomId: string;
262
+ participantIdentity: string;
263
+ trackId: string;
264
+ }
265
+ /**
266
+ * Track muted event.
267
+ */
268
+ interface MockTrackMutedEvent extends MockEventBase {
269
+ type: "trackMuted";
270
+ roomId: string;
271
+ trackId: string;
272
+ }
273
+ /**
274
+ * Track unmuted event.
275
+ */
276
+ interface MockTrackUnmutedEvent extends MockEventBase {
277
+ type: "trackUnmuted";
278
+ roomId: string;
279
+ trackId: string;
280
+ }
281
+ /**
282
+ * Message received event.
283
+ */
284
+ interface MockMessageReceivedEvent extends MockEventBase {
285
+ type: "messageReceived";
286
+ roomId: string;
287
+ message: MockMessageState;
288
+ }
289
+ /**
290
+ * Message sent event.
291
+ */
292
+ interface MockMessageSentEvent extends MockEventBase {
293
+ type: "messageSent";
294
+ roomId: string;
295
+ message: MockMessageState;
296
+ }
297
+ /**
298
+ * Typing indicator event.
299
+ */
300
+ interface MockTypingIndicatorEvent extends MockEventBase {
301
+ type: "typingIndicator";
302
+ roomId: string;
303
+ participantIdentity: string;
304
+ isTyping: boolean;
305
+ }
306
+ /**
307
+ * Agent started event.
308
+ */
309
+ interface MockAgentStartedEvent extends MockEventBase {
310
+ type: "agentStarted";
311
+ roomId: string;
312
+ agent: MockAgentState;
313
+ }
314
+ /**
315
+ * Agent stopped event.
316
+ */
317
+ interface MockAgentStoppedEvent extends MockEventBase {
318
+ type: "agentStopped";
319
+ roomId: string;
320
+ agentId: string;
321
+ }
322
+ /**
323
+ * Agent message event.
324
+ */
325
+ interface MockAgentMessageEvent extends MockEventBase {
326
+ type: "agentMessage";
327
+ roomId: string;
328
+ agentId: string;
329
+ message: MockAgentMessage;
330
+ }
331
+ /**
332
+ * Data received event.
333
+ */
334
+ interface MockDataReceivedEvent extends MockEventBase {
335
+ type: "dataReceived";
336
+ roomId: string;
337
+ participantIdentity: string;
338
+ data: Uint8Array;
339
+ topic?: string;
340
+ }
341
+ /**
342
+ * Error event.
343
+ */
344
+ interface MockErrorEvent extends MockEventBase {
345
+ type: "error";
346
+ error: MockError;
347
+ }
348
+ /**
349
+ * Union type for all mock events.
350
+ */
351
+ type MockEvent = MockRoomCreatedEvent | MockRoomEndedEvent | MockRoomConnectionStateChangedEvent | MockParticipantJoinedEvent | MockParticipantLeftEvent | MockParticipantAttributesChangedEvent | MockTrackPublishedEvent | MockTrackUnpublishedEvent | MockTrackMutedEvent | MockTrackUnmutedEvent | MockMessageReceivedEvent | MockMessageSentEvent | MockTypingIndicatorEvent | MockAgentStartedEvent | MockAgentStoppedEvent | MockAgentMessageEvent | MockDataReceivedEvent | MockErrorEvent;
352
+ /**
353
+ * Configuration options for the mock service.
354
+ *
355
+ * @property {number} [latencyMs] - Artificial latency in milliseconds.
356
+ * @property {boolean} [strictMode] - Throw errors for invalid operations.
357
+ * @property {number} [seed] - Random seed for deterministic behavior.
358
+ * @property {MockScenario} [scenario] - Predefined scenario to simulate.
359
+ * @property {MockErrorConfig} [errorConfig] - Configuration for forced errors.
360
+ * @property {boolean} [autoEmitEvents] - Automatically emit events on state changes.
361
+ */
362
+ interface MockServiceConfig {
363
+ latencyMs?: number;
364
+ strictMode?: boolean;
365
+ seed?: number;
366
+ scenario?: MockScenario;
367
+ errorConfig?: MockErrorConfig;
368
+ autoEmitEvents?: boolean;
369
+ organizationId?: string;
370
+ apiUrl?: string;
371
+ }
372
+ /**
373
+ * Predefined test scenarios.
374
+ */
375
+ type MockScenario = "happy_path" | "room_disconnect" | "agent_timeout" | "participant_leave" | "track_failure" | "network_unstable" | "slow_network" | "unreliable";
376
+ /**
377
+ * Configuration for forced errors.
378
+ *
379
+ * @property {boolean} [roomNotFound] - Force "room not found" errors.
380
+ * @property {boolean} [participantAlreadyJoined] - Force "already joined" errors.
381
+ * @property {boolean} [trackNotFound] - Force "track not found" errors.
382
+ * @property {boolean} [unauthorized] - Force authentication errors.
383
+ * @property {boolean} [networkError] - Force network errors.
384
+ * @property {number} [errorRate] - Percentage of operations that should fail (0-100).
385
+ */
386
+ interface MockErrorConfig {
387
+ roomNotFound?: boolean;
388
+ participantAlreadyJoined?: boolean;
389
+ trackNotFound?: boolean;
390
+ unauthorized?: boolean;
391
+ networkError?: boolean;
392
+ errorRate?: number;
393
+ }
394
+ /**
395
+ * Mock error codes.
396
+ */
397
+ type MockErrorCode = "ROOM_NOT_FOUND" | "ROOM_ENDED" | "PARTICIPANT_ALREADY_JOINED" | "PARTICIPANT_NOT_FOUND" | "TRACK_NOT_FOUND" | "AGENT_NOT_FOUND" | "UNAUTHORIZED" | "NETWORK_ERROR" | "INVALID_OPERATION" | "TIMEOUT";
398
+ /**
399
+ * Mock error structure.
400
+ */
401
+ interface MockError {
402
+ code: MockErrorCode;
403
+ message: string;
404
+ details?: Record<string, unknown>;
405
+ }
406
+ /**
407
+ * Event listener callback type.
408
+ */
409
+ type MockEventListener<T extends MockEvent = MockEvent> = (event: T) => void;
410
+ /**
411
+ * Event listener for specific event types.
412
+ */
413
+ type MockEventListenerMap = {
414
+ [K in MockEventType]?: Set<MockEventListener>;
415
+ };
416
+ /**
417
+ * Complete snapshot of the mock service state.
418
+ */
419
+ interface MockStateSnapshot {
420
+ rooms: Map<string, MockRoomState>;
421
+ participants: Map<string, MockParticipantState>;
422
+ tracks: Map<string, MockTrackState>;
423
+ agents: Map<string, MockAgentState>;
424
+ messages: Map<string, MockMessageState[]>;
425
+ config: MockServiceConfig;
426
+ eventHistory: MockEvent[];
427
+ }
428
+ /**
429
+ * Serializable version of the snapshot for JSON export.
430
+ */
431
+ interface MockStateSnapshotJSON {
432
+ rooms: Record<string, MockRoomState>;
433
+ participants: Record<string, MockParticipantState>;
434
+ tracks: Record<string, MockTrackState>;
435
+ agents: Record<string, MockAgentState>;
436
+ messages: Record<string, MockMessageState[]>;
437
+ config: MockServiceConfig;
438
+ eventHistory: MockEvent[];
439
+ exportedAt: string;
440
+ }
441
+
442
+ export type { MockAgentConfig, MockAgentMessage, MockAgentMessageEvent, MockAgentResponseStrategy, MockAgentStartedEvent, MockAgentState, MockAgentStatus, MockAgentStoppedEvent, MockConnectionState, MockDataReceivedEvent, MockError, MockErrorCode, MockErrorConfig, MockErrorEvent, MockEvent, MockEventBase, MockEventListener, MockEventListenerMap, MockEventType, MockMessageReceivedEvent, MockMessageSentEvent, MockMessageState, MockParticipantAttributesChangedEvent, MockParticipantJoinedEvent, MockParticipantKind, MockParticipantLeftEvent, MockParticipantRole, MockParticipantState, MockRoomConnectionStateChangedEvent, MockRoomCreatedEvent, MockRoomEndedEvent, MockRoomState, MockScenario, MockServiceConfig, MockStateSnapshot, MockStateSnapshotJSON, MockTrackKind, MockTrackMutedEvent, MockTrackPublishedEvent, MockTrackSource, MockTrackState, MockTrackUnmutedEvent, MockTrackUnpublishedEvent, MockTypingIndicatorEvent };
@@ -0,0 +1 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ "use strict";var a=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var u=(n,e)=>{for(var t in e)a(n,t,{get:e[t],enumerable:!0})},h=(n,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of f(e))!p.call(n,r)&&r!==t&&a(n,r,{get:()=>e[r],enumerable:!(i=d(e,r))||i.enumerable});return n};var l=n=>h(a({},"__esModule",{value:!0}),n);var q={};u(q,{FaqsService:()=>g});module.exports=l(q);var g=class n{constructor(e){this.config=e}static initialize(e){return new n(e)}getBaseUrl(){return`${this.config.baseUrl}`}getHeaders(){return{"Content-Type":"application/json"}}async makeRequest(e,t={}){let i=`${this.getBaseUrl()}${e}`,r=await fetch(i,{...t,headers:{...this.getHeaders(),...t.headers}});if(!r.ok)throw new Error(`FAQs API error: ${r.status} ${r.statusText}`);return r.json()}async getSettingsByOrganization(e,t){try{let i=new URLSearchParams;t&&i.append("userGroupId",t);let r=i.toString(),o=`${this.getBaseUrl()}/settings/organization/${e}${r?`?${r}`:""}`,s=await fetch(o,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(s.status===404)return null;if(!s.ok)throw new Error(`Failed to fetch settings: ${s.statusText}`);return await s.json()}catch(i){return console.error("Error fetching settings:",i),null}}async getFaqs(e={}){let t=new URLSearchParams;if(e.search&&t.append("search",e.search),e.organizationId&&t.append("organizationId",e.organizationId),e.groupId&&t.append("groupId",e.groupId),e.isActive!==void 0&&t.append("isActive",e.isActive.toString()),e.page&&t.append("page",e.page.toString()),e.limit&&t.append("limit",e.limit.toString()),e.sortBy&&t.append("sortBy",e.sortBy),e.sortOrder&&t.append("sortOrder",e.sortOrder),e.extraFilters){for(let[o,s]of Object.entries(e.extraFilters))if(s&&(Array.isArray(s)?s.length>0:s.toString().trim()!=="")){let c=Array.isArray(s)?s.join(","):s.toString();t.append(`extra_${o}`,c)}}let i=t.toString(),r=`/faqs${i?`?${i}`:""}`;return this.makeRequest(r)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};0&&(module.exports={FaqsService});
@@ -0,0 +1,16 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ import { FaqsServiceConfig, SettingsResponse, FaqsSearchParams, FaqsApiResponse, FaqItem } from './faqs.types.cjs';
3
+
4
+ declare class FaqsService {
5
+ private config;
6
+ constructor(config: FaqsServiceConfig);
7
+ static initialize(config: FaqsServiceConfig): FaqsService;
8
+ private getBaseUrl;
9
+ private getHeaders;
10
+ private makeRequest;
11
+ getSettingsByOrganization(organizationId: string, userGroupId?: string): Promise<SettingsResponse | null>;
12
+ getFaqs(params?: FaqsSearchParams): Promise<FaqsApiResponse>;
13
+ getFaqById(id: string): Promise<FaqItem>;
14
+ }
15
+
16
+ export { FaqsService };
@@ -0,0 +1,16 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ import { FaqsServiceConfig, SettingsResponse, FaqsSearchParams, FaqsApiResponse, FaqItem } from './faqs.types.js';
3
+
4
+ declare class FaqsService {
5
+ private config;
6
+ constructor(config: FaqsServiceConfig);
7
+ static initialize(config: FaqsServiceConfig): FaqsService;
8
+ private getBaseUrl;
9
+ private getHeaders;
10
+ private makeRequest;
11
+ getSettingsByOrganization(organizationId: string, userGroupId?: string): Promise<SettingsResponse | null>;
12
+ getFaqs(params?: FaqsSearchParams): Promise<FaqsApiResponse>;
13
+ getFaqById(id: string): Promise<FaqItem>;
14
+ }
15
+
16
+ export { FaqsService };
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ var o=class a{constructor(e){this.config=e}static initialize(e){return new a(e)}getBaseUrl(){return`${this.config.baseUrl}`}getHeaders(){return{"Content-Type":"application/json"}}async makeRequest(e,t={}){let i=`${this.getBaseUrl()}${e}`,s=await fetch(i,{...t,headers:{...this.getHeaders(),...t.headers}});if(!s.ok)throw new Error(`FAQs API error: ${s.status} ${s.statusText}`);return s.json()}async getSettingsByOrganization(e,t){try{let i=new URLSearchParams;t&&i.append("userGroupId",t);let s=i.toString(),n=`${this.getBaseUrl()}/settings/organization/${e}${s?`?${s}`:""}`,r=await fetch(n,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(r.status===404)return null;if(!r.ok)throw new Error(`Failed to fetch settings: ${r.statusText}`);return await r.json()}catch(i){return console.error("Error fetching settings:",i),null}}async getFaqs(e={}){let t=new URLSearchParams;if(e.search&&t.append("search",e.search),e.organizationId&&t.append("organizationId",e.organizationId),e.groupId&&t.append("groupId",e.groupId),e.isActive!==void 0&&t.append("isActive",e.isActive.toString()),e.page&&t.append("page",e.page.toString()),e.limit&&t.append("limit",e.limit.toString()),e.sortBy&&t.append("sortBy",e.sortBy),e.sortOrder&&t.append("sortOrder",e.sortOrder),e.extraFilters){for(let[n,r]of Object.entries(e.extraFilters))if(r&&(Array.isArray(r)?r.length>0:r.toString().trim()!=="")){let g=Array.isArray(r)?r.join(","):r.toString();t.append(`extra_${n}`,g)}}let i=t.toString(),s=`/faqs${i?`?${i}`:""}`;return this.makeRequest(s)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};export{o as FaqsService};
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ "use strict";var n=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var l=(e,t,a,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of o(t))!g.call(e,r)&&r!==a&&n(e,r,{get:()=>t[r],enumerable:!(i=s(t,r))||i.enumerable});return e};var p=e=>l(n({},"__esModule",{value:!0}),e);var d={};module.exports=p(d);
@@ -0,0 +1,60 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ interface FaqsServiceConfig {
3
+ baseUrl: string;
4
+ organizationId: string;
5
+ }
6
+ interface FaqItem {
7
+ id: string;
8
+ question: string;
9
+ answer: string;
10
+ organizationId: string;
11
+ groupId?: string | null;
12
+ priority: number;
13
+ isActive: boolean;
14
+ metadata?: any | null;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ createdBy?: string | null;
18
+ }
19
+ interface FaqsApiResponse {
20
+ data: FaqItem[];
21
+ total: number;
22
+ page: number;
23
+ limit: number;
24
+ totalPages: number;
25
+ hasNext: boolean;
26
+ hasPrev: boolean;
27
+ }
28
+ interface FaqsSearchParams {
29
+ search?: string;
30
+ organizationId?: string;
31
+ groupId?: string;
32
+ isActive?: boolean;
33
+ page?: number;
34
+ limit?: number;
35
+ sortBy?: string;
36
+ sortOrder?: "asc" | "desc";
37
+ extraFilters?: Record<string, string | string[]>;
38
+ }
39
+ type ExtraFilterType = "select" | "multiselect" | "text";
40
+ type ExtraFilterEntity = "all" | "assets" | "faqs" | "products" | "videos" | "images" | "presentations";
41
+ interface ExtraFilterConfig {
42
+ name: string;
43
+ type: ExtraFilterType;
44
+ label: string;
45
+ order: number;
46
+ entity: ExtraFilterEntity;
47
+ values?: string[];
48
+ enabled: boolean;
49
+ placeholder?: string;
50
+ }
51
+ interface SettingsResponse {
52
+ id: string;
53
+ organizationId: string;
54
+ userGroupId?: string | null;
55
+ extraFilters: ExtraFilterConfig[];
56
+ createdAt: string;
57
+ updatedAt: string;
58
+ }
59
+
60
+ export type { ExtraFilterConfig, ExtraFilterEntity, ExtraFilterType, FaqItem, FaqsApiResponse, FaqsSearchParams, FaqsServiceConfig, SettingsResponse };
@@ -0,0 +1,60 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ interface FaqsServiceConfig {
3
+ baseUrl: string;
4
+ organizationId: string;
5
+ }
6
+ interface FaqItem {
7
+ id: string;
8
+ question: string;
9
+ answer: string;
10
+ organizationId: string;
11
+ groupId?: string | null;
12
+ priority: number;
13
+ isActive: boolean;
14
+ metadata?: any | null;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ createdBy?: string | null;
18
+ }
19
+ interface FaqsApiResponse {
20
+ data: FaqItem[];
21
+ total: number;
22
+ page: number;
23
+ limit: number;
24
+ totalPages: number;
25
+ hasNext: boolean;
26
+ hasPrev: boolean;
27
+ }
28
+ interface FaqsSearchParams {
29
+ search?: string;
30
+ organizationId?: string;
31
+ groupId?: string;
32
+ isActive?: boolean;
33
+ page?: number;
34
+ limit?: number;
35
+ sortBy?: string;
36
+ sortOrder?: "asc" | "desc";
37
+ extraFilters?: Record<string, string | string[]>;
38
+ }
39
+ type ExtraFilterType = "select" | "multiselect" | "text";
40
+ type ExtraFilterEntity = "all" | "assets" | "faqs" | "products" | "videos" | "images" | "presentations";
41
+ interface ExtraFilterConfig {
42
+ name: string;
43
+ type: ExtraFilterType;
44
+ label: string;
45
+ order: number;
46
+ entity: ExtraFilterEntity;
47
+ values?: string[];
48
+ enabled: boolean;
49
+ placeholder?: string;
50
+ }
51
+ interface SettingsResponse {
52
+ id: string;
53
+ organizationId: string;
54
+ userGroupId?: string | null;
55
+ extraFilters: ExtraFilterConfig[];
56
+ createdAt: string;
57
+ updatedAt: string;
58
+ }
59
+
60
+ export type { ExtraFilterConfig, ExtraFilterEntity, ExtraFilterType, FaqItem, FaqsApiResponse, FaqsSearchParams, FaqsServiceConfig, SettingsResponse };
@@ -0,0 +1 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ "use strict";var c=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var u=(n,e)=>{for(var t in e)c(n,t,{get:e[t],enumerable:!0})},h=(n,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of f(e))!d.call(n,r)&&r!==t&&c(n,r,{get:()=>e[r],enumerable:!(s=p(e,r))||s.enumerable});return n};var q=n=>h(c({},"__esModule",{value:!0}),n);var l={};u(l,{FaqsService:()=>o});module.exports=q(l);var o=class n{constructor(e){this.config=e}static initialize(e){return new n(e)}getBaseUrl(){return`${this.config.baseUrl}`}getHeaders(){return{"Content-Type":"application/json"}}async makeRequest(e,t={}){let s=`${this.getBaseUrl()}${e}`,r=await fetch(s,{...t,headers:{...this.getHeaders(),...t.headers}});if(!r.ok)throw new Error(`FAQs API error: ${r.status} ${r.statusText}`);return r.json()}async getSettingsByOrganization(e,t){try{let s=new URLSearchParams;t&&s.append("userGroupId",t);let r=s.toString(),a=`${this.getBaseUrl()}/settings/organization/${e}${r?`?${r}`:""}`,i=await fetch(a,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(i.status===404)return null;if(!i.ok)throw new Error(`Failed to fetch settings: ${i.statusText}`);return await i.json()}catch(s){return console.error("Error fetching settings:",s),null}}async getFaqs(e={}){let t=new URLSearchParams;if(e.search&&t.append("search",e.search),e.organizationId&&t.append("organizationId",e.organizationId),e.groupId&&t.append("groupId",e.groupId),e.isActive!==void 0&&t.append("isActive",e.isActive.toString()),e.page&&t.append("page",e.page.toString()),e.limit&&t.append("limit",e.limit.toString()),e.sortBy&&t.append("sortBy",e.sortBy),e.sortOrder&&t.append("sortOrder",e.sortOrder),e.extraFilters){for(let[a,i]of Object.entries(e.extraFilters))if(i&&(Array.isArray(i)?i.length>0:i.toString().trim()!=="")){let g=Array.isArray(i)?i.join(","):i.toString();t.append(`extra_${a}`,g)}}let s=t.toString(),r=`/faqs${s?`?${s}`:""}`;return this.makeRequest(r)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};0&&(module.exports={FaqsService});
@@ -0,0 +1,3 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ export { FaqsService } from './faqs.service.cjs';
3
+ export { FaqItem, FaqsApiResponse, FaqsSearchParams, FaqsServiceConfig } from './faqs.types.cjs';
@@ -0,0 +1,3 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ export { FaqsService } from './faqs.service.js';
3
+ export { FaqItem, FaqsApiResponse, FaqsSearchParams, FaqsServiceConfig } from './faqs.types.js';
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ var o=class a{constructor(e){this.config=e}static initialize(e){return new a(e)}getBaseUrl(){return`${this.config.baseUrl}`}getHeaders(){return{"Content-Type":"application/json"}}async makeRequest(e,t={}){let s=`${this.getBaseUrl()}${e}`,i=await fetch(s,{...t,headers:{...this.getHeaders(),...t.headers}});if(!i.ok)throw new Error(`FAQs API error: ${i.status} ${i.statusText}`);return i.json()}async getSettingsByOrganization(e,t){try{let s=new URLSearchParams;t&&s.append("userGroupId",t);let i=s.toString(),n=`${this.getBaseUrl()}/settings/organization/${e}${i?`?${i}`:""}`,r=await fetch(n,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(r.status===404)return null;if(!r.ok)throw new Error(`Failed to fetch settings: ${r.statusText}`);return await r.json()}catch(s){return console.error("Error fetching settings:",s),null}}async getFaqs(e={}){let t=new URLSearchParams;if(e.search&&t.append("search",e.search),e.organizationId&&t.append("organizationId",e.organizationId),e.groupId&&t.append("groupId",e.groupId),e.isActive!==void 0&&t.append("isActive",e.isActive.toString()),e.page&&t.append("page",e.page.toString()),e.limit&&t.append("limit",e.limit.toString()),e.sortBy&&t.append("sortBy",e.sortBy),e.sortOrder&&t.append("sortOrder",e.sortOrder),e.extraFilters){for(let[n,r]of Object.entries(e.extraFilters))if(r&&(Array.isArray(r)?r.length>0:r.toString().trim()!=="")){let c=Array.isArray(r)?r.join(","):r.toString();t.append(`extra_${n}`,c)}}let s=t.toString(),i=`/faqs${s?`?${s}`:""}`;return this.makeRequest(i)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};export{o as FaqsService};
@@ -0,0 +1,2 @@
1
+ /*! @onlive.ai/common-121 v0.2.179 | © 2026 Onlive.ai */
2
+ "use strict";var l=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var h=(i,e)=>{for(var t in e)l(i,t,{get:e[t],enumerable:!0})},U=(i,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of f(e))!g.call(i,s)&&s!==t&&l(i,s,{get:()=>e[s],enumerable:!(r=d(e,s))||r.enumerable});return i};var m=i=>U(l({},"__esModule",{value:!0}),i);var y={};h(y,{FileService:()=>a,getFileService:()=>F});module.exports=m(y);var c=async(i,e)=>{let t=await fetch(i,e);if(!t.ok){let r=await t.json().catch(()=>({}));throw new Error(JSON.stringify({status:t.status,statusText:t.statusText,...r}))}return t&&t.json()};var a=class i{constructor(e){this.config=e,this.enableUpload=e.enableUpload||!1}static getInstance(e){if(!i.instance&&e&&(i.instance=new i(e)),!i.instance)throw new Error("FileService must be initialized with config first");return i.instance}static initialize(e){return i.instance=new i(e),i.instance}async uploadFile(e,t={}){try{let r=await this.requestSignedUrl({filename:e.name,description:t.description,loadDirection:"up",bucketType:t.bucketType||"conversations",path:t.path||".temp",mimeType:e.type});return await this.uploadToSignedUrl(r.data.signedUrlData.signedUrl,e),{success:!0,id:r.data.file.id,name:r.data.file.name,url:r.data.file.url,type:r.data.file.type}}catch(r){return console.error("Error uploading file:",r),{success:!1,error:r instanceof Error?r.message:"Unknown error"}}}async requestSignedUrl(e){let t=`${this.config.baseUrl}/files/upload-url`;return this.makeRequest(t,{method:"POST",body:JSON.stringify(e)})}async uploadToSignedUrl(e,t){let r=await fetch(e,{method:"PUT",body:t,headers:{"Content-Type":t.type}});if(!r.ok){let s=await r.text().catch(()=>"No response");throw new Error(`Upload failed with status: ${r.status}. Response: ${s}`)}}async uploadFileWithRetry(e,t={}){let r=t.maxRetries||3,s=null;for(let o=1;o<=r;o++)try{let n=await this.uploadFile(e,t);if(n.success)return n;throw new Error(n.error||"Upload failed")}catch(n){if(s=n instanceof Error?n:new Error("Unknown error"),o===r)break;let p=2**o*1e3;await new Promise(u=>setTimeout(u,p))}return{success:!1,error:s?.message||"Upload failed after retries"}}async getFileById(e){let t=`${this.config.baseUrl}/files/${e}`,r=await this.makeRequest(t);if(!r.success)throw new Error("Failed to get file");return r.data}async makeRequest(e,t){let r={"Content-Type":"application/json"};return this.config.organizationId&&(r["X-Onlive-Organization-Id"]=this.config.organizationId),t?.headers&&Object.assign(r,t.headers),c(e,{...t,headers:r})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}},F=()=>a.getInstance();0&&(module.exports={FileService,getFileService});