@onlive.ai/common-121 0.2.190 → 0.2.191

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 (449) hide show
  1. package/{audi-dark.theme-a2WmOyVS.d.cts → audi-dark.theme-D9GJYJiC.d.cts} +1 -1
  2. package/{audi-dark.theme-a2WmOyVS.d.ts → audi-dark.theme-D9GJYJiC.d.ts} +1 -1
  3. package/{audi.theme-DkdflnT8.d.cts → audi.theme-ClL5jntw.d.cts} +1 -1
  4. package/{audi.theme-DkdflnT8.d.ts → audi.theme-ClL5jntw.d.ts} +1 -1
  5. package/{australia.theme-B5n8F3QH.d.cts → australia.theme-Nlb8VlP9.d.cts} +1 -1
  6. package/{australia.theme-B5n8F3QH.d.ts → australia.theme-Nlb8VlP9.d.ts} +1 -1
  7. package/{chunk-4DKWCKNT.js → chunk-3OUSHA57.js} +1 -1
  8. package/components/asset/asset-modal-portal.cjs +95 -21
  9. package/components/asset/asset-modal-portal.d.cts +3 -2
  10. package/components/asset/asset-modal-portal.d.ts +3 -2
  11. package/components/asset/asset-modal-portal.js +86 -12
  12. package/components/asset/asset.cjs +174 -81
  13. package/components/asset/asset.d.cts +2 -1
  14. package/components/asset/asset.d.ts +2 -1
  15. package/components/asset/asset.js +125 -32
  16. package/components/asset/asset.loaders.cjs +1 -1
  17. package/components/asset/asset.loaders.d.cts +1 -1
  18. package/components/asset/asset.loaders.d.ts +1 -1
  19. package/components/asset/asset.loaders.js +1 -1
  20. package/components/asset/asset.renderer.cjs +1 -1
  21. package/components/asset/asset.renderer.d.cts +1 -1
  22. package/components/asset/asset.renderer.d.ts +1 -1
  23. package/components/asset/asset.renderer.js +1 -1
  24. package/components/asset/asset.styles.cjs +37 -18
  25. package/components/asset/asset.styles.d.cts +1 -1
  26. package/components/asset/asset.styles.d.ts +1 -1
  27. package/components/asset/asset.styles.js +36 -17
  28. package/components/asset/asset.types.cjs +1 -1
  29. package/components/asset/asset.types.d.cts +1 -1
  30. package/components/asset/asset.types.d.ts +1 -1
  31. package/components/asset/asset.types.js +1 -1
  32. package/components/asset/index.cjs +179 -86
  33. package/components/asset/index.d.cts +1 -1
  34. package/components/asset/index.d.ts +1 -1
  35. package/components/asset/index.js +126 -33
  36. package/components/player/player.cjs +1 -1
  37. package/components/player/player.d.cts +1 -1
  38. package/components/player/player.d.ts +1 -1
  39. package/components/player/player.js +1 -1
  40. package/components/player/player.styles.cjs +1 -1
  41. package/components/player/player.styles.d.cts +1 -1
  42. package/components/player/player.styles.d.ts +1 -1
  43. package/components/player/player.styles.js +1 -1
  44. package/components/side-bar/index.cjs +1 -1
  45. package/components/side-bar/index.d.cts +1 -1
  46. package/components/side-bar/index.d.ts +1 -1
  47. package/components/side-bar/index.js +1 -1
  48. package/components/side-bar/side-bar.cjs +1 -1
  49. package/components/side-bar/side-bar.d.cts +1 -1
  50. package/components/side-bar/side-bar.d.ts +1 -1
  51. package/components/side-bar/side-bar.js +1 -1
  52. package/components/side-bar/side-bar.styles.cjs +1 -1
  53. package/components/side-bar/side-bar.styles.d.cts +1 -1
  54. package/components/side-bar/side-bar.styles.d.ts +1 -1
  55. package/components/side-bar/side-bar.styles.js +1 -1
  56. package/components/side-bar/side-bar.types.cjs +1 -1
  57. package/components/side-bar/side-bar.types.d.cts +1 -1
  58. package/components/side-bar/side-bar.types.d.ts +1 -1
  59. package/components/side-bar/side-bar.types.js +1 -1
  60. package/components/upload/index.cjs +1 -1
  61. package/components/upload/index.d.cts +1 -1
  62. package/components/upload/index.d.ts +1 -1
  63. package/components/upload/index.js +1 -1
  64. package/components/upload/upload.cjs +1 -1
  65. package/components/upload/upload.d.cts +1 -1
  66. package/components/upload/upload.d.ts +1 -1
  67. package/components/upload/upload.js +1 -1
  68. package/components/upload/upload.styles.cjs +1 -1
  69. package/components/upload/upload.styles.d.cts +1 -1
  70. package/components/upload/upload.styles.d.ts +1 -1
  71. package/components/upload/upload.styles.js +1 -1
  72. package/components/upload/upload.types.cjs +1 -1
  73. package/components/upload/upload.types.d.cts +1 -1
  74. package/components/upload/upload.types.d.ts +1 -1
  75. package/components/upload/upload.types.js +1 -1
  76. package/{cuernavaca.theme-BzcZX1EJ.d.cts → cuernavaca.theme-o4KXrNTt.d.cts} +1 -1
  77. package/{cuernavaca.theme-BzcZX1EJ.d.ts → cuernavaca.theme-o4KXrNTt.d.ts} +1 -1
  78. package/{cupra-diagonal.theme-CKxsGYdb.d.cts → cupra-diagonal.theme-BkGh_gCc.d.cts} +1 -1
  79. package/{cupra-diagonal.theme-CKxsGYdb.d.ts → cupra-diagonal.theme-BkGh_gCc.d.ts} +1 -1
  80. package/{cupra-events.theme-kGaXJptG.d.cts → cupra-events.theme-CoaD-J_y.d.cts} +1 -1
  81. package/{cupra-events.theme-kGaXJptG.d.ts → cupra-events.theme-CoaD-J_y.d.ts} +1 -1
  82. package/{cupra.theme-C-oFRdQw.d.cts → cupra.theme-BlVSbSz4.d.cts} +1 -1
  83. package/{cupra.theme-C-oFRdQw.d.ts → cupra.theme-BlVSbSz4.d.ts} +1 -1
  84. package/{germany.theme-Cxz60Lv5.d.cts → germany.theme-B67DWt1m.d.cts} +1 -1
  85. package/{germany.theme-Cxz60Lv5.d.ts → germany.theme-B67DWt1m.d.ts} +1 -1
  86. package/{hyundai.theme-DNFeBfk4.d.cts → hyundai.theme-32u29edj.d.cts} +1 -1
  87. package/{hyundai.theme-DNFeBfk4.d.ts → hyundai.theme-32u29edj.d.ts} +1 -1
  88. package/index.cjs +163 -70
  89. package/index.d.cts +3 -2
  90. package/index.d.ts +3 -2
  91. package/index.js +268 -176
  92. package/{italy.theme-YKt3PHQM.d.cts → italy.theme-DyWIdjwF.d.cts} +1 -1
  93. package/{italy.theme-YKt3PHQM.d.ts → italy.theme-DyWIdjwF.d.ts} +1 -1
  94. package/{magimix.theme-lIo3UAYh.d.cts → magimix.theme-Bk3BuvtL.d.cts} +1 -1
  95. package/{magimix.theme-lIo3UAYh.d.ts → magimix.theme-Bk3BuvtL.d.ts} +1 -1
  96. package/{media-BU4KDZMS.js → media-TG5C2YJ5.js} +2 -2
  97. package/{onlive-ai.theme-Dk4K7dnu.d.cts → onlive-ai.theme-BpScjGb1.d.cts} +1 -1
  98. package/{onlive-ai.theme-Dk4K7dnu.d.ts → onlive-ai.theme-BpScjGb1.d.ts} +1 -1
  99. package/{onlive.theme-BU4h4zKz.d.cts → onlive.theme-BblhkoXY.d.cts} +1 -1
  100. package/{onlive.theme-BU4h4zKz.d.ts → onlive.theme-BblhkoXY.d.ts} +1 -1
  101. package/package.json +1 -1
  102. package/react/components/asset/Asset.cjs +1 -1
  103. package/react/components/asset/Asset.jsx +1 -1
  104. package/react/components/side-bar/SideBar.cjs +1 -1
  105. package/react/components/side-bar/SideBar.jsx +1 -1
  106. package/react/components/upload/Upload.cjs +1 -1
  107. package/react/components/upload/Upload.jsx +1 -1
  108. package/{seat-cupra.theme-C-PJk0pi.d.cts → seat-cupra.theme-DTbnGqGc.d.cts} +1 -1
  109. package/{seat-cupra.theme-C-PJk0pi.d.ts → seat-cupra.theme-DTbnGqGc.d.ts} +1 -1
  110. package/services/audio.service.cjs +1 -1
  111. package/services/audio.service.d.cts +1 -1
  112. package/services/audio.service.d.ts +1 -1
  113. package/services/audio.service.js +1 -1
  114. package/services/conversation/conversation.service.cjs +1 -1
  115. package/services/conversation/conversation.service.d.cts +1 -1
  116. package/services/conversation/conversation.service.d.ts +1 -1
  117. package/services/conversation/conversation.service.js +1 -1
  118. package/services/conversation/conversation.types.cjs +1 -1
  119. package/services/conversation/conversation.types.d.cts +1 -1
  120. package/services/conversation/conversation.types.d.ts +1 -1
  121. package/services/conversation/conversation.types.js +1 -1
  122. package/services/conversation/index.cjs +1 -1
  123. package/services/conversation/index.d.cts +1 -1
  124. package/services/conversation/index.d.ts +1 -1
  125. package/services/conversation/index.js +1 -1
  126. package/services/conversation/mock/actor/agent.cjs +1 -1
  127. package/services/conversation/mock/actor/agent.d.cts +1 -1
  128. package/services/conversation/mock/actor/agent.d.ts +1 -1
  129. package/services/conversation/mock/actor/agent.js +1 -1
  130. package/services/conversation/mock/actor/index.cjs +1 -1
  131. package/services/conversation/mock/actor/index.d.cts +1 -1
  132. package/services/conversation/mock/actor/index.d.ts +1 -1
  133. package/services/conversation/mock/actor/index.js +1 -1
  134. package/services/conversation/mock/actor/strategies.cjs +1 -1
  135. package/services/conversation/mock/actor/strategies.d.cts +1 -1
  136. package/services/conversation/mock/actor/strategies.d.ts +1 -1
  137. package/services/conversation/mock/actor/strategies.js +1 -1
  138. package/services/conversation/mock/errors.cjs +1 -1
  139. package/services/conversation/mock/errors.d.cts +1 -1
  140. package/services/conversation/mock/errors.d.ts +1 -1
  141. package/services/conversation/mock/errors.js +1 -1
  142. package/services/conversation/mock/events.cjs +1 -1
  143. package/services/conversation/mock/events.d.cts +1 -1
  144. package/services/conversation/mock/events.d.ts +1 -1
  145. package/services/conversation/mock/events.js +1 -1
  146. package/services/conversation/mock/factory.cjs +1 -1
  147. package/services/conversation/mock/factory.d.cts +1 -1
  148. package/services/conversation/mock/factory.d.ts +1 -1
  149. package/services/conversation/mock/factory.js +1 -1
  150. package/services/conversation/mock/fixtures.cjs +1 -1
  151. package/services/conversation/mock/fixtures.d.cts +1 -1
  152. package/services/conversation/mock/fixtures.d.ts +1 -1
  153. package/services/conversation/mock/fixtures.js +1 -1
  154. package/services/conversation/mock/generators.cjs +1 -1
  155. package/services/conversation/mock/generators.d.cts +1 -1
  156. package/services/conversation/mock/generators.d.ts +1 -1
  157. package/services/conversation/mock/generators.js +1 -1
  158. package/services/conversation/mock/index.cjs +1 -1
  159. package/services/conversation/mock/index.d.cts +1 -1
  160. package/services/conversation/mock/index.d.ts +1 -1
  161. package/services/conversation/mock/index.js +1 -1
  162. package/services/conversation/mock/livekit/index.cjs +1 -1
  163. package/services/conversation/mock/livekit/index.d.cts +1 -1
  164. package/services/conversation/mock/livekit/index.d.ts +1 -1
  165. package/services/conversation/mock/livekit/index.js +1 -1
  166. package/services/conversation/mock/livekit/local-participant.cjs +1 -1
  167. package/services/conversation/mock/livekit/local-participant.d.cts +1 -1
  168. package/services/conversation/mock/livekit/local-participant.d.ts +1 -1
  169. package/services/conversation/mock/livekit/local-participant.js +1 -1
  170. package/services/conversation/mock/livekit/participant.cjs +1 -1
  171. package/services/conversation/mock/livekit/participant.d.cts +1 -1
  172. package/services/conversation/mock/livekit/participant.d.ts +1 -1
  173. package/services/conversation/mock/livekit/participant.js +1 -1
  174. package/services/conversation/mock/livekit/room.cjs +1 -1
  175. package/services/conversation/mock/livekit/room.d.cts +1 -1
  176. package/services/conversation/mock/livekit/room.d.ts +1 -1
  177. package/services/conversation/mock/livekit/room.js +1 -1
  178. package/services/conversation/mock/livekit/streams.cjs +1 -1
  179. package/services/conversation/mock/livekit/streams.d.cts +1 -1
  180. package/services/conversation/mock/livekit/streams.d.ts +1 -1
  181. package/services/conversation/mock/livekit/streams.js +1 -1
  182. package/services/conversation/mock/livekit/tracks.cjs +1 -1
  183. package/services/conversation/mock/livekit/tracks.d.cts +1 -1
  184. package/services/conversation/mock/livekit/tracks.d.ts +1 -1
  185. package/services/conversation/mock/livekit/tracks.js +1 -1
  186. package/services/conversation/mock/media.cjs +1 -1
  187. package/services/conversation/mock/media.d.cts +1 -1
  188. package/services/conversation/mock/media.d.ts +1 -1
  189. package/services/conversation/mock/media.js +1 -1
  190. package/services/conversation/mock/service.cjs +1 -1
  191. package/services/conversation/mock/service.d.cts +1 -1
  192. package/services/conversation/mock/service.d.ts +1 -1
  193. package/services/conversation/mock/service.js +1 -1
  194. package/services/conversation/mock/service.test.cjs +1 -1
  195. package/services/conversation/mock/service.test.d.cts +1 -1
  196. package/services/conversation/mock/service.test.d.ts +1 -1
  197. package/services/conversation/mock/service.test.js +1 -1
  198. package/services/conversation/mock/state.cjs +1 -1
  199. package/services/conversation/mock/state.d.cts +1 -1
  200. package/services/conversation/mock/state.d.ts +1 -1
  201. package/services/conversation/mock/state.js +1 -1
  202. package/services/conversation/mock/storybook.cjs +1 -1
  203. package/services/conversation/mock/storybook.d.cts +1 -1
  204. package/services/conversation/mock/storybook.d.ts +1 -1
  205. package/services/conversation/mock/storybook.js +1 -1
  206. package/services/conversation/mock/types.cjs +1 -1
  207. package/services/conversation/mock/types.d.cts +1 -1
  208. package/services/conversation/mock/types.d.ts +1 -1
  209. package/services/conversation/mock/types.js +1 -1
  210. package/services/deep-link.service.cjs +1 -1
  211. package/services/deep-link.service.d.cts +1 -1
  212. package/services/deep-link.service.d.ts +1 -1
  213. package/services/deep-link.service.js +1 -1
  214. package/services/faqs/faqs.service.cjs +1 -1
  215. package/services/faqs/faqs.service.d.cts +1 -1
  216. package/services/faqs/faqs.service.d.ts +1 -1
  217. package/services/faqs/faqs.service.js +1 -1
  218. package/services/faqs/faqs.types.cjs +1 -1
  219. package/services/faqs/faqs.types.d.cts +1 -1
  220. package/services/faqs/faqs.types.d.ts +1 -1
  221. package/services/faqs/faqs.types.js +1 -1
  222. package/services/faqs/index.cjs +1 -1
  223. package/services/faqs/index.d.cts +1 -1
  224. package/services/faqs/index.d.ts +1 -1
  225. package/services/faqs/index.js +1 -1
  226. package/services/file/file.service.cjs +1 -1
  227. package/services/file/file.service.d.cts +1 -1
  228. package/services/file/file.service.d.ts +1 -1
  229. package/services/file/file.service.js +1 -1
  230. package/services/file/file.types.cjs +1 -1
  231. package/services/file/file.types.d.cts +1 -1
  232. package/services/file/file.types.d.ts +1 -1
  233. package/services/file/file.types.js +1 -1
  234. package/services/file/index.cjs +1 -1
  235. package/services/file/index.d.cts +1 -1
  236. package/services/file/index.d.ts +1 -1
  237. package/services/file/index.js +1 -1
  238. package/services/firebase/firebase-api.cjs +1 -1
  239. package/services/firebase/firebase-api.d.cts +1 -1
  240. package/services/firebase/firebase-api.d.ts +1 -1
  241. package/services/firebase/firebase-api.js +1 -1
  242. package/services/multimedia/config.example.cjs +1 -1
  243. package/services/multimedia/config.example.d.cts +1 -1
  244. package/services/multimedia/config.example.d.ts +1 -1
  245. package/services/multimedia/config.example.js +1 -1
  246. package/services/multimedia/index.cjs +1 -1
  247. package/services/multimedia/index.d.cts +1 -1
  248. package/services/multimedia/index.d.ts +1 -1
  249. package/services/multimedia/index.js +1 -1
  250. package/services/multimedia/multimedia.service.cjs +1 -1
  251. package/services/multimedia/multimedia.service.d.cts +1 -1
  252. package/services/multimedia/multimedia.service.d.ts +1 -1
  253. package/services/multimedia/multimedia.service.js +1 -1
  254. package/services/multimedia/multimedia.types.cjs +1 -1
  255. package/services/multimedia/multimedia.types.d.cts +1 -1
  256. package/services/multimedia/multimedia.types.d.ts +1 -1
  257. package/services/multimedia/multimedia.types.js +1 -1
  258. package/services/product/index.cjs +1 -1
  259. package/services/product/index.d.cts +1 -1
  260. package/services/product/index.d.ts +1 -1
  261. package/services/product/index.js +1 -1
  262. package/services/product/product.service.cjs +1 -1
  263. package/services/product/product.service.d.cts +1 -1
  264. package/services/product/product.service.d.ts +1 -1
  265. package/services/product/product.service.js +1 -1
  266. package/services/product/product.types.cjs +1 -1
  267. package/services/product/product.types.d.cts +1 -1
  268. package/services/product/product.types.d.ts +1 -1
  269. package/services/product/product.types.js +1 -1
  270. package/services/request.provider.cjs +1 -1
  271. package/services/request.provider.d.cts +1 -1
  272. package/services/request.provider.d.ts +1 -1
  273. package/services/request.provider.js +1 -1
  274. package/services/session.service.cjs +1 -1
  275. package/services/session.service.d.cts +1 -1
  276. package/services/session.service.d.ts +1 -1
  277. package/services/session.service.js +1 -1
  278. package/services/upload/index.cjs +1 -1
  279. package/services/upload/index.d.cts +1 -1
  280. package/services/upload/index.d.ts +1 -1
  281. package/services/upload/index.js +1 -1
  282. package/services/upload/upload.service.cjs +1 -1
  283. package/services/upload/upload.service.d.cts +1 -1
  284. package/services/upload/upload.service.d.ts +1 -1
  285. package/services/upload/upload.service.js +1 -1
  286. package/themes/custom/audi-dark.theme.cjs +1 -1
  287. package/themes/custom/audi-dark.theme.d.cts +2 -2
  288. package/themes/custom/audi-dark.theme.d.ts +2 -2
  289. package/themes/custom/audi-dark.theme.js +1 -1
  290. package/themes/custom/audi.theme.cjs +1 -1
  291. package/themes/custom/audi.theme.d.cts +2 -2
  292. package/themes/custom/audi.theme.d.ts +2 -2
  293. package/themes/custom/audi.theme.js +1 -1
  294. package/themes/custom/australia.theme.cjs +1 -1
  295. package/themes/custom/australia.theme.d.cts +2 -2
  296. package/themes/custom/australia.theme.d.ts +2 -2
  297. package/themes/custom/australia.theme.js +1 -1
  298. package/themes/custom/cuernavaca.theme.cjs +1 -1
  299. package/themes/custom/cuernavaca.theme.d.cts +2 -2
  300. package/themes/custom/cuernavaca.theme.d.ts +2 -2
  301. package/themes/custom/cuernavaca.theme.js +1 -1
  302. package/themes/custom/cupra-diagonal.theme.cjs +1 -1
  303. package/themes/custom/cupra-diagonal.theme.d.cts +2 -2
  304. package/themes/custom/cupra-diagonal.theme.d.ts +2 -2
  305. package/themes/custom/cupra-diagonal.theme.js +1 -1
  306. package/themes/custom/cupra-events.theme.cjs +1 -1
  307. package/themes/custom/cupra-events.theme.d.cts +2 -2
  308. package/themes/custom/cupra-events.theme.d.ts +2 -2
  309. package/themes/custom/cupra-events.theme.js +1 -1
  310. package/themes/custom/cupra.theme.cjs +1 -1
  311. package/themes/custom/cupra.theme.d.cts +2 -2
  312. package/themes/custom/cupra.theme.d.ts +2 -2
  313. package/themes/custom/cupra.theme.js +1 -1
  314. package/themes/custom/germany.theme.cjs +1 -1
  315. package/themes/custom/germany.theme.d.cts +2 -2
  316. package/themes/custom/germany.theme.d.ts +2 -2
  317. package/themes/custom/germany.theme.js +1 -1
  318. package/themes/custom/hyundai.theme.cjs +1 -1
  319. package/themes/custom/hyundai.theme.d.cts +2 -2
  320. package/themes/custom/hyundai.theme.d.ts +2 -2
  321. package/themes/custom/hyundai.theme.js +1 -1
  322. package/themes/custom/italy.theme.cjs +1 -1
  323. package/themes/custom/italy.theme.d.cts +2 -2
  324. package/themes/custom/italy.theme.d.ts +2 -2
  325. package/themes/custom/italy.theme.js +1 -1
  326. package/themes/custom/magimix.theme.cjs +1 -1
  327. package/themes/custom/magimix.theme.d.cts +2 -2
  328. package/themes/custom/magimix.theme.d.ts +2 -2
  329. package/themes/custom/magimix.theme.js +1 -1
  330. package/themes/custom/onlive-ai.theme.cjs +1 -1
  331. package/themes/custom/onlive-ai.theme.d.cts +2 -2
  332. package/themes/custom/onlive-ai.theme.d.ts +2 -2
  333. package/themes/custom/onlive-ai.theme.js +1 -1
  334. package/themes/custom/onlive.theme.cjs +1 -1
  335. package/themes/custom/onlive.theme.d.cts +2 -2
  336. package/themes/custom/onlive.theme.d.ts +2 -2
  337. package/themes/custom/onlive.theme.js +1 -1
  338. package/themes/custom/seat-cupra.theme.cjs +1 -1
  339. package/themes/custom/seat-cupra.theme.d.cts +2 -2
  340. package/themes/custom/seat-cupra.theme.d.ts +2 -2
  341. package/themes/custom/seat-cupra.theme.js +1 -1
  342. package/themes/dark.cjs +1 -1
  343. package/themes/dark.d.cts +1 -1
  344. package/themes/dark.d.ts +1 -1
  345. package/themes/dark.js +1 -1
  346. package/themes/light.cjs +1 -1
  347. package/themes/light.d.cts +1 -1
  348. package/themes/light.d.ts +1 -1
  349. package/themes/light.js +1 -1
  350. package/types/deep-link.types.cjs +1 -1
  351. package/types/deep-link.types.d.cts +1 -1
  352. package/types/deep-link.types.d.ts +1 -1
  353. package/types/deep-link.types.js +1 -1
  354. package/types/globals.cjs +1 -1
  355. package/types/globals.d.cts +1 -1
  356. package/types/globals.d.ts +1 -1
  357. package/types/globals.js +1 -1
  358. package/types/tracking-options.cjs +1 -1
  359. package/types/tracking-options.d.cts +1 -1
  360. package/types/tracking-options.d.ts +1 -1
  361. package/types/tracking-options.js +1 -1
  362. package/utils/adopt-styles.cjs +1 -1
  363. package/utils/adopt-styles.d.cts +1 -1
  364. package/utils/adopt-styles.d.ts +1 -1
  365. package/utils/adopt-styles.js +1 -1
  366. package/utils/apply-optional-styles.cjs +1 -1
  367. package/utils/apply-optional-styles.d.cts +15 -15
  368. package/utils/apply-optional-styles.d.ts +15 -15
  369. package/utils/apply-optional-styles.js +1 -1
  370. package/utils/browser-preferences.cjs +1 -1
  371. package/utils/browser-preferences.d.cts +1 -1
  372. package/utils/browser-preferences.d.ts +1 -1
  373. package/utils/browser-preferences.js +1 -1
  374. package/utils/classify-media.cjs +1 -1
  375. package/utils/classify-media.d.cts +1 -1
  376. package/utils/classify-media.d.ts +1 -1
  377. package/utils/classify-media.js +1 -1
  378. package/utils/decorators.cjs +1 -1
  379. package/utils/decorators.d.cts +1 -1
  380. package/utils/decorators.d.ts +1 -1
  381. package/utils/decorators.js +1 -1
  382. package/utils/detected-lang.cjs +1 -1
  383. package/utils/detected-lang.d.cts +1 -1
  384. package/utils/detected-lang.d.ts +1 -1
  385. package/utils/detected-lang.js +1 -1
  386. package/utils/fullscreen.cjs +1 -1
  387. package/utils/fullscreen.d.cts +1 -1
  388. package/utils/fullscreen.d.ts +1 -1
  389. package/utils/fullscreen.js +1 -1
  390. package/utils/insert-script.cjs +1 -1
  391. package/utils/insert-script.d.cts +1 -1
  392. package/utils/insert-script.d.ts +1 -1
  393. package/utils/insert-script.js +1 -1
  394. package/utils/is-map-compatible.cjs +1 -1
  395. package/utils/is-map-compatible.d.cts +1 -1
  396. package/utils/is-map-compatible.d.ts +1 -1
  397. package/utils/is-map-compatible.js +1 -1
  398. package/utils/markdown.cjs +1 -1
  399. package/utils/markdown.d.cts +1 -1
  400. package/utils/markdown.d.ts +1 -1
  401. package/utils/markdown.js +1 -1
  402. package/utils/merge.cjs +1 -1
  403. package/utils/merge.d.cts +1 -1
  404. package/utils/merge.d.ts +1 -1
  405. package/utils/merge.js +1 -1
  406. package/utils/multiband-track-volume.cjs +1 -1
  407. package/utils/multiband-track-volume.d.cts +1 -1
  408. package/utils/multiband-track-volume.d.ts +1 -1
  409. package/utils/multiband-track-volume.js +1 -1
  410. package/utils/onlive-url-params.cjs +1 -1
  411. package/utils/onlive-url-params.d.cts +1 -1
  412. package/utils/onlive-url-params.d.ts +1 -1
  413. package/utils/onlive-url-params.js +1 -1
  414. package/utils/pretty-distance.cjs +1 -1
  415. package/utils/pretty-distance.d.cts +1 -1
  416. package/utils/pretty-distance.d.ts +1 -1
  417. package/utils/pretty-distance.js +1 -1
  418. package/utils/pretty-time.cjs +1 -1
  419. package/utils/pretty-time.d.cts +1 -1
  420. package/utils/pretty-time.d.ts +1 -1
  421. package/utils/pretty-time.js +1 -1
  422. package/utils/random-string.cjs +1 -1
  423. package/utils/random-string.d.cts +1 -1
  424. package/utils/random-string.d.ts +1 -1
  425. package/utils/random-string.js +1 -1
  426. package/utils/resource-type.cjs +1 -1
  427. package/utils/resource-type.d.cts +1 -1
  428. package/utils/resource-type.d.ts +1 -1
  429. package/utils/resource-type.js +1 -1
  430. package/utils/round-number.cjs +1 -1
  431. package/utils/round-number.d.cts +1 -1
  432. package/utils/round-number.d.ts +1 -1
  433. package/utils/round-number.js +1 -1
  434. package/utils/safe-html.cjs +1 -1
  435. package/utils/safe-html.d.cts +1 -1
  436. package/utils/safe-html.d.ts +1 -1
  437. package/utils/safe-html.js +1 -1
  438. package/utils/sanitize.cjs +1 -1
  439. package/utils/sanitize.d.cts +1 -1
  440. package/utils/sanitize.d.ts +1 -1
  441. package/utils/sanitize.js +1 -1
  442. package/utils/spread.cjs +1 -1
  443. package/utils/spread.d.cts +1 -1
  444. package/utils/spread.d.ts +1 -1
  445. package/utils/spread.js +1 -1
  446. package/utils/watch.cjs +1 -1
  447. package/utils/watch.d.cts +1 -1
  448. package/utils/watch.d.ts +1 -1
  449. package/utils/watch.js +1 -1
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import * as lit from 'lit';
3
3
  import { LitElement, TemplateResult } from 'lit';
4
4
  import { AssetType, AssetConfig } from './asset.types.cjs';
@@ -8,6 +8,7 @@ declare class OSBAsset extends LitElement {
8
8
  type: AssetType;
9
9
  externalId: string;
10
10
  config?: AssetConfig;
11
+ displayState: "minimized" | "normal" | "maximized";
11
12
  private asset?;
12
13
  private loadingState;
13
14
  private error?;
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import * as lit from 'lit';
3
3
  import { LitElement, TemplateResult } from 'lit';
4
4
  import { AssetType, AssetConfig } from './asset.types.js';
@@ -8,6 +8,7 @@ declare class OSBAsset extends LitElement {
8
8
  type: AssetType;
9
9
  externalId: string;
10
10
  config?: AssetConfig;
11
+ displayState: "minimized" | "normal" | "maximized";
11
12
  private asset?;
12
13
  private loadingState;
13
14
  private error?;
@@ -1,5 +1,5 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
2
- var U=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var c=(n,e,t,o)=>{for(var s=o>1?void 0:o?L(e,t):e,l=n.length-1,a;l>=0;l--)(a=n[l])&&(s=(o?a(e,t,s):a(s))||s);return o&&s&&U(e,t,s),s};import{html as z,LitElement as te}from"lit";import{property as T,state as h}from"lit/decorators.js";import{classMap as oe}from"lit/directives/class-map.js";var V=(n,e)=>(customElements.get(n)?console.debug(`Custom element <${n}> is already defined, skipping definition of ${e.name}.`):window.customElements.define(n,e),e),D=(n,e)=>{let{kind:t,elements:o}=e;return{kind:t,elements:o,finisher(s){customElements.get(n)||window.customElements.define(n,s)}}},y=n=>e=>typeof e=="function"?V(n,e):D(n,e);var w=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 o=`${this.getBaseUrl()}${e}`,s=await fetch(o,{...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 o=new URLSearchParams;t&&o.append("userGroupId",t);let s=o.toString(),l=`${this.getBaseUrl()}/settings/organization/${e}${s?`?${s}`:""}`,a=await fetch(l,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(a.status===404)return null;if(!a.ok)throw new Error(`Failed to fetch settings: ${a.statusText}`);return await a.json()}catch(o){return console.error("Error fetching settings:",o),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[l,a]of Object.entries(e.extraFilters))if(a&&(Array.isArray(a)?a.length>0:a.toString().trim()!=="")){let d=Array.isArray(a)?a.join(","):a.toString();t.append(`extra_${l}`,d)}}let o=t.toString(),s=`/faqs${o?`?${o}`:""}`;return this.makeRequest(s)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};var j=async(n,e)=>{let t=await fetch(n,e);if(!t.ok){let o=await t.json().catch(()=>({}));throw new Error(JSON.stringify({status:t.status,statusText:t.statusText,...o}))}return t&&t.json()};var x=class n{constructor(e){this.config=e,this.enableUpload=e.enableUpload||!1}static getInstance(e){if(!n.instance&&e&&(n.instance=new n(e)),!n.instance)throw new Error("FileService must be initialized with config first");return n.instance}static initialize(e){return n.instance=new n(e),n.instance}async uploadFile(e,t={}){try{let o=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(o.data.signedUrlData.signedUrl,e),{success:!0,id:o.data.file.id,name:o.data.file.name,url:o.data.file.url,type:o.data.file.type}}catch(o){return console.error("Error uploading file:",o),{success:!1,error:o instanceof Error?o.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 o=await fetch(e,{method:"PUT",body:t,headers:{"Content-Type":t.type}});if(!o.ok){let s=await o.text().catch(()=>"No response");throw new Error(`Upload failed with status: ${o.status}. Response: ${s}`)}}async uploadFileWithRetry(e,t={}){let o=t.maxRetries||3,s=null;for(let l=1;l<=o;l++)try{let a=await this.uploadFile(e,t);if(a.success)return a;throw new Error(a.error||"Upload failed")}catch(a){if(s=a instanceof Error?a:new Error("Unknown error"),l===o)break;let d=2**l*1e3;await new Promise(r=>setTimeout(r,d))}return{success:!1,error:s?.message||"Upload failed after retries"}}async getFileById(e){let t=`${this.config.baseUrl}/files/${e}`,o=await this.makeRequest(t);if(!o.success)throw new Error("Failed to get file");return o.data}async makeRequest(e,t){let o={"Content-Type":"application/json"};return this.config.organizationId&&(o["X-Onlive-Organization-Id"]=this.config.organizationId),t?.headers&&Object.assign(o,t.headers),j(e,{...t,headers:o})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var _=class n{constructor(e){this.config=e}static getInstance(e){if(!n.instance&&e&&(n.instance=new n(e)),!n.instance)throw new Error("MultimediaService must be initialized with config first");return n.instance}static initialize(e){return n.instance=new n(e),n.instance}async getImages(e={}){let t=new URLSearchParams({type:"image",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getVideos(e={}){let t=new URLSearchParams({type:"video",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getPresentations(e={}){let t=new URLSearchParams({type:"presentation",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getAllMultimedia(e={}){let[t,o,s]=await Promise.all([this.getImages(e),this.getVideos(e),this.getPresentations(e)]);return{images:t,videos:o,presentations:s}}async getMultimediaByToken(e){let t=`${this.config.baseUrl}/multimedia/secure-token/${e}`;return this.makeRequest(t,!1)}async searchMultimedia(e,t){let o={search:e,page:1,limit:50,includeSecureToken:!0};if(t)return this.getMultimediaByType(t,o);let[s,l,a]=await Promise.all([this.getImages(o),this.getVideos(o),this.getPresentations(o)]),d=[...s.items,...l.items,...a.items];return{items:d,total:d.length,count:d.length,currentPage:1,totalPages:1}}async getMultimediaByType(e,t){switch(e){case"image":return this.getImages(t);case"video":return this.getVideos(t);case"presentation":return this.getPresentations(t);default:throw new Error(`Invalid multimedia type: ${e}`)}}appendExtraFilters(e,t){if(t){for(let[o,s]of Object.entries(t))if(s&&(Array.isArray(s)?s.length>0:s.toString().trim()!=="")){let l=Array.isArray(s)?s.join(","):s.toString();e.append(`extra_${o}`,l)}}}async makeRequest(e,t=!0){let o={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return j(e,{method:"GET",headers:o,credentials:t?"include":void 0})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var g=class n{constructor(e){this.config=e}static getInstance(e){if(!n.instance&&e&&(n.instance=new n(e)),!n.instance)throw new Error("ProductService must be initialized with config first");return n.instance}static initialize(e){return n.instance=new n(e),n.instance}async getProducts(e={}){let t=new URLSearchParams({...e.title&&{title:e.title},...e.search&&{search:e.search},...e.category&&{category:e.category},...e.tags&&{tags:e.tags.join(",")},...e.sortBy&&{sortBy:e.sortBy},...e.sortOrder&&{sortOrder:e.sortOrder},...e.minPrice&&{minPrice:e.minPrice.toString()},...e.maxPrice&&{maxPrice:e.maxPrice.toString()},...e.inStock!==void 0&&{inStock:e.inStock.toString()},...e.offset&&{offset:e.offset.toString()},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});e.extraFields&&Object.keys(e.extraFields).length>0&&t.append("extraFields",JSON.stringify(e.extraFields));let o=`${this.config.baseUrl}/products?${t}`;return this.makeRequest(o,!0)}async getProductByToken(e){let t=`${this.config.baseUrl}/products/secure-token/${e}`;return this.makeRequest(t)}async searchProducts(e,t={}){return this.getProducts({...t,search:e})}async makeRequest(e,t=!1){let o={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return j(e,{method:"GET",headers:o,credentials:t?"include":"same-origin"})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var A=class{constructor(e){e?.multimediaService&&(this.multimediaService=_.initialize(e.multimediaService)),e?.faqsService&&(this.faqsService=w.initialize(e.faqsService)),e?.productService&&(this.productService=g.initialize(e.productService)),e?.fileService&&(this.fileService=x.initialize(e.fileService))}async loadAsset(e,t){switch(e){case"multimedia":return this.loadMultimediaAsset(t);case"product":return this.loadProductAsset(t);case"faq":return this.loadFaqAsset(t);case"file":return this.loadFileAsset(t);default:throw new Error(`Unsupported asset type: ${e}`)}}async loadMultimediaAsset(e){if(!this.multimediaService)throw new Error("MultimediaService not configured");let t=await this.multimediaService.getMultimediaByToken(e);if(!t)throw new Error("Multimedia not found");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:t.animatedCoverUrl||t.url,type:"multimedia",externalId:t.id,format:t.format,size:t.size||void 0,duration:t.duration||void 0,vodUrl:t.vodUrl||void 0,slides:t.slides||[],labels:t.labels,animatedCoverUrl:t.animatedCoverUrl||void 0,metadata:{organizationId:t.organizationId,status:t.status,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadProductAsset(e){if(!this.productService)throw new Error("MultimediaService not configured");let t=await this.productService.getProductByToken(e);if(!t)throw new Error("Product not found");return{id:t.id,name:t.name,description:t.description,url:t.url,thumbnail:t.images?.[0],type:"product",externalId:t.externalId,price:t.price,currency:t.currency,category:t.category,tags:t.tags,images:t.images,variants:t.variants?.map(o=>({id:o.id,externalId:o.externalId,price:o.price,currency:o.currency,images:o.images})),options:t.options,metadata:{providerType:t.providerType,providerId:t.providerId,discountType:t.discountType,discount:t.discount,stock:t.stock,broken:t.broken}}}async loadFaqAsset(e){if(!this.faqsService)throw new Error("FaqsService not configured");let t=await this.faqsService.getFaqById(e);return{id:t.id,name:t.question,description:t.answer,url:`#faq-${t.id}`,type:"faq",externalId:t.id,question:t.question,answer:t.answer,priority:t.priority,isActive:t.isActive,metadata:{organizationId:t.organizationId,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadFileAsset(e){if(!this.fileService)throw new Error("FileService not configured");let t=await this.fileService.getFileById(e),o=t.type||"",s=o.startsWith("video/"),l=o.startsWith("image/");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:l?t.url:void 0,type:"file",externalId:t.id,format:o,size:t.metadata?.size,duration:void 0,vodUrl:s?t.url:void 0,labels:[],animatedCoverUrl:s?t.url:void 0,metadata:{path:t.metadata?.path,bucketType:t.metadata?.bucketType,loadDirection:t.metadata?.loadDirection,createdAt:t.createdAt,updatedAt:t.updatedAt}}}};import{html as i}from"lit";import{classMap as Z}from"lit/directives/class-map.js";import{ifDefined as b}from"lit/directives/if-defined.js";import{when as m}from"lit/directives/when.js";import{unsafeHTML as Y}from"lit/directives/unsafe-html.js";import F from"dompurify";var B={ALLOWED_TAGS:["p","br","span","b","strong","i","em","u","s","del","ul","ol","li","code","pre","a","h1","h2","h3","h4","table","thead","tbody","tr","th","td"],ALLOWED_ATTR:["href","target","rel","title","aria-label","role","colspan","rowspan"],FORCE_HTTPS:!0,ALLOW_DATA_ATTR:!1};F.addHook("afterSanitizeAttributes",n=>{"target"in n&&n.target==="_blank"&&n.setAttribute("rel","noopener noreferrer")});var q=(n,e=B)=>F.sanitize(n,e);function C(n=""){return Y(H(n))}function H(n=""){return q(n,{ADD_ATTR:["target","rel"],ADD_TAGS:["ol-"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:/^ol-/,attributeNameCheck:null,allowCustomizedBuiltInElements:!0}})}import"@onlive.ai/ui/dist/components/button/button.js";import"@onlive.ai/ui/dist/components/icon/icon.js";import{html as E,LitElement as G}from"lit";import{property as Q,query as K}from"lit/decorators.js";import{repeat as X}from"lit/directives/repeat.js";import W from"video.js";import{css as J,unsafeCSS as O}from"lit";import N from"video.js/dist/video-js.min.css?inline";var R=J`
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
+ var U=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var c=(a,e,t,o)=>{for(var s=o>1?void 0:o?L(e,t):e,l=a.length-1,n;l>=0;l--)(n=a[l])&&(s=(o?n(e,t,s):n(s))||s);return o&&s&&U(e,t,s),s};import{html as z,LitElement as te}from"lit";import{property as P,state as j}from"lit/decorators.js";import{classMap as oe}from"lit/directives/class-map.js";var V=(a,e)=>(customElements.get(a)?console.debug(`Custom element <${a}> is already defined, skipping definition of ${e.name}.`):window.customElements.define(a,e),e),D=(a,e)=>{let{kind:t,elements:o}=e;return{kind:t,elements:o,finisher(s){customElements.get(a)||window.customElements.define(a,s)}}},y=a=>e=>typeof e=="function"?V(a,e):D(a,e);var x=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 o=`${this.getBaseUrl()}${e}`,s=await fetch(o,{...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 o=new URLSearchParams;t&&o.append("userGroupId",t);let s=o.toString(),l=`${this.getBaseUrl()}/settings/organization/${e}${s?`?${s}`:""}`,n=await fetch(l,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(n.status===404)return null;if(!n.ok)throw new Error(`Failed to fetch settings: ${n.statusText}`);return await n.json()}catch(o){return console.error("Error fetching settings:",o),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[l,n]of Object.entries(e.extraFilters))if(n&&(Array.isArray(n)?n.length>0:n.toString().trim()!=="")){let d=Array.isArray(n)?n.join(","):n.toString();t.append(`extra_${l}`,d)}}let o=t.toString(),s=`/faqs${o?`?${o}`:""}`;return this.makeRequest(s)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};var g=async(a,e)=>{let t=await fetch(a,e);if(!t.ok){let o=await t.json().catch(()=>({}));throw new Error(JSON.stringify({status:t.status,statusText:t.statusText,...o}))}return t&&t.json()};var w=class a{constructor(e){this.config=e,this.enableUpload=e.enableUpload||!1}static getInstance(e){if(!a.instance&&e&&(a.instance=new a(e)),!a.instance)throw new Error("FileService must be initialized with config first");return a.instance}static initialize(e){return a.instance=new a(e),a.instance}async uploadFile(e,t={}){try{let o=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(o.data.signedUrlData.signedUrl,e),{success:!0,id:o.data.file.id,name:o.data.file.name,url:o.data.file.url,type:o.data.file.type}}catch(o){return console.error("Error uploading file:",o),{success:!1,error:o instanceof Error?o.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 o=await fetch(e,{method:"PUT",body:t,headers:{"Content-Type":t.type}});if(!o.ok){let s=await o.text().catch(()=>"No response");throw new Error(`Upload failed with status: ${o.status}. Response: ${s}`)}}async uploadFileWithRetry(e,t={}){let o=t.maxRetries||3,s=null;for(let l=1;l<=o;l++)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"),l===o)break;let d=2**l*1e3;await new Promise(r=>setTimeout(r,d))}return{success:!1,error:s?.message||"Upload failed after retries"}}async getFileById(e){let t=`${this.config.baseUrl}/files/${e}`,o=await this.makeRequest(t);if(!o.success)throw new Error("Failed to get file");return o.data}async makeRequest(e,t){let o={"Content-Type":"application/json"};return this.config.organizationId&&(o["X-Onlive-Organization-Id"]=this.config.organizationId),t?.headers&&Object.assign(o,t.headers),g(e,{...t,headers:o})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var _=class a{constructor(e){this.config=e}static getInstance(e){if(!a.instance&&e&&(a.instance=new a(e)),!a.instance)throw new Error("MultimediaService must be initialized with config first");return a.instance}static initialize(e){return a.instance=new a(e),a.instance}async getImages(e={}){let t=new URLSearchParams({type:"image",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getVideos(e={}){let t=new URLSearchParams({type:"video",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getPresentations(e={}){let t=new URLSearchParams({type:"presentation",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let o=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(o)}async getAllMultimedia(e={}){let[t,o,s]=await Promise.all([this.getImages(e),this.getVideos(e),this.getPresentations(e)]);return{images:t,videos:o,presentations:s}}async getMultimediaByToken(e){let t=`${this.config.baseUrl}/multimedia/secure-token/${e}`;return this.makeRequest(t,!1)}async searchMultimedia(e,t){let o={search:e,page:1,limit:50,includeSecureToken:!0};if(t)return this.getMultimediaByType(t,o);let[s,l,n]=await Promise.all([this.getImages(o),this.getVideos(o),this.getPresentations(o)]),d=[...s.items,...l.items,...n.items];return{items:d,total:d.length,count:d.length,currentPage:1,totalPages:1}}async getMultimediaByType(e,t){switch(e){case"image":return this.getImages(t);case"video":return this.getVideos(t);case"presentation":return this.getPresentations(t);default:throw new Error(`Invalid multimedia type: ${e}`)}}appendExtraFilters(e,t){if(t){for(let[o,s]of Object.entries(t))if(s&&(Array.isArray(s)?s.length>0:s.toString().trim()!=="")){let l=Array.isArray(s)?s.join(","):s.toString();e.append(`extra_${o}`,l)}}}async makeRequest(e,t=!0){let o={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return g(e,{method:"GET",headers:o,credentials:t?"include":void 0})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var h=class a{constructor(e){this.config=e}static getInstance(e){if(!a.instance&&e&&(a.instance=new a(e)),!a.instance)throw new Error("ProductService must be initialized with config first");return a.instance}static initialize(e){return a.instance=new a(e),a.instance}async getProducts(e={}){let t=new URLSearchParams({...e.title&&{title:e.title},...e.search&&{search:e.search},...e.category&&{category:e.category},...e.tags&&{tags:e.tags.join(",")},...e.sortBy&&{sortBy:e.sortBy},...e.sortOrder&&{sortOrder:e.sortOrder},...e.minPrice&&{minPrice:e.minPrice.toString()},...e.maxPrice&&{maxPrice:e.maxPrice.toString()},...e.inStock!==void 0&&{inStock:e.inStock.toString()},...e.offset&&{offset:e.offset.toString()},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});e.extraFields&&Object.keys(e.extraFields).length>0&&t.append("extraFields",JSON.stringify(e.extraFields));let o=`${this.config.baseUrl}/products?${t}`;return this.makeRequest(o,!0)}async getProductByToken(e){let t=`${this.config.baseUrl}/products/secure-token/${e}`;return this.makeRequest(t)}async searchProducts(e,t={}){return this.getProducts({...t,search:e})}async makeRequest(e,t=!1){let o={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return g(e,{method:"GET",headers:o,credentials:t?"include":"same-origin"})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var A=class{constructor(e){e?.multimediaService&&(this.multimediaService=_.initialize(e.multimediaService)),e?.faqsService&&(this.faqsService=x.initialize(e.faqsService)),e?.productService&&(this.productService=h.initialize(e.productService)),e?.fileService&&(this.fileService=w.initialize(e.fileService))}async loadAsset(e,t){switch(e){case"multimedia":return this.loadMultimediaAsset(t);case"product":return this.loadProductAsset(t);case"faq":return this.loadFaqAsset(t);case"file":return this.loadFileAsset(t);default:throw new Error(`Unsupported asset type: ${e}`)}}async loadMultimediaAsset(e){if(!this.multimediaService)throw new Error("MultimediaService not configured");let t=await this.multimediaService.getMultimediaByToken(e);if(!t)throw new Error("Multimedia not found");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:t.animatedCoverUrl||t.url,type:"multimedia",externalId:t.id,format:t.format,size:t.size||void 0,duration:t.duration||void 0,vodUrl:t.vodUrl||void 0,slides:t.slides||[],labels:t.labels,animatedCoverUrl:t.animatedCoverUrl||void 0,metadata:{organizationId:t.organizationId,status:t.status,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadProductAsset(e){if(!this.productService)throw new Error("MultimediaService not configured");let t=await this.productService.getProductByToken(e);if(!t)throw new Error("Product not found");return{id:t.id,name:t.name,description:t.description,url:t.url,thumbnail:t.images?.[0],type:"product",externalId:t.externalId,price:t.price,currency:t.currency,category:t.category,tags:t.tags,images:t.images,variants:t.variants?.map(o=>({id:o.id,externalId:o.externalId,price:o.price,currency:o.currency,images:o.images})),options:t.options,metadata:{providerType:t.providerType,providerId:t.providerId,discountType:t.discountType,discount:t.discount,stock:t.stock,broken:t.broken}}}async loadFaqAsset(e){if(!this.faqsService)throw new Error("FaqsService not configured");let t=await this.faqsService.getFaqById(e);return{id:t.id,name:t.question,description:t.answer,url:`#faq-${t.id}`,type:"faq",externalId:t.id,question:t.question,answer:t.answer,priority:t.priority,isActive:t.isActive,metadata:{organizationId:t.organizationId,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadFileAsset(e){if(!this.fileService)throw new Error("FileService not configured");let t=await this.fileService.getFileById(e),o=t.type||"",s=o.startsWith("video/"),l=o.startsWith("image/");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:l?t.url:void 0,type:"file",externalId:t.id,format:o,size:t.metadata?.size,duration:void 0,vodUrl:s?t.url:void 0,labels:[],animatedCoverUrl:s?t.url:void 0,metadata:{path:t.metadata?.path,bucketType:t.metadata?.bucketType,loadDirection:t.metadata?.loadDirection,createdAt:t.createdAt,updatedAt:t.updatedAt}}}};import{html as i}from"lit";import{classMap as Z}from"lit/directives/class-map.js";import{ifDefined as b}from"lit/directives/if-defined.js";import{when as m}from"lit/directives/when.js";import{unsafeHTML as Y}from"lit/directives/unsafe-html.js";import F from"dompurify";var B={ALLOWED_TAGS:["p","br","span","b","strong","i","em","u","s","del","ul","ol","li","code","pre","a","h1","h2","h3","h4","table","thead","tbody","tr","th","td"],ALLOWED_ATTR:["href","target","rel","title","aria-label","role","colspan","rowspan"],FORCE_HTTPS:!0,ALLOW_DATA_ATTR:!1};F.addHook("afterSanitizeAttributes",a=>{"target"in a&&a.target==="_blank"&&a.setAttribute("rel","noopener noreferrer")});var q=(a,e=B)=>F.sanitize(a,e);function C(a=""){return Y(H(a))}function H(a=""){return q(a,{ADD_ATTR:["target","rel"],ADD_TAGS:["ol-"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:/^ol-/,attributeNameCheck:null,allowCustomizedBuiltInElements:!0}})}import"@onlive.ai/ui/dist/components/button/button.js";import"@onlive.ai/ui/dist/components/icon/icon.js";import{html as E,LitElement as G}from"lit";import{property as Q,query as K}from"lit/decorators.js";import{repeat as X}from"lit/directives/repeat.js";import W from"video.js";import{css as J,unsafeCSS as O}from"lit";import N from"video.js/dist/video-js.min.css?inline";var R=J`
3
3
  ${O(N)}
4
4
  .och__player {
5
5
  width: 100%;
@@ -2203,7 +2203,7 @@ video::-webkit-media-text-track-display {
2203
2203
  <h3 class="ol-asset__modal-title">${e.name}</h3>
2204
2204
  ${e.description?i`<p class="ol-asset__modal-description">${e.description}</p>`:i``}
2205
2205
  </div>
2206
- `}}renderHoverOverlay(e,t,o,s){let l=e.type==="multimedia"&&this.getMultimediaSubtype(e)==="video",a=(e.type==="multimedia"||e.type==="file")&&this.getMultimediaSubtype(e)==="presentation"&&(!e.slides||e.slides.length===0);return l?i`
2206
+ `}}renderHoverOverlay(e,t,o,s){let l=e.type==="multimedia"&&this.getMultimediaSubtype(e)==="video",n=(e.type==="multimedia"||e.type==="file")&&this.getMultimediaSubtype(e)==="presentation"&&(!e.slides||e.slides.length===0);return l?i`
2207
2207
  <div class="ol-asset__video-controls">
2208
2208
  ${m(o,()=>i`
2209
2209
  <ol-button
@@ -2254,7 +2254,7 @@ video::-webkit-media-text-track-display {
2254
2254
  </svg>
2255
2255
  </ol-button>
2256
2256
  `,()=>i`
2257
- ${m(o&&!a,()=>i`
2257
+ ${m(o&&!n,()=>i`
2258
2258
  <ol-button
2259
2259
  class="ol-asset__hover-btn ol-asset__hover-btn--maximize"
2260
2260
  @click=${d=>{d.stopPropagation(),o(e)}}
@@ -2856,49 +2856,60 @@ video::-webkit-media-text-track-display {
2856
2856
  .ol-asset__hover-btn {
2857
2857
  width: 48px;
2858
2858
  height: 48px;
2859
+ cursor: pointer;
2860
+ transition: all 0.2s ease;
2861
+ }
2862
+
2863
+ .ol-asset__hover-btn::part(base) {
2864
+ width: 48px;
2865
+ height: 48px;
2866
+ min-height: unset;
2859
2867
  border: none;
2860
2868
  border-radius: 50%;
2861
2869
  background: rgba(255, 255, 255, 0.9);
2862
2870
  color: var(--ol-color-neutral-700, #374151);
2863
- cursor: pointer;
2864
2871
  display: flex;
2865
2872
  align-items: center;
2866
2873
  justify-content: center;
2867
- transition: all 0.2s ease;
2874
+ padding: 0;
2868
2875
  backdrop-filter: blur(8px);
2869
2876
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
2877
+ transition: all 0.2s ease;
2870
2878
  }
2871
2879
 
2872
- .ol-asset__hover-btn:hover {
2880
+ .ol-asset__hover-btn:hover::part(base) {
2873
2881
  background: rgba(255, 255, 255, 1);
2874
2882
  transform: scale(1.1);
2875
2883
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
2876
2884
  }
2877
2885
 
2878
- .ol-asset__hover-btn:active {
2886
+ .ol-asset__hover-btn:active::part(base) {
2879
2887
  transform: scale(0.95);
2880
2888
  }
2881
2889
 
2882
- .ol-asset__hover-btn--maximize,
2883
- .ol-asset__hover-btn--download,
2884
- .ol-asset__hover-btn--external {
2890
+ .ol-asset__hover-btn--maximize::part(base),
2891
+ .ol-asset__hover-btn--download::part(base),
2892
+ .ol-asset__hover-btn--external::part(base) {
2885
2893
  background: rgba(255, 255, 255, 0.9);
2886
2894
  color: var(--ol-color-neutral-700, #374151);
2887
2895
  }
2888
2896
 
2889
- .ol-asset__hover-btn--maximize:hover,
2890
- .ol-asset__hover-btn--download:hover,
2891
- .ol-asset__hover-btn--external:hover {
2897
+ .ol-asset__hover-btn--maximize:hover::part(base),
2898
+ .ol-asset__hover-btn--download:hover::part(base),
2899
+ .ol-asset__hover-btn--external:hover::part(base) {
2892
2900
  background: rgba(255, 255, 255, 1);
2893
2901
  }
2894
2902
 
2895
2903
  .ol-asset__hover-btn--downloading {
2896
2904
  opacity: 0.7;
2897
2905
  cursor: not-allowed;
2906
+ }
2907
+
2908
+ .ol-asset__hover-btn--downloading::part(base) {
2898
2909
  transform: none !important;
2899
2910
  }
2900
2911
 
2901
- .ol-asset__hover-btn--downloading:hover {
2912
+ .ol-asset__hover-btn--downloading:hover::part(base) {
2902
2913
  transform: none;
2903
2914
  background: rgba(34, 197, 94, 0.9);
2904
2915
  }
@@ -2922,24 +2933,32 @@ video::-webkit-media-text-track-display {
2922
2933
  .ol-asset__video-btn {
2923
2934
  width: 32px;
2924
2935
  height: 32px;
2936
+ cursor: pointer;
2937
+ transition: all 0.2s ease;
2938
+ }
2939
+
2940
+ .ol-asset__video-btn::part(base) {
2941
+ width: 32px;
2942
+ height: 32px;
2943
+ min-height: unset;
2925
2944
  border: none;
2926
2945
  border-radius: 6px;
2927
2946
  background: rgba(0, 0, 0, 0.6);
2928
2947
  color: white;
2929
- cursor: pointer;
2930
2948
  display: flex;
2931
2949
  align-items: center;
2932
2950
  justify-content: center;
2933
- transition: all 0.2s ease;
2951
+ padding: 0;
2934
2952
  backdrop-filter: blur(8px);
2953
+ transition: all 0.2s ease;
2935
2954
  }
2936
2955
 
2937
- .ol-asset__video-btn:hover {
2956
+ .ol-asset__video-btn:hover::part(base) {
2938
2957
  background: rgba(0, 0, 0, 0.8);
2939
2958
  transform: scale(1.05);
2940
2959
  }
2941
2960
 
2942
- .ol-asset__video-btn:active {
2961
+ .ol-asset__video-btn:active::part(base) {
2943
2962
  transform: scale(0.95);
2944
2963
  }
2945
2964
 
@@ -2948,7 +2967,7 @@ video::-webkit-media-text-track-display {
2948
2967
  cursor: not-allowed;
2949
2968
  }
2950
2969
 
2951
- .ol-asset__video-btn--downloading:hover {
2970
+ .ol-asset__video-btn--downloading:hover::part(base) {
2952
2971
  transform: none;
2953
2972
  }
2954
2973
 
@@ -2970,7 +2989,7 @@ video::-webkit-media-text-track-display {
2970
2989
  opacity: 0;
2971
2990
  visibility: hidden;
2972
2991
  }
2973
- `;var S=class{constructor(e,t){this.asset=e,this.onClose=t}getMultimediaSubtype(e){let t=e.format||"";return t.startsWith("video/")?"video":t.startsWith("image/")?"image":t.includes("presentation")||t.includes("pdf")||t.includes("powerpoint")||t.includes("slides")||t.includes("application/vnd.ms-powerpoint")||t.includes("application/vnd.openxmlformats-officedocument.presentationml")||e.slides&&e.slides.length>0?"presentation":e.duration||e.vodUrl?"video":"image"}formatDuration(e){let t=Math.floor(e/60),o=Math.floor(e%60);return`${t}:${o.toString().padStart(2,"0")}`}async open(){await import("@onlive.ai/ui/dist/components/dialog/dialog.js"),await import("@onlive.ai/ui/dist/components/icon-button/icon-button.js"),await import("@onlive.ai/ui/dist/components/button/button.js"),await import("@onlive.ai/ui/dist/components/icon/icon.js");let e=this.asset;this.getMultimediaSubtype(e)==="presentation"&&(e.slides?.length??0)>0&&await Promise.all([import("@onlive.ai/ui/dist/components/carousel/carousel.js"),import("@onlive.ai/ui/dist/components/carousel-item/carousel-item.js")]),this.injectStyles(),this.createDialog(),this.dialog?.show()}close(){this.dialog?.hide(),setTimeout(()=>{this.removeDialog()},300)}createDialog(){if(this.dialog||!this.asset)return;let e=this.createDialogHTML(),t=document.createElement("div");t.innerHTML=e,this.dialog=t.firstElementChild,this.dialog&&(document.body.appendChild(this.dialog),this.attachEventListeners())}removeDialog(){this.dialog&&(this.dialog.parentNode&&this.dialog.parentNode.removeChild(this.dialog),this.dialog=void 0)}injectStyles(){if(document.getElementById("asset-modal-styles"))return;let e=document.createElement("style");e.id="asset-modal-styles",e.textContent=this.getModalStyles(),document.head.appendChild(e)}getModalStyles(){return`
2992
+ `;var S=class{constructor(e,t,o="normal"){this.asset=e,this.onClose=t,this.displayState=o}getMultimediaSubtype(e){let t=e.format||"";return t.startsWith("video/")?"video":t.startsWith("image/")?"image":t.includes("presentation")||t.includes("pdf")||t.includes("powerpoint")||t.includes("slides")||t.includes("application/vnd.ms-powerpoint")||t.includes("application/vnd.openxmlformats-officedocument.presentationml")||e.slides&&e.slides.length>0?"presentation":e.duration||e.vodUrl?"video":"image"}formatDuration(e){let t=Math.floor(e/60),o=Math.floor(e%60);return`${t}:${o.toString().padStart(2,"0")}`}async open(){await import("@onlive.ai/ui/dist/components/dialog/dialog.js"),await import("@onlive.ai/ui/dist/components/icon-button/icon-button.js"),await import("@onlive.ai/ui/dist/components/button/button.js"),await import("@onlive.ai/ui/dist/components/icon/icon.js");let e=this.asset;this.getMultimediaSubtype(e)==="presentation"&&(e.slides?.length??0)>0&&await Promise.all([import("@onlive.ai/ui/dist/components/carousel/carousel.js"),import("@onlive.ai/ui/dist/components/carousel-item/carousel-item.js")]),this.injectStyles(),this.createDialog(),this.dialog?.show()}close(){this.dialog?.hide(),setTimeout(()=>{this.removeDialog()},300)}createDialog(){if(this.dialog||!this.asset)return;let e=this.createDialogHTML(),t=document.createElement("div");t.innerHTML=e,this.dialog=t.firstElementChild,this.dialog&&(document.body.appendChild(this.dialog),this.attachEventListeners())}removeDialog(){this.dialog&&(this.dialog.parentNode&&this.dialog.parentNode.removeChild(this.dialog),this.dialog=void 0)}injectStyles(){if(document.getElementById("asset-modal-styles"))return;let e=document.createElement("style");e.id="asset-modal-styles",e.textContent=this.getModalStyles(),document.head.appendChild(e)}getModalStyles(){return`
2974
2993
 
2975
2994
  ol-dialog::part(base){
2976
2995
  z-index: 1000000;
@@ -3311,6 +3330,79 @@ video::-webkit-media-text-track-display {
3311
3330
  max-height: 90vh;
3312
3331
  }
3313
3332
  }
3333
+
3334
+ /* Maximized state - glassmorphism effect */
3335
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(overlay) {
3336
+ background: rgba(0, 0, 0, 0.4);
3337
+ backdrop-filter: blur(12px);
3338
+ -webkit-backdrop-filter: blur(12px);
3339
+ }
3340
+
3341
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(panel) {
3342
+ background: rgba(18, 20, 30, 0.38);
3343
+ backdrop-filter: blur(20px);
3344
+ -webkit-backdrop-filter: blur(20px);
3345
+ border: 1px solid rgba(255, 255, 255, 0.12);
3346
+ box-shadow:
3347
+ 0 8px 32px rgba(0, 0, 0, 0.4),
3348
+ inset 0 1px 0 rgba(255, 255, 255, 0.06);
3349
+ }
3350
+
3351
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(title) {
3352
+ color: rgba(255, 255, 255, 0.92);
3353
+ }
3354
+
3355
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(close-button) {
3356
+ color: rgba(255, 255, 255, 0.8);
3357
+ }
3358
+
3359
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(close-button):hover {
3360
+ color: rgba(255, 255, 255, 1);
3361
+ }
3362
+
3363
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"]::part(header) {
3364
+ border-bottom-color: rgba(255, 255, 255, 0.1);
3365
+ }
3366
+
3367
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-info {
3368
+ background: transparent;
3369
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
3370
+ }
3371
+
3372
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-title {
3373
+ color: rgba(255, 255, 255, 0.95);
3374
+ }
3375
+
3376
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-description,
3377
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-answer {
3378
+ color: rgba(255, 255, 255, 0.7);
3379
+ }
3380
+
3381
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-type,
3382
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-duration,
3383
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-slides {
3384
+ color: rgba(255, 255, 255, 0.5);
3385
+ }
3386
+
3387
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-metadata-item {
3388
+ color: rgba(255, 255, 255, 0.6);
3389
+ }
3390
+
3391
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-metadata-item ol-icon {
3392
+ color: rgba(255, 255, 255, 0.4);
3393
+ }
3394
+
3395
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-media-container {
3396
+ background: rgba(0, 0, 0, 0.3);
3397
+ }
3398
+
3399
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-faq {
3400
+ color: rgba(255, 255, 255, 0.9);
3401
+ }
3402
+
3403
+ ol-dialog.ol-asset__dialog[data-display-state="maximized"] .ol-asset__modal-question {
3404
+ color: rgba(130, 170, 255, 1);
3405
+ }
3314
3406
  `}createDialogHTML(){if(!this.asset)return"";let{name:e,description:t,url:o,type:s}=this.asset,l="";if(s==="multimedia"){let r=this.asset,u=this.getMultimediaSubtype(r);if(u==="image")l=`
3315
3407
  <div class="ol-asset__modal-media-container">
3316
3408
  <div class="ol-asset__modal-image-container">
@@ -3365,11 +3457,11 @@ video::-webkit-media-text-track-display {
3365
3457
  <div class="ol-asset__modal-media-container" data-type="presentation">
3366
3458
  <div class="ol-asset__modal-presentation">
3367
3459
  <ol-carousel pagination navigation loop class="ol-asset__modal-carousel">
3368
- ${p.map((P,M)=>`
3460
+ ${p.map((M,T)=>`
3369
3461
  <ol-carousel-item>
3370
3462
  <img
3371
- src="${P}"
3372
- alt="Slide ${M+1} of ${p.length}"
3463
+ src="${M}"
3464
+ alt="Slide ${T+1} of ${p.length}"
3373
3465
  class="ol-asset__modal-slide-image"
3374
3466
  />
3375
3467
  </ol-carousel-item>
@@ -3457,11 +3549,11 @@ video::-webkit-media-text-track-display {
3457
3549
  <div class="ol-asset__modal-media-container" data-type="presentation">
3458
3550
  <div class="ol-asset__modal-presentation">
3459
3551
  <ol-carousel pagination navigation loop class="ol-asset__modal-carousel">
3460
- ${p.map((P,M)=>`
3552
+ ${p.map((M,T)=>`
3461
3553
  <ol-carousel-item>
3462
3554
  <img
3463
- src="${P}"
3464
- alt="Slide ${M+1} of ${p.length}"
3555
+ src="${M}"
3556
+ alt="Slide ${T+1} of ${p.length}"
3465
3557
  class="ol-asset__modal-slide-image"
3466
3558
  />
3467
3559
  </ol-carousel-item>
@@ -3505,12 +3597,13 @@ video::-webkit-media-text-track-display {
3505
3597
  <h3 class="ol-asset__modal-title">${e}</h3>
3506
3598
  ${t?`<p class="ol-asset__modal-description">${t}</p>`:""}
3507
3599
  </div>
3508
- `;let a=s==="multimedia"||s==="file",d=s==="faq"&&this.asset.question||e;return`
3600
+ `;let n=s==="multimedia"||s==="file",d=s==="faq"&&this.asset.question||e;return`
3509
3601
  <ol-dialog
3510
3602
  label="${this.escapeHtml(d)}"
3511
3603
  class="ol-asset__dialog"
3512
- data-fullscreen="${a}"
3513
- ${a?'style="--width: 95vw; --max-width: 1600px;"':""}
3604
+ data-fullscreen="${n}"
3605
+ data-display-state="${this.displayState}"
3606
+ ${n?'style="--width: 95vw; --max-width: 1600px;"':""}
3514
3607
  >
3515
3608
  <div class="ol-asset__dialog-content">
3516
3609
  <div class="ol-asset__dialog-body">
@@ -3518,7 +3611,7 @@ video::-webkit-media-text-track-display {
3518
3611
  </div>
3519
3612
  </div>
3520
3613
  </ol-dialog>
3521
- `}attachEventListeners(){this.dialog&&(this.dialog.addEventListener("ol-after-hide",()=>{this.onClose?.()}),this.dialog.addEventListener("ol-request-close",e=>{e.detail?.source==="overlay"&&e.preventDefault()}))}escapeHtml(e){let t=document.createElement("div");return t.textContent=e,t.innerHTML}};var v=class extends te{constructor(){super(...arguments);this.loadingState="idle";this.assetRenderer=new k;this.isDownloading=!1;this.defaultDisplayOptions={showThumbnail:!0,showName:!1,showDescription:!1,showMetadata:!0,showPrice:!0,showDuration:!1,showSize:!1,showTags:!1,layout:"card",size:"medium"}}connectedCallback(){super.connectedCallback(),this.initializeServices(),this.loadAsset()}disconnectedCallback(){super.disconnectedCallback(),this.closeModal()}initializeServices(){this.assetLoader=new A(this.config)}async loadAsset(){if(!this.type||!this.externalId){this.error="Type and externalId are required",this.loadingState="error";return}this.loadingState="loading",this.error=void 0;try{let t=await this.assetLoader.loadAsset(this.type,this.externalId);this.asset=t,this.loadingState="loaded",this.dispatchEvent(new CustomEvent("asset-load",{detail:t})),console.debug("Asset loaded:",t)}catch(t){console.error(`Error loading ${this.type} asset:`,t),this.error=t instanceof Error?t.message:"Failed to load asset",this.loadingState="error",this.dispatchEvent(new CustomEvent("asset-error",{detail:{error:this.error,asset:this.asset}}))}}async onDownload(t){if(!(!t.url||this.isDownloading)){this.isDownloading=!0;try{let o=await fetch(t.url,{method:"GET",mode:"cors",cache:"no-cache"});if(o.ok){let s=await o.blob(),l=window.URL.createObjectURL(s),a=document.createElement("a");a.href=l,a.download=this.getDownloadFilename(t),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a),setTimeout(()=>window.URL.revokeObjectURL(l),100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t})),this.isDownloading=!1;return}}catch(o){console.warn("Fetch strategy failed:",o)}try{let o=await fetch(t.url,{headers:{Accept:"*/*"},mode:"no-cors"});if(o.type==="opaque")throw new Error("No-cors response, cannot access blob");let s=await o.blob(),l=window.URL.createObjectURL(s),a=document.createElement("a");a.href=l,a.download=this.getDownloadFilename(t),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a),setTimeout(()=>window.URL.revokeObjectURL(l),100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t})),this.isDownloading=!1;return}catch(o){console.warn("No-cors strategy failed:",o)}try{let o=document.createElement("a");o.href=t.url,o.download=this.getDownloadFilename(t),o.target="_blank",o.rel="noopener noreferrer",o.style.position="absolute",o.style.left="-9999px",document.body.appendChild(o),o.click(),setTimeout(()=>{document.body.removeChild(o)},100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t}))}catch(o){console.error("All download strategies failed:",o),window.open(t.url,"_blank")}this.isDownloading=!1}}getDownloadFilename(t){let o=Date.now(),s=this.getFileExtension(t);return`${t.name||`asset-${t.type}-${o}`}${s}`}getFileExtension(t){if(t.url){let l=new URL(t.url).pathname,a=l.lastIndexOf(".");if(a>0)return l.substring(a)}return{multimedia:".jpg",file:".bin",product:".jpg",faq:".txt"}[t.type]||""}async openModal(){this.asset&&(this.modalPortal=new S(this.asset,this.closeModal.bind(this)),await this.modalPortal.open())}onMaximize(){if(this.asset){if(this.asset.type==="multimedia"||this.asset.type==="file"){let t=this.asset,o=t.slides&&t.slides.length>0,s=t.format||"";if((s.includes("presentation")||s.includes("pdf")||s.includes("powerpoint")||s.includes("slides")||s.includes("application/vnd.ms-powerpoint")||s.includes("application/vnd.openxmlformats-officedocument.presentationml")||o&&t.slides.length>0)&&!o)return}this.asset.type==="multimedia"||this.asset.type==="file"||this.asset.type==="faq"?this.openModal():this.dispatchEvent(new CustomEvent("asset-click",{detail:this.asset}))}}closeModal(){this.modalPortal&&(this.modalPortal.close(),this.modalPortal=void 0)}render(){let t={...this.defaultDisplayOptions,...this.config?.assetDisplayOptions||{}};return this.loadingState==="loading"?z`
3614
+ `}attachEventListeners(){this.dialog&&(this.dialog.addEventListener("ol-after-hide",()=>{this.onClose?.()}),this.dialog.addEventListener("ol-request-close",e=>{e.detail?.source==="overlay"&&e.preventDefault()}))}escapeHtml(e){let t=document.createElement("div");return t.textContent=e,t.innerHTML}};var v=class extends te{constructor(){super(...arguments);this.displayState="normal";this.loadingState="idle";this.assetRenderer=new k;this.isDownloading=!1;this.defaultDisplayOptions={showThumbnail:!0,showName:!1,showDescription:!1,showMetadata:!0,showPrice:!0,showDuration:!1,showSize:!1,showTags:!1,layout:"card",size:"medium"}}connectedCallback(){super.connectedCallback(),this.initializeServices(),this.loadAsset()}disconnectedCallback(){super.disconnectedCallback(),this.closeModal()}initializeServices(){this.assetLoader=new A(this.config)}async loadAsset(){if(!this.type||!this.externalId){this.error="Type and externalId are required",this.loadingState="error";return}this.loadingState="loading",this.error=void 0;try{let t=await this.assetLoader.loadAsset(this.type,this.externalId);this.asset=t,this.loadingState="loaded",this.dispatchEvent(new CustomEvent("asset-load",{detail:t})),console.debug("Asset loaded:",t)}catch(t){console.error(`Error loading ${this.type} asset:`,t),this.error=t instanceof Error?t.message:"Failed to load asset",this.loadingState="error",this.dispatchEvent(new CustomEvent("asset-error",{detail:{error:this.error,asset:this.asset}}))}}async onDownload(t){if(!(!t.url||this.isDownloading)){this.isDownloading=!0;try{let o=await fetch(t.url,{method:"GET",mode:"cors",cache:"no-cache"});if(o.ok){let s=await o.blob(),l=window.URL.createObjectURL(s),n=document.createElement("a");n.href=l,n.download=this.getDownloadFilename(t),n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n),setTimeout(()=>window.URL.revokeObjectURL(l),100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t})),this.isDownloading=!1;return}}catch(o){console.warn("Fetch strategy failed:",o)}try{let o=await fetch(t.url,{headers:{Accept:"*/*"},mode:"no-cors"});if(o.type==="opaque")throw new Error("No-cors response, cannot access blob");let s=await o.blob(),l=window.URL.createObjectURL(s),n=document.createElement("a");n.href=l,n.download=this.getDownloadFilename(t),n.style.display="none",document.body.appendChild(n),n.click(),document.body.removeChild(n),setTimeout(()=>window.URL.revokeObjectURL(l),100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t})),this.isDownloading=!1;return}catch(o){console.warn("No-cors strategy failed:",o)}try{let o=document.createElement("a");o.href=t.url,o.download=this.getDownloadFilename(t),o.target="_blank",o.rel="noopener noreferrer",o.style.position="absolute",o.style.left="-9999px",document.body.appendChild(o),o.click(),setTimeout(()=>{document.body.removeChild(o)},100),this.dispatchEvent(new CustomEvent("asset-download",{detail:t}))}catch(o){console.error("All download strategies failed:",o),window.open(t.url,"_blank")}this.isDownloading=!1}}getDownloadFilename(t){let o=Date.now(),s=this.getFileExtension(t);return`${t.name||`asset-${t.type}-${o}`}${s}`}getFileExtension(t){if(t.url){let l=new URL(t.url).pathname,n=l.lastIndexOf(".");if(n>0)return l.substring(n)}return{multimedia:".jpg",file:".bin",product:".jpg",faq:".txt"}[t.type]||""}async openModal(){this.asset&&(this.modalPortal=new S(this.asset,this.closeModal.bind(this),this.displayState),await this.modalPortal.open())}onMaximize(){if(this.asset){if(this.asset.type==="multimedia"||this.asset.type==="file"){let t=this.asset,o=t.slides&&t.slides.length>0,s=t.format||"";if((s.includes("presentation")||s.includes("pdf")||s.includes("powerpoint")||s.includes("slides")||s.includes("application/vnd.ms-powerpoint")||s.includes("application/vnd.openxmlformats-officedocument.presentationml")||o&&t.slides.length>0)&&!o)return}this.asset.type==="multimedia"||this.asset.type==="file"||this.asset.type==="faq"?this.openModal():this.dispatchEvent(new CustomEvent("asset-click",{detail:this.asset}))}}closeModal(){this.modalPortal&&(this.modalPortal.close(),this.modalPortal=void 0)}render(){let t={...this.defaultDisplayOptions,...this.config?.assetDisplayOptions||{}};return this.loadingState==="loading"?z`
3522
3615
  <div class="ol-asset ol-asset--loading">
3523
3616
  ${this.assetRenderer.renderLoading()}
3524
3617
  </div>
@@ -3533,4 +3626,4 @@ video::-webkit-media-text-track-display {
3533
3626
  ${this.assetRenderer.renderThumbnail(this.asset,t,this.onDownload.bind(this),this.isDownloading,this.onMaximize.bind(this))}
3534
3627
  ${this.assetRenderer.renderContent(this.asset,t)}
3535
3628
  </div>
3536
- `:z``}};v.styles=[I],c([T({type:String})],v.prototype,"type",2),c([T({type:String})],v.prototype,"externalId",2),c([T({type:Object})],v.prototype,"config",2),c([h()],v.prototype,"asset",2),c([h()],v.prototype,"loadingState",2),c([h()],v.prototype,"error",2),c([h()],v.prototype,"assetLoader",2),c([h()],v.prototype,"assetRenderer",2),c([h()],v.prototype,"isDownloading",2),v=c([y("osb-asset")],v);export{v as OSBAsset};
3629
+ `:z``}};v.styles=[I],c([P({type:String})],v.prototype,"type",2),c([P({type:String})],v.prototype,"externalId",2),c([P({type:Object})],v.prototype,"config",2),c([P({type:String,attribute:"display-state"})],v.prototype,"displayState",2),c([j()],v.prototype,"asset",2),c([j()],v.prototype,"loadingState",2),c([j()],v.prototype,"error",2),c([j()],v.prototype,"assetLoader",2),c([j()],v.prototype,"assetRenderer",2),c([j()],v.prototype,"isDownloading",2),v=c([y("osb-asset")],v);export{v as OSBAsset};
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  "use strict";var p=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var y=Object.prototype.hasOwnProperty;var S=(r,e)=>{for(var t in e)p(r,t,{get:e[t],enumerable:!0})},P=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of v(e))!y.call(r,s)&&s!==t&&p(r,s,{get:()=>e[s],enumerable:!(i=h(e,s))||i.enumerable});return r};var w=r=>P(p({},"__esModule",{value:!0}),r);var F={};S(F,{AssetLoaders:()=>m});module.exports=w(F);var d=class r{constructor(e){this.config=e}static initialize(e){return new r(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(),o=`${this.getBaseUrl()}/settings/organization/${e}${s?`?${s}`:""}`,n=await fetch(o,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(n.status===404)return null;if(!n.ok)throw new Error(`Failed to fetch settings: ${n.statusText}`);return await n.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,n]of Object.entries(e.extraFilters))if(n&&(Array.isArray(n)?n.length>0:n.toString().trim()!=="")){let a=Array.isArray(n)?n.join(","):n.toString();t.append(`extra_${o}`,a)}}let i=t.toString(),s=`/faqs${i?`?${i}`:""}`;return this.makeRequest(s)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};var c=async(r,e)=>{let t=await fetch(r,e);if(!t.ok){let i=await t.json().catch(()=>({}));throw new Error(JSON.stringify({status:t.status,statusText:t.statusText,...i}))}return t&&t.json()};var l=class r{constructor(e){this.config=e,this.enableUpload=e.enableUpload||!1}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("FileService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async uploadFile(e,t={}){try{let i=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(i.data.signedUrlData.signedUrl,e),{success:!0,id:i.data.file.id,name:i.data.file.name,url:i.data.file.url,type:i.data.file.type}}catch(i){return console.error("Error uploading file:",i),{success:!1,error:i instanceof Error?i.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 i=await fetch(e,{method:"PUT",body:t,headers:{"Content-Type":t.type}});if(!i.ok){let s=await i.text().catch(()=>"No response");throw new Error(`Upload failed with status: ${i.status}. Response: ${s}`)}}async uploadFileWithRetry(e,t={}){let i=t.maxRetries||3,s=null;for(let o=1;o<=i;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===i)break;let a=2**o*1e3;await new Promise(f=>setTimeout(f,a))}return{success:!1,error:s?.message||"Upload failed after retries"}}async getFileById(e){let t=`${this.config.baseUrl}/files/${e}`,i=await this.makeRequest(t);if(!i.success)throw new Error("Failed to get file");return i.data}async makeRequest(e,t){let i={"Content-Type":"application/json"};return this.config.organizationId&&(i["X-Onlive-Organization-Id"]=this.config.organizationId),t?.headers&&Object.assign(i,t.headers),c(e,{...t,headers:i})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var g=class r{constructor(e){this.config=e}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("MultimediaService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async getImages(e={}){let t=new URLSearchParams({type:"image",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getVideos(e={}){let t=new URLSearchParams({type:"video",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getPresentations(e={}){let t=new URLSearchParams({type:"presentation",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getAllMultimedia(e={}){let[t,i,s]=await Promise.all([this.getImages(e),this.getVideos(e),this.getPresentations(e)]);return{images:t,videos:i,presentations:s}}async getMultimediaByToken(e){let t=`${this.config.baseUrl}/multimedia/secure-token/${e}`;return this.makeRequest(t,!1)}async searchMultimedia(e,t){let i={search:e,page:1,limit:50,includeSecureToken:!0};if(t)return this.getMultimediaByType(t,i);let[s,o,n]=await Promise.all([this.getImages(i),this.getVideos(i),this.getPresentations(i)]),a=[...s.items,...o.items,...n.items];return{items:a,total:a.length,count:a.length,currentPage:1,totalPages:1}}async getMultimediaByType(e,t){switch(e){case"image":return this.getImages(t);case"video":return this.getVideos(t);case"presentation":return this.getPresentations(t);default:throw new Error(`Invalid multimedia type: ${e}`)}}appendExtraFilters(e,t){if(t){for(let[i,s]of Object.entries(t))if(s&&(Array.isArray(s)?s.length>0:s.toString().trim()!=="")){let o=Array.isArray(s)?s.join(","):s.toString();e.append(`extra_${i}`,o)}}}async makeRequest(e,t=!0){let i={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return c(e,{method:"GET",headers:i,credentials:t?"include":void 0})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var u=class r{constructor(e){this.config=e}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("ProductService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async getProducts(e={}){let t=new URLSearchParams({...e.title&&{title:e.title},...e.search&&{search:e.search},...e.category&&{category:e.category},...e.tags&&{tags:e.tags.join(",")},...e.sortBy&&{sortBy:e.sortBy},...e.sortOrder&&{sortOrder:e.sortOrder},...e.minPrice&&{minPrice:e.minPrice.toString()},...e.maxPrice&&{maxPrice:e.maxPrice.toString()},...e.inStock!==void 0&&{inStock:e.inStock.toString()},...e.offset&&{offset:e.offset.toString()},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});e.extraFields&&Object.keys(e.extraFields).length>0&&t.append("extraFields",JSON.stringify(e.extraFields));let i=`${this.config.baseUrl}/products?${t}`;return this.makeRequest(i,!0)}async getProductByToken(e){let t=`${this.config.baseUrl}/products/secure-token/${e}`;return this.makeRequest(t)}async searchProducts(e,t={}){return this.getProducts({...t,search:e})}async makeRequest(e,t=!1){let i={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return c(e,{method:"GET",headers:i,credentials:t?"include":"same-origin"})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var m=class{constructor(e){e?.multimediaService&&(this.multimediaService=g.initialize(e.multimediaService)),e?.faqsService&&(this.faqsService=d.initialize(e.faqsService)),e?.productService&&(this.productService=u.initialize(e.productService)),e?.fileService&&(this.fileService=l.initialize(e.fileService))}async loadAsset(e,t){switch(e){case"multimedia":return this.loadMultimediaAsset(t);case"product":return this.loadProductAsset(t);case"faq":return this.loadFaqAsset(t);case"file":return this.loadFileAsset(t);default:throw new Error(`Unsupported asset type: ${e}`)}}async loadMultimediaAsset(e){if(!this.multimediaService)throw new Error("MultimediaService not configured");let t=await this.multimediaService.getMultimediaByToken(e);if(!t)throw new Error("Multimedia not found");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:t.animatedCoverUrl||t.url,type:"multimedia",externalId:t.id,format:t.format,size:t.size||void 0,duration:t.duration||void 0,vodUrl:t.vodUrl||void 0,slides:t.slides||[],labels:t.labels,animatedCoverUrl:t.animatedCoverUrl||void 0,metadata:{organizationId:t.organizationId,status:t.status,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadProductAsset(e){if(!this.productService)throw new Error("MultimediaService not configured");let t=await this.productService.getProductByToken(e);if(!t)throw new Error("Product not found");return{id:t.id,name:t.name,description:t.description,url:t.url,thumbnail:t.images?.[0],type:"product",externalId:t.externalId,price:t.price,currency:t.currency,category:t.category,tags:t.tags,images:t.images,variants:t.variants?.map(i=>({id:i.id,externalId:i.externalId,price:i.price,currency:i.currency,images:i.images})),options:t.options,metadata:{providerType:t.providerType,providerId:t.providerId,discountType:t.discountType,discount:t.discount,stock:t.stock,broken:t.broken}}}async loadFaqAsset(e){if(!this.faqsService)throw new Error("FaqsService not configured");let t=await this.faqsService.getFaqById(e);return{id:t.id,name:t.question,description:t.answer,url:`#faq-${t.id}`,type:"faq",externalId:t.id,question:t.question,answer:t.answer,priority:t.priority,isActive:t.isActive,metadata:{organizationId:t.organizationId,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadFileAsset(e){if(!this.fileService)throw new Error("FileService not configured");let t=await this.fileService.getFileById(e),i=t.type||"",s=i.startsWith("video/"),o=i.startsWith("image/");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:o?t.url:void 0,type:"file",externalId:t.id,format:i,size:t.metadata?.size,duration:void 0,vodUrl:s?t.url:void 0,labels:[],animatedCoverUrl:s?t.url:void 0,metadata:{path:t.metadata?.path,bucketType:t.metadata?.bucketType,loadDirection:t.metadata?.loadDirection,createdAt:t.createdAt,updatedAt:t.updatedAt}}}};0&&(module.exports={AssetLoaders});
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import { AssetConfig, AssetType, IAsset } from './asset.types.cjs';
3
3
 
4
4
  declare class AssetLoaders {
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import { AssetConfig, AssetType, IAsset } from './asset.types.js';
3
3
 
4
4
  declare class AssetLoaders {
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  var d=class r{constructor(e){this.config=e}static initialize(e){return new r(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(),o=`${this.getBaseUrl()}/settings/organization/${e}${s?`?${s}`:""}`,n=await fetch(o,{method:"GET",headers:this.getHeaders(),credentials:"include"});if(n.status===404)return null;if(!n.ok)throw new Error(`Failed to fetch settings: ${n.statusText}`);return await n.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,n]of Object.entries(e.extraFilters))if(n&&(Array.isArray(n)?n.length>0:n.toString().trim()!=="")){let a=Array.isArray(n)?n.join(","):n.toString();t.append(`extra_${o}`,a)}}let i=t.toString(),s=`/faqs${i?`?${i}`:""}`;return this.makeRequest(s)}async getFaqById(e){return this.makeRequest(`/faqs/${e}`,{})}};var c=async(r,e)=>{let t=await fetch(r,e);if(!t.ok){let i=await t.json().catch(()=>({}));throw new Error(JSON.stringify({status:t.status,statusText:t.statusText,...i}))}return t&&t.json()};var l=class r{constructor(e){this.config=e,this.enableUpload=e.enableUpload||!1}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("FileService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async uploadFile(e,t={}){try{let i=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(i.data.signedUrlData.signedUrl,e),{success:!0,id:i.data.file.id,name:i.data.file.name,url:i.data.file.url,type:i.data.file.type}}catch(i){return console.error("Error uploading file:",i),{success:!1,error:i instanceof Error?i.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 i=await fetch(e,{method:"PUT",body:t,headers:{"Content-Type":t.type}});if(!i.ok){let s=await i.text().catch(()=>"No response");throw new Error(`Upload failed with status: ${i.status}. Response: ${s}`)}}async uploadFileWithRetry(e,t={}){let i=t.maxRetries||3,s=null;for(let o=1;o<=i;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===i)break;let a=2**o*1e3;await new Promise(m=>setTimeout(m,a))}return{success:!1,error:s?.message||"Upload failed after retries"}}async getFileById(e){let t=`${this.config.baseUrl}/files/${e}`,i=await this.makeRequest(t);if(!i.success)throw new Error("Failed to get file");return i.data}async makeRequest(e,t){let i={"Content-Type":"application/json"};return this.config.organizationId&&(i["X-Onlive-Organization-Id"]=this.config.organizationId),t?.headers&&Object.assign(i,t.headers),c(e,{...t,headers:i})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var g=class r{constructor(e){this.config=e}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("MultimediaService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async getImages(e={}){let t=new URLSearchParams({type:"image",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getVideos(e={}){let t=new URLSearchParams({type:"video",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getPresentations(e={}){let t=new URLSearchParams({type:"presentation",page:(e.page||1).toString(),limit:(e.limit||12).toString(),...e.search&&{search:e.search},...e.labels&&{labels:e.labels.join(",")},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});this.appendExtraFilters(t,e.extraFilters);let i=`${this.config.baseUrl}/multimedia?${t}`;return this.makeRequest(i)}async getAllMultimedia(e={}){let[t,i,s]=await Promise.all([this.getImages(e),this.getVideos(e),this.getPresentations(e)]);return{images:t,videos:i,presentations:s}}async getMultimediaByToken(e){let t=`${this.config.baseUrl}/multimedia/secure-token/${e}`;return this.makeRequest(t,!1)}async searchMultimedia(e,t){let i={search:e,page:1,limit:50,includeSecureToken:!0};if(t)return this.getMultimediaByType(t,i);let[s,o,n]=await Promise.all([this.getImages(i),this.getVideos(i),this.getPresentations(i)]),a=[...s.items,...o.items,...n.items];return{items:a,total:a.length,count:a.length,currentPage:1,totalPages:1}}async getMultimediaByType(e,t){switch(e){case"image":return this.getImages(t);case"video":return this.getVideos(t);case"presentation":return this.getPresentations(t);default:throw new Error(`Invalid multimedia type: ${e}`)}}appendExtraFilters(e,t){if(t){for(let[i,s]of Object.entries(t))if(s&&(Array.isArray(s)?s.length>0:s.toString().trim()!=="")){let o=Array.isArray(s)?s.join(","):s.toString();e.append(`extra_${i}`,o)}}}async makeRequest(e,t=!0){let i={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return c(e,{method:"GET",headers:i,credentials:t?"include":void 0})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var u=class r{constructor(e){this.config=e}static getInstance(e){if(!r.instance&&e&&(r.instance=new r(e)),!r.instance)throw new Error("ProductService must be initialized with config first");return r.instance}static initialize(e){return r.instance=new r(e),r.instance}async getProducts(e={}){let t=new URLSearchParams({...e.title&&{title:e.title},...e.search&&{search:e.search},...e.category&&{category:e.category},...e.tags&&{tags:e.tags.join(",")},...e.sortBy&&{sortBy:e.sortBy},...e.sortOrder&&{sortOrder:e.sortOrder},...e.minPrice&&{minPrice:e.minPrice.toString()},...e.maxPrice&&{maxPrice:e.maxPrice.toString()},...e.inStock!==void 0&&{inStock:e.inStock.toString()},...e.offset&&{offset:e.offset.toString()},...e.includeSecureToken&&{includeSecureToken:e.includeSecureToken.toString()}});e.extraFields&&Object.keys(e.extraFields).length>0&&t.append("extraFields",JSON.stringify(e.extraFields));let i=`${this.config.baseUrl}/products?${t}`;return this.makeRequest(i,!0)}async getProductByToken(e){let t=`${this.config.baseUrl}/products/secure-token/${e}`;return this.makeRequest(t)}async searchProducts(e,t={}){return this.getProducts({...t,search:e})}async makeRequest(e,t=!1){let i={"Content-Type":"application/json","X-Onlive-Organization-Id":this.config.organizationId};return c(e,{method:"GET",headers:i,credentials:t?"include":"same-origin"})}updateConfig(e){this.config={...this.config,...e}}getConfig(){return{...this.config}}};var p=class{constructor(e){e?.multimediaService&&(this.multimediaService=g.initialize(e.multimediaService)),e?.faqsService&&(this.faqsService=d.initialize(e.faqsService)),e?.productService&&(this.productService=u.initialize(e.productService)),e?.fileService&&(this.fileService=l.initialize(e.fileService))}async loadAsset(e,t){switch(e){case"multimedia":return this.loadMultimediaAsset(t);case"product":return this.loadProductAsset(t);case"faq":return this.loadFaqAsset(t);case"file":return this.loadFileAsset(t);default:throw new Error(`Unsupported asset type: ${e}`)}}async loadMultimediaAsset(e){if(!this.multimediaService)throw new Error("MultimediaService not configured");let t=await this.multimediaService.getMultimediaByToken(e);if(!t)throw new Error("Multimedia not found");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:t.animatedCoverUrl||t.url,type:"multimedia",externalId:t.id,format:t.format,size:t.size||void 0,duration:t.duration||void 0,vodUrl:t.vodUrl||void 0,slides:t.slides||[],labels:t.labels,animatedCoverUrl:t.animatedCoverUrl||void 0,metadata:{organizationId:t.organizationId,status:t.status,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadProductAsset(e){if(!this.productService)throw new Error("MultimediaService not configured");let t=await this.productService.getProductByToken(e);if(!t)throw new Error("Product not found");return{id:t.id,name:t.name,description:t.description,url:t.url,thumbnail:t.images?.[0],type:"product",externalId:t.externalId,price:t.price,currency:t.currency,category:t.category,tags:t.tags,images:t.images,variants:t.variants?.map(i=>({id:i.id,externalId:i.externalId,price:i.price,currency:i.currency,images:i.images})),options:t.options,metadata:{providerType:t.providerType,providerId:t.providerId,discountType:t.discountType,discount:t.discount,stock:t.stock,broken:t.broken}}}async loadFaqAsset(e){if(!this.faqsService)throw new Error("FaqsService not configured");let t=await this.faqsService.getFaqById(e);return{id:t.id,name:t.question,description:t.answer,url:`#faq-${t.id}`,type:"faq",externalId:t.id,question:t.question,answer:t.answer,priority:t.priority,isActive:t.isActive,metadata:{organizationId:t.organizationId,createdAt:t.createdAt,updatedAt:t.updatedAt}}}async loadFileAsset(e){if(!this.fileService)throw new Error("FileService not configured");let t=await this.fileService.getFileById(e),i=t.type||"",s=i.startsWith("video/"),o=i.startsWith("image/");return{id:t.id,name:t.name,description:t.description||"",url:t.url,thumbnail:o?t.url:void 0,type:"file",externalId:t.id,format:i,size:t.metadata?.size,duration:void 0,vodUrl:s?t.url:void 0,labels:[],animatedCoverUrl:s?t.url:void 0,metadata:{path:t.metadata?.path,bucketType:t.metadata?.bucketType,loadDirection:t.metadata?.loadDirection,createdAt:t.createdAt,updatedAt:t.updatedAt}}}};export{p as AssetLoaders};
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  "use strict";var Y=Object.create;var c=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var J=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty;var P=(i,e)=>{for(var o in e)c(i,o,{get:e[o],enumerable:!0})},A=(i,e,o,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of B(e))!C.call(i,n)&&n!==o&&c(i,n,{get:()=>e[n],enumerable:!(t=y(e,n))||t.enumerable});return i};var h=(i,e,o)=>(o=i!=null?Y(J(i)):{},A(e||!i||!i.__esModule?c(o,"default",{value:i,enumerable:!0}):o,i)),E=i=>A(c({},"__esModule",{value:!0}),i),u=(i,e,o,t)=>{for(var n=t>1?void 0:t?y(e,o):e,v=i.length-1,j;v>=0;v--)(j=i[v])&&(n=(t?j(e,o,n):j(n))||n);return t&&n&&c(e,o,n),n};var R={};P(R,{AssetRenderer:()=>g});module.exports=E(R);var s=require("lit"),T=require("lit/directives/class-map.js"),d=require("lit/directives/if-defined.js"),r=require("lit/directives/when.js");var k=require("lit/directives/unsafe-html.js");var b=h(require("dompurify"),1),H={ALLOWED_TAGS:["p","br","span","b","strong","i","em","u","s","del","ul","ol","li","code","pre","a","h1","h2","h3","h4","table","thead","tbody","tr","th","td"],ALLOWED_ATTR:["href","target","rel","title","aria-label","role","colspan","rowspan"],FORCE_HTTPS:!0,ALLOW_DATA_ATTR:!1};b.default.addHook("afterSanitizeAttributes",i=>{"target"in i&&i.target==="_blank"&&i.setAttribute("rel","noopener noreferrer")});var w=(i,e=H)=>b.default.sanitize(i,e);function x(i=""){return(0,k.unsafeHTML)(F(i))}function F(i=""){return w(i,{ADD_ATTR:["target","rel"],ADD_TAGS:["ol-"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:/^ol-/,attributeNameCheck:null,allowCustomizedBuiltInElements:!0}})}var L=(i,e)=>(customElements.get(i)?console.debug(`Custom element <${i}> is already defined, skipping definition of ${e.name}.`):window.customElements.define(i,e),e),D=(i,e)=>{let{kind:o,elements:t}=e;return{kind:o,elements:t,finisher(n){customElements.get(i)||window.customElements.define(i,n)}}},z=i=>e=>typeof e=="function"?L(i,e):D(i,e);var X=require("@onlive.ai/ui/dist/components/button/button.js"),Q=require("@onlive.ai/ui/dist/components/icon/icon.js"),p=require("lit"),f=require("lit/decorators.js"),V=require("lit/directives/repeat.js"),_=h(require("video.js"),1);var m=require("lit"),S=h(require("video.js/dist/video-js.min.css?inline"),1),M=m.css`
3
3
  ${(0,m.unsafeCSS)(S.default)}
4
4
  .och__player {
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import { TemplateResult } from 'lit';
3
3
  import '../player/player.cjs';
4
4
  import { IAsset, AssetDisplayOptions } from './asset.types.cjs';
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  import { TemplateResult } from 'lit';
3
3
  import '../player/player.js';
4
4
  import { IAsset, AssetDisplayOptions } from './asset.types.js';
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/common-121 v0.2.190 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/common-121 v0.2.191 | © 2026 Onlive.ai */
2
2
  var y=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var c=(n,e,o,t)=>{for(var i=t>1?void 0:t?A(e,o):e,r=n.length-1,d;r>=0;r--)(d=n[r])&&(i=(t?d(e,o,i):d(i))||i);return t&&i&&y(e,o,i),i};import{html as s}from"lit";import{classMap as P}from"lit/directives/class-map.js";import{ifDefined as j}from"lit/directives/if-defined.js";import{when as v}from"lit/directives/when.js";import{unsafeHTML as k}from"lit/directives/unsafe-html.js";import p from"dompurify";var w={ALLOWED_TAGS:["p","br","span","b","strong","i","em","u","s","del","ul","ol","li","code","pre","a","h1","h2","h3","h4","table","thead","tbody","tr","th","td"],ALLOWED_ATTR:["href","target","rel","title","aria-label","role","colspan","rowspan"],FORCE_HTTPS:!0,ALLOW_DATA_ATTR:!1};p.addHook("afterSanitizeAttributes",n=>{"target"in n&&n.target==="_blank"&&n.setAttribute("rel","noopener noreferrer")});var u=(n,e=w)=>p.sanitize(n,e);function m(n=""){return k(x(n))}function x(n=""){return u(n,{ADD_ATTR:["target","rel"],ADD_TAGS:["ol-"],CUSTOM_ELEMENT_HANDLING:{tagNameCheck:/^ol-/,attributeNameCheck:null,allowCustomizedBuiltInElements:!0}})}var z=(n,e)=>(customElements.get(n)?console.debug(`Custom element <${n}> is already defined, skipping definition of ${e.name}.`):window.customElements.define(n,e),e),S=(n,e)=>{let{kind:o,elements:t}=e;return{kind:o,elements:t,finisher(i){customElements.get(n)||window.customElements.define(n,i)}}},f=n=>e=>typeof e=="function"?z(n,e):S(n,e);import"@onlive.ai/ui/dist/components/button/button.js";import"@onlive.ai/ui/dist/components/icon/icon.js";import{html as b,LitElement as T}from"lit";import{property as Y,query as B}from"lit/decorators.js";import{repeat as J}from"lit/directives/repeat.js";import C from"video.js";import{css as M,unsafeCSS as V}from"lit";import _ from"video.js/dist/video-js.min.css?inline";var h=M`
3
3
  ${V(_)}
4
4
  .och__player {