@snap/camera-kit 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1222) hide show
  1. package/LICENSE.md +2 -2
  2. package/README.md +1 -1
  3. package/dist/CameraKit.d.ts +334 -0
  4. package/dist/CameraKit.d.ts.map +1 -0
  5. package/dist/CameraKit.js +104 -0
  6. package/dist/CameraKit.js.map +1 -0
  7. package/dist/benchmark/benchmarkGflops.d.ts +17 -0
  8. package/dist/benchmark/benchmarkGflops.d.ts.map +1 -0
  9. package/dist/benchmark/benchmarkGflops.js +116 -0
  10. package/dist/benchmark/benchmarkGflops.js.map +1 -0
  11. package/dist/benchmark/estimateLensPerformanceCluster.d.ts +34 -0
  12. package/dist/benchmark/estimateLensPerformanceCluster.d.ts.map +1 -0
  13. package/dist/benchmark/estimateLensPerformanceCluster.js +34 -0
  14. package/dist/benchmark/estimateLensPerformanceCluster.js.map +1 -0
  15. package/dist/benchmark/webglUtils.d.ts +8 -0
  16. package/dist/benchmark/webglUtils.d.ts.map +1 -0
  17. package/dist/bootstrapCameraKit.d.ts +97 -0
  18. package/dist/bootstrapCameraKit.d.ts.map +1 -0
  19. package/dist/bootstrapCameraKit.js +117 -0
  20. package/dist/bootstrapCameraKit.js.map +1 -0
  21. package/dist/clients/createTsProtoClient.d.ts +41 -0
  22. package/dist/clients/createTsProtoClient.d.ts.map +1 -0
  23. package/dist/clients/createTsProtoClient.js +36 -0
  24. package/dist/clients/createTsProtoClient.js.map +1 -0
  25. package/dist/clients/grpcHandler.d.ts +27 -0
  26. package/dist/clients/grpcHandler.d.ts.map +1 -0
  27. package/dist/clients/grpcHandler.js +79 -0
  28. package/dist/clients/grpcHandler.js.map +1 -0
  29. package/dist/clients/lensesClient.d.ts +10 -0
  30. package/dist/clients/lensesClient.d.ts.map +1 -0
  31. package/dist/clients/lensesClient.js.map +1 -0
  32. package/dist/clients/metricsClient.d.ts +27 -0
  33. package/dist/clients/metricsClient.d.ts.map +1 -0
  34. package/dist/clients/metricsClient.js +96 -0
  35. package/dist/clients/metricsClient.js.map +1 -0
  36. package/dist/common/assertions.d.ts +28 -0
  37. package/dist/common/assertions.d.ts.map +1 -0
  38. package/dist/common/assertions.js +14 -0
  39. package/dist/common/assertions.js.map +1 -0
  40. package/dist/common/copyDefinedProperties.d.ts +14 -0
  41. package/dist/common/copyDefinedProperties.d.ts.map +1 -0
  42. package/dist/common/copyDefinedProperties.js +4 -0
  43. package/dist/common/copyDefinedProperties.js.map +1 -0
  44. package/dist/common/date.d.ts +4 -0
  45. package/dist/common/date.d.ts.map +1 -0
  46. package/dist/common/dialog.d.ts +60 -0
  47. package/dist/common/dialog.d.ts.map +1 -0
  48. package/dist/common/dialog.js +158 -0
  49. package/dist/common/dialog.js.map +1 -0
  50. package/dist/common/entries.d.ts +5 -0
  51. package/dist/common/entries.d.ts.map +1 -0
  52. package/dist/common/entries.js +3 -0
  53. package/dist/common/entries.js.map +1 -0
  54. package/dist/common/errorHelpers.d.ts +18 -0
  55. package/dist/common/errorHelpers.d.ts.map +1 -0
  56. package/dist/common/errorHelpers.js +20 -0
  57. package/dist/common/errorHelpers.js.map +1 -0
  58. package/dist/common/getFilename.d.ts +2 -0
  59. package/dist/common/getFilename.d.ts.map +1 -0
  60. package/dist/common/hash.d.ts +6 -0
  61. package/dist/common/hash.d.ts.map +1 -0
  62. package/dist/common/hash.js +13 -0
  63. package/dist/common/hash.js.map +1 -0
  64. package/dist/common/loadScript.d.ts +7 -0
  65. package/dist/common/loadScript.d.ts.map +1 -0
  66. package/dist/common/loadScript.js +13 -0
  67. package/dist/common/loadScript.js.map +1 -0
  68. package/dist/common/localization.d.ts +55 -0
  69. package/dist/common/localization.d.ts.map +1 -0
  70. package/dist/common/localization.js +622 -0
  71. package/dist/common/localization.js.map +1 -0
  72. package/dist/common/memoize.d.ts +9 -0
  73. package/dist/common/memoize.d.ts.map +1 -0
  74. package/dist/common/pageVisibility.d.ts +35 -0
  75. package/dist/common/pageVisibility.d.ts.map +1 -0
  76. package/dist/common/pageVisibility.js +52 -0
  77. package/dist/common/pageVisibility.js.map +1 -0
  78. package/dist/common/result.d.ts +37 -0
  79. package/dist/common/result.d.ts.map +1 -0
  80. package/dist/common/result.js +39 -0
  81. package/dist/common/result.js.map +1 -0
  82. package/dist/common/time.d.ts +3 -0
  83. package/dist/common/time.d.ts.map +1 -0
  84. package/dist/common/typeguards.d.ts +68 -0
  85. package/dist/common/typeguards.d.ts.map +1 -0
  86. package/dist/common/typeguards.js +68 -0
  87. package/dist/common/typeguards.js.map +1 -0
  88. package/dist/common/types.d.ts +38 -0
  89. package/dist/common/types.d.ts.map +1 -0
  90. package/dist/common/types.js.map +1 -0
  91. package/dist/common/unionBy.d.ts +29 -0
  92. package/dist/common/unionBy.d.ts.map +1 -0
  93. package/dist/common/unionBy.js +16 -0
  94. package/dist/common/unionBy.js.map +1 -0
  95. package/dist/common/validate.d.ts +16 -0
  96. package/dist/common/validate.d.ts.map +1 -0
  97. package/dist/common/validate.js +57 -0
  98. package/dist/common/validate.js.map +1 -0
  99. package/dist/configuration.d.ts +102 -0
  100. package/dist/configuration.d.ts.map +1 -0
  101. package/dist/configuration.js +30 -0
  102. package/dist/configuration.js.map +1 -0
  103. package/dist/configurationOverrides.d.ts +13 -0
  104. package/dist/configurationOverrides.d.ts.map +1 -0
  105. package/dist/configurationOverrides.js +38 -0
  106. package/dist/configurationOverrides.js.map +1 -0
  107. package/dist/dependency-injection/Container.d.ts +177 -0
  108. package/dist/dependency-injection/Container.d.ts.map +1 -0
  109. package/dist/dependency-injection/Container.js +72 -0
  110. package/dist/dependency-injection/Container.js.map +1 -0
  111. package/dist/dependency-injection/Injectable.d.ts +96 -0
  112. package/dist/dependency-injection/Injectable.d.ts.map +1 -0
  113. package/dist/dependency-injection/Injectable.js.map +1 -0
  114. package/dist/dependency-injection/PartialContainer.d.ts +86 -0
  115. package/dist/dependency-injection/PartialContainer.d.ts.map +1 -0
  116. package/dist/dependency-injection/PartialContainer.js +28 -0
  117. package/dist/dependency-injection/PartialContainer.js.map +1 -0
  118. package/dist/dependency-injection/RootServices.d.ts +74 -0
  119. package/dist/dependency-injection/RootServices.d.ts.map +1 -0
  120. package/dist/dependency-injection/RootServices.js +2 -0
  121. package/dist/dependency-injection/RootServices.js.map +1 -0
  122. package/dist/dependency-injection/types.d.ts +57 -0
  123. package/dist/dependency-injection/types.d.ts.map +1 -0
  124. package/dist/dependency-injection/types.js.map +1 -0
  125. package/dist/environment.d.ts +5 -0
  126. package/dist/environment.d.ts.map +1 -0
  127. package/dist/environment.js +2 -0
  128. package/dist/environment.js.map +1 -0
  129. package/dist/events/TypedCustomEvent.d.ts +11 -0
  130. package/dist/events/TypedCustomEvent.d.ts.map +1 -0
  131. package/dist/events/TypedCustomEvent.js +6 -0
  132. package/dist/events/TypedCustomEvent.js.map +1 -0
  133. package/dist/events/TypedEventTarget.d.ts +26 -0
  134. package/dist/events/TypedEventTarget.d.ts.map +1 -0
  135. package/dist/events/TypedEventTarget.js +42 -0
  136. package/dist/events/TypedEventTarget.js.map +1 -0
  137. package/dist/events/scan.d.ts +18 -0
  138. package/dist/events/scan.d.ts.map +1 -0
  139. package/dist/events/scan.js +29 -0
  140. package/dist/events/scan.js.map +1 -0
  141. package/dist/extensions/RemoteApiServices.d.ts +88 -0
  142. package/dist/extensions/RemoteApiServices.d.ts.map +1 -0
  143. package/dist/extensions/RemoteApiServices.js +155 -0
  144. package/dist/extensions/RemoteApiServices.js.map +1 -0
  145. package/dist/extensions/UriHandlers.d.ts +48 -0
  146. package/dist/extensions/UriHandlers.d.ts.map +1 -0
  147. package/dist/extensions/UriHandlers.js +34 -0
  148. package/dist/extensions/UriHandlers.js.map +1 -0
  149. package/dist/extensions/extensionRequestContext.d.ts +5 -0
  150. package/dist/extensions/extensionRequestContext.d.ts.map +1 -0
  151. package/dist/extensions/extensionRequestContext.js +11 -0
  152. package/dist/extensions/extensionRequestContext.js.map +1 -0
  153. package/dist/extensions/uriHandlersRegister.d.ts +22 -0
  154. package/dist/extensions/uriHandlersRegister.d.ts.map +1 -0
  155. package/dist/extensions/uriHandlersRegister.js +61 -0
  156. package/dist/extensions/uriHandlersRegister.js.map +1 -0
  157. package/dist/generated-proto/blizzard/cameraKitEvents.d.ts +9528 -0
  158. package/dist/generated-proto/blizzard/cameraKitEvents.d.ts.map +1 -0
  159. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts +80 -0
  160. package/dist/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts.map +1 -0
  161. package/dist/generated-proto/pb_schema/camera_kit/v3/export.d.ts +529 -0
  162. package/dist/generated-proto/pb_schema/camera_kit/v3/export.d.ts.map +1 -0
  163. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts +35 -0
  164. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts.map +1 -0
  165. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js +42 -0
  166. package/dist/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js.map +1 -0
  167. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts +30 -0
  168. package/dist/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts.map +1 -0
  169. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts +86 -0
  170. package/dist/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts.map +1 -0
  171. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.d.ts +385 -0
  172. package/dist/generated-proto/pb_schema/camera_kit/v3/lens.d.ts.map +1 -0
  173. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts +179 -0
  174. package/dist/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts.map +1 -0
  175. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts +57 -0
  176. package/dist/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts.map +1 -0
  177. package/dist/generated-proto/pb_schema/camera_kit/v3/service.d.ts +2512 -0
  178. package/dist/generated-proto/pb_schema/camera_kit/v3/service.d.ts.map +1 -0
  179. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.d.ts +79 -0
  180. package/dist/generated-proto/pb_schema/cdp/cof/benchmark.d.ts.map +1 -0
  181. package/dist/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts +51 -0
  182. package/dist/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts.map +1 -0
  183. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts +25575 -0
  184. package/dist/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts.map +1 -0
  185. package/dist/generated-proto/pb_schema/cdp/cof/config_request.d.ts +280 -0
  186. package/dist/generated-proto/pb_schema/cdp/cof/config_request.d.ts.map +1 -0
  187. package/dist/generated-proto/pb_schema/cdp/cof/config_response.d.ts +3726 -0
  188. package/dist/generated-proto/pb_schema/cdp/cof/config_response.d.ts.map +1 -0
  189. package/dist/generated-proto/pb_schema/cdp/cof/config_result.d.ts +10224 -0
  190. package/dist/generated-proto/pb_schema/cdp/cof/config_result.d.ts.map +1 -0
  191. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.d.ts +94 -0
  192. package/dist/generated-proto/pb_schema/cdp/cof/debug_info.d.ts.map +1 -0
  193. package/dist/generated-proto/pb_schema/cdp/cof/namespace.d.ts +9 -0
  194. package/dist/generated-proto/pb_schema/cdp/cof/namespace.d.ts.map +1 -0
  195. package/dist/generated-proto/pb_schema/common/ruid.d.ts +52 -0
  196. package/dist/generated-proto/pb_schema/common/ruid.d.ts.map +1 -0
  197. package/dist/generated-proto/pb_schema/common/value.d.ts +145 -0
  198. package/dist/generated-proto/pb_schema/common/value.d.ts.map +1 -0
  199. package/dist/generated-proto/pb_schema/google/api/annotations.d.ts +2 -0
  200. package/dist/generated-proto/pb_schema/google/api/annotations.d.ts.map +1 -0
  201. package/dist/generated-proto/pb_schema/google/api/annotations.js +8 -0
  202. package/dist/generated-proto/pb_schema/google/api/annotations.js.map +1 -0
  203. package/dist/generated-proto/pb_schema/google/api/http.d.ts +3631 -0
  204. package/dist/generated-proto/pb_schema/google/api/http.d.ts.map +1 -0
  205. package/dist/generated-proto/pb_schema/google/api/http.js +193 -0
  206. package/dist/generated-proto/pb_schema/google/api/http.js.map +1 -0
  207. package/dist/generated-proto/pb_schema/google/protobuf/any.d.ts +33 -0
  208. package/dist/generated-proto/pb_schema/google/protobuf/any.d.ts.map +1 -0
  209. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.d.ts +50897 -0
  210. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.d.ts.map +1 -0
  211. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.js +1818 -0
  212. package/dist/generated-proto/pb_schema/google/protobuf/descriptor.js.map +1 -0
  213. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.d.ts +33 -0
  214. package/dist/generated-proto/pb_schema/google/protobuf/timestamp.d.ts.map +1 -0
  215. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.d.ts +120 -0
  216. package/dist/generated-proto/pb_schema/google/protobuf/wrappers.d.ts.map +1 -0
  217. package/dist/generated-proto/pb_schema/lenses/geocircle.d.ts +43 -0
  218. package/dist/generated-proto/pb_schema/lenses/geocircle.d.ts.map +1 -0
  219. package/dist/generated-proto/pb_schema/lenses/geopoint.d.ts +33 -0
  220. package/dist/generated-proto/pb_schema/lenses/geopoint.d.ts.map +1 -0
  221. package/dist/generated-proto/pb_schema/lenses/launch_params.d.ts +30 -0
  222. package/dist/generated-proto/pb_schema/lenses/launch_params.d.ts.map +1 -0
  223. package/dist/generated-proto/pb_schema/lenses/launchdata.d.ts +397 -0
  224. package/dist/generated-proto/pb_schema/lenses/launchdata.d.ts.map +1 -0
  225. package/dist/generated-proto/pb_schema/lenses/lures.d.ts +112 -0
  226. package/dist/generated-proto/pb_schema/lenses/lures.d.ts.map +1 -0
  227. package/dist/generated-proto/pb_schema/lenses/persistent_store.d.ts +30 -0
  228. package/dist/generated-proto/pb_schema/lenses/persistent_store.d.ts.map +1 -0
  229. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts +570 -0
  230. package/dist/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts.map +1 -0
  231. package/dist/generated-proto/pb_schema/lenses/snappable.d.ts +903 -0
  232. package/dist/generated-proto/pb_schema/lenses/snappable.d.ts.map +1 -0
  233. package/dist/generated-proto/pb_schema/lenses/user_data.d.ts +230 -0
  234. package/dist/generated-proto/pb_schema/lenses/user_data.d.ts.map +1 -0
  235. package/dist/handlers/HandlerChainBuilder.d.ts +111 -0
  236. package/dist/handlers/HandlerChainBuilder.d.ts.map +1 -0
  237. package/dist/handlers/HandlerChainBuilder.js +55 -0
  238. package/dist/handlers/HandlerChainBuilder.js.map +1 -0
  239. package/dist/handlers/arrayBufferParsingHandler.d.ts +11 -0
  240. package/dist/handlers/arrayBufferParsingHandler.d.ts.map +1 -0
  241. package/dist/handlers/arrayBufferParsingHandler.js +13 -0
  242. package/dist/handlers/arrayBufferParsingHandler.js.map +1 -0
  243. package/dist/handlers/batchingHandler.d.ts +32 -0
  244. package/dist/handlers/batchingHandler.d.ts.map +1 -0
  245. package/dist/handlers/batchingHandler.js +45 -0
  246. package/dist/handlers/batchingHandler.js.map +1 -0
  247. package/dist/handlers/cameraKitServiceFetchHandlerFactory.d.ts +13 -0
  248. package/dist/handlers/cameraKitServiceFetchHandlerFactory.d.ts.map +1 -0
  249. package/dist/handlers/cameraKitServiceFetchHandlerFactory.js +14 -0
  250. package/dist/handlers/cameraKitServiceFetchHandlerFactory.js.map +1 -0
  251. package/dist/handlers/debugHandler.d.ts +9 -0
  252. package/dist/handlers/debugHandler.d.ts.map +1 -0
  253. package/dist/handlers/debugHandler.js +18 -0
  254. package/dist/handlers/debugHandler.js.map +1 -0
  255. package/dist/handlers/defaultFetchHandler.d.ts +16 -0
  256. package/dist/handlers/defaultFetchHandler.d.ts.map +1 -0
  257. package/dist/handlers/defaultFetchHandler.js +25 -0
  258. package/dist/handlers/defaultFetchHandler.js.map +1 -0
  259. package/dist/handlers/headersModifyingFetchHandler.d.ts +9 -0
  260. package/dist/handlers/headersModifyingFetchHandler.d.ts.map +1 -0
  261. package/dist/handlers/headersModifyingFetchHandler.js +10 -0
  262. package/dist/handlers/headersModifyingFetchHandler.js.map +1 -0
  263. package/dist/handlers/mappingHandler.d.ts +20 -0
  264. package/dist/handlers/mappingHandler.d.ts.map +1 -0
  265. package/dist/handlers/mappingHandler.js +44 -0
  266. package/dist/handlers/mappingHandler.js.map +1 -0
  267. package/dist/handlers/noCorsRetryingFetchHandler.d.ts +49 -0
  268. package/dist/handlers/noCorsRetryingFetchHandler.d.ts.map +1 -0
  269. package/dist/handlers/noCorsRetryingFetchHandler.js +33 -0
  270. package/dist/handlers/noCorsRetryingFetchHandler.js.map +1 -0
  271. package/dist/handlers/persistingHandler.d.ts +15 -0
  272. package/dist/handlers/persistingHandler.d.ts.map +1 -0
  273. package/dist/handlers/persistingHandler.js +43 -0
  274. package/dist/handlers/persistingHandler.js.map +1 -0
  275. package/dist/handlers/rateLimitingHandler.d.ts +25 -0
  276. package/dist/handlers/rateLimitingHandler.d.ts.map +1 -0
  277. package/dist/handlers/rateLimitingHandler.js +21 -0
  278. package/dist/handlers/rateLimitingHandler.js.map +1 -0
  279. package/dist/handlers/requestStateEmittingHandler.d.ts +42 -0
  280. package/dist/handlers/requestStateEmittingHandler.d.ts.map +1 -0
  281. package/dist/handlers/requestStateEmittingHandler.js +42 -0
  282. package/dist/handlers/requestStateEmittingHandler.js.map +1 -0
  283. package/dist/handlers/responseCachingHandler.d.ts +35 -0
  284. package/dist/handlers/responseCachingHandler.d.ts.map +1 -0
  285. package/dist/handlers/responseCachingHandler.js +83 -0
  286. package/dist/handlers/responseCachingHandler.js.map +1 -0
  287. package/dist/handlers/retryingHandler.d.ts +49 -0
  288. package/dist/handlers/retryingHandler.d.ts.map +1 -0
  289. package/dist/handlers/retryingHandler.js +62 -0
  290. package/dist/handlers/retryingHandler.js.map +1 -0
  291. package/dist/handlers/timeoutHandler.d.ts +19 -0
  292. package/dist/handlers/timeoutHandler.d.ts.map +1 -0
  293. package/dist/handlers/timeoutHandler.js +20 -0
  294. package/dist/handlers/timeoutHandler.js.map +1 -0
  295. package/dist/handlers/utils.d.ts +13 -0
  296. package/dist/handlers/utils.d.ts.map +1 -0
  297. package/dist/handlers/utils.js +7 -0
  298. package/dist/handlers/utils.js.map +1 -0
  299. package/dist/index.d.ts +43 -0
  300. package/dist/index.d.ts.map +1 -0
  301. package/dist/index.js +35 -0
  302. package/dist/index.js.map +1 -0
  303. package/dist/legal/legalPrompt.d.ts +21 -0
  304. package/dist/legal/legalPrompt.d.ts.map +1 -0
  305. package/dist/legal/legalPrompt.js +130 -0
  306. package/dist/legal/legalPrompt.js.map +1 -0
  307. package/dist/legal/legalState.d.ts +51 -0
  308. package/dist/legal/legalState.d.ts.map +1 -0
  309. package/dist/legal/legalState.js +100 -0
  310. package/dist/legal/legalState.js.map +1 -0
  311. package/dist/lens/Lens.d.ts +117 -0
  312. package/dist/lens/Lens.d.ts.map +1 -0
  313. package/dist/lens/Lens.js +74 -0
  314. package/dist/lens/Lens.js.map +1 -0
  315. package/dist/lens/LensLaunchData.d.ts +45 -0
  316. package/dist/lens/LensLaunchData.d.ts.map +1 -0
  317. package/dist/lens/LensLaunchData.js +83 -0
  318. package/dist/lens/LensLaunchData.js.map +1 -0
  319. package/dist/lens/LensPersistenceStore.d.ts +8 -0
  320. package/dist/lens/LensPersistenceStore.d.ts.map +1 -0
  321. package/dist/lens/LensPersistenceStore.js.map +1 -0
  322. package/dist/lens/LensRepository.d.ts +133 -0
  323. package/dist/lens/LensRepository.d.ts.map +1 -0
  324. package/dist/lens/LensRepository.js +147 -0
  325. package/dist/lens/LensRepository.js.map +1 -0
  326. package/dist/lens/LensSource.d.ts +44 -0
  327. package/dist/lens/LensSource.d.ts.map +1 -0
  328. package/dist/lens/LensSource.js +18 -0
  329. package/dist/lens/LensSource.js.map +1 -0
  330. package/dist/lens/assets/LensAssetRepository.d.ts +101 -0
  331. package/dist/lens/assets/LensAssetRepository.d.ts.map +1 -0
  332. package/dist/lens/assets/LensAssetRepository.js +139 -0
  333. package/dist/lens/assets/LensAssetRepository.js.map +1 -0
  334. package/dist/lens/assets/LensAssetsProvider.d.ts +28 -0
  335. package/dist/lens/assets/LensAssetsProvider.d.ts.map +1 -0
  336. package/dist/lens/assets/LensAssetsProvider.js +52 -0
  337. package/dist/lens/assets/LensAssetsProvider.js.map +1 -0
  338. package/dist/lens/assets/deviceDependentAssetLoader.d.ts +12 -0
  339. package/dist/lens/assets/deviceDependentAssetLoader.d.ts.map +1 -0
  340. package/dist/lens/assets/deviceDependentAssetLoader.js +49 -0
  341. package/dist/lens/assets/deviceDependentAssetLoader.js.map +1 -0
  342. package/dist/lens/assets/remoteMediaAssetLoaderFactory.d.ts +11 -0
  343. package/dist/lens/assets/remoteMediaAssetLoaderFactory.d.ts.map +1 -0
  344. package/dist/lens/assets/remoteMediaAssetLoaderFactory.js +18 -0
  345. package/dist/lens/assets/remoteMediaAssetLoaderFactory.js.map +1 -0
  346. package/dist/lens/assets/staticAssetLoader.d.ts +11 -0
  347. package/dist/lens/assets/staticAssetLoader.d.ts.map +1 -0
  348. package/dist/lens/assets/staticAssetLoader.js +21 -0
  349. package/dist/lens/assets/staticAssetLoader.js.map +1 -0
  350. package/dist/lens/cameraKitLensSource.d.ts +18 -0
  351. package/dist/lens/cameraKitLensSource.d.ts.map +1 -0
  352. package/dist/lens/cameraKitLensSource.js +93 -0
  353. package/dist/lens/cameraKitLensSource.js.map +1 -0
  354. package/dist/lens/fetchWatermarkLens.d.ts +12 -0
  355. package/dist/lens/fetchWatermarkLens.d.ts.map +1 -0
  356. package/dist/lens/fetchWatermarkLens.js +23 -0
  357. package/dist/lens/fetchWatermarkLens.js.map +1 -0
  358. package/dist/lens-client-interface/exif.d.ts +21 -0
  359. package/dist/lens-client-interface/exif.d.ts.map +1 -0
  360. package/dist/lens-client-interface/exif.js +51 -0
  361. package/dist/lens-client-interface/exif.js.map +1 -0
  362. package/dist/lens-client-interface/imagePicker.d.ts +9 -0
  363. package/dist/lens-client-interface/imagePicker.d.ts.map +1 -0
  364. package/dist/lens-client-interface/imagePicker.js +113 -0
  365. package/dist/lens-client-interface/imagePicker.js.map +1 -0
  366. package/dist/lens-client-interface/lensClientInterface.d.ts +14 -0
  367. package/dist/lens-client-interface/lensClientInterface.d.ts.map +1 -0
  368. package/dist/lens-client-interface/lensClientInterface.js +22 -0
  369. package/dist/lens-client-interface/lensClientInterface.js.map +1 -0
  370. package/dist/lens-core-module/generated-types.d.ts +470 -0
  371. package/dist/lens-core-module/generated-types.d.ts.map +1 -0
  372. package/dist/lens-core-module/lensCore.d.ts +59 -0
  373. package/dist/lens-core-module/lensCore.d.ts.map +1 -0
  374. package/dist/lens-core-module/lensCore.js +95 -0
  375. package/dist/lens-core-module/lensCore.js.map +1 -0
  376. package/dist/lens-core-module/lensCoreError.d.ts +16 -0
  377. package/dist/lens-core-module/lensCoreError.d.ts.map +1 -0
  378. package/dist/lens-core-module/lensCoreError.js +35 -0
  379. package/dist/lens-core-module/lensCoreError.js.map +1 -0
  380. package/dist/lens-core-module/loader/bootstrapURLs.d.ts +13 -0
  381. package/dist/lens-core-module/loader/bootstrapURLs.d.ts.map +1 -0
  382. package/dist/lens-core-module/loader/bootstrapURLs.js +32 -0
  383. package/dist/lens-core-module/loader/bootstrapURLs.js.map +1 -0
  384. package/dist/lens-core-module/loader/lensCoreFactory.d.ts +18 -0
  385. package/dist/lens-core-module/loader/lensCoreFactory.d.ts.map +1 -0
  386. package/dist/lens-core-module/loader/lensCoreFactory.js +54 -0
  387. package/dist/lens-core-module/loader/lensCoreFactory.js.map +1 -0
  388. package/dist/lensCoreWasmVersions.d.ts +7 -0
  389. package/dist/lensCoreWasmVersions.d.ts.map +1 -0
  390. package/dist/lensCoreWasmVersions.js +6 -0
  391. package/dist/lensCoreWasmVersions.js.map +1 -0
  392. package/dist/logger/errorLoggingDecorator.d.ts +10 -0
  393. package/dist/logger/errorLoggingDecorator.d.ts.map +1 -0
  394. package/dist/logger/errorLoggingDecorator.js +19 -0
  395. package/dist/logger/errorLoggingDecorator.js.map +1 -0
  396. package/dist/logger/logEntries.d.ts +16 -0
  397. package/dist/logger/logEntries.d.ts.map +1 -0
  398. package/dist/logger/logEntries.js +4 -0
  399. package/dist/logger/logEntries.js.map +1 -0
  400. package/dist/logger/logger.d.ts +41 -0
  401. package/dist/logger/logger.d.ts.map +1 -0
  402. package/dist/logger/logger.js +27 -0
  403. package/dist/logger/logger.js.map +1 -0
  404. package/dist/logger/registerLogEntriesSubscriber.d.ts +15 -0
  405. package/dist/logger/registerLogEntriesSubscriber.d.ts.map +1 -0
  406. package/dist/logger/registerLogEntriesSubscriber.js +27 -0
  407. package/dist/logger/registerLogEntriesSubscriber.js.map +1 -0
  408. package/dist/media-sources/CameraKitSource.d.ts +130 -0
  409. package/dist/media-sources/CameraKitSource.d.ts.map +1 -0
  410. package/dist/media-sources/CameraKitSource.js +96 -0
  411. package/dist/media-sources/CameraKitSource.js.map +1 -0
  412. package/dist/media-sources/FunctionSource.d.ts +42 -0
  413. package/dist/media-sources/FunctionSource.d.ts.map +1 -0
  414. package/dist/media-sources/FunctionSource.js +105 -0
  415. package/dist/media-sources/FunctionSource.js.map +1 -0
  416. package/dist/media-sources/ImageSource.d.ts +13 -0
  417. package/dist/media-sources/ImageSource.d.ts.map +1 -0
  418. package/dist/media-sources/ImageSource.js +7 -0
  419. package/dist/media-sources/ImageSource.js.map +1 -0
  420. package/dist/media-sources/MediaStreamSource.d.ts +31 -0
  421. package/dist/media-sources/MediaStreamSource.d.ts.map +1 -0
  422. package/dist/media-sources/MediaStreamSource.js +140 -0
  423. package/dist/media-sources/MediaStreamSource.js.map +1 -0
  424. package/dist/media-sources/VideoSource.d.ts +27 -0
  425. package/dist/media-sources/VideoSource.d.ts.map +1 -0
  426. package/dist/media-sources/VideoSource.js +12 -0
  427. package/dist/media-sources/VideoSource.js.map +1 -0
  428. package/dist/metrics/businessEventsReporter.d.ts +40 -0
  429. package/dist/metrics/businessEventsReporter.d.ts.map +1 -0
  430. package/dist/metrics/businessEventsReporter.js +156 -0
  431. package/dist/metrics/businessEventsReporter.js.map +1 -0
  432. package/dist/metrics/metricsEventTarget.d.ts +42 -0
  433. package/dist/metrics/metricsEventTarget.d.ts.map +1 -0
  434. package/dist/metrics/metricsEventTarget.js +4 -0
  435. package/dist/metrics/metricsEventTarget.js.map +1 -0
  436. package/dist/metrics/operational/Count.d.ts +21 -0
  437. package/dist/metrics/operational/Count.d.ts.map +1 -0
  438. package/dist/metrics/operational/Count.js +31 -0
  439. package/dist/metrics/operational/Count.js.map +1 -0
  440. package/dist/metrics/operational/Histogram.d.ts +19 -0
  441. package/dist/metrics/operational/Histogram.d.ts.map +1 -0
  442. package/dist/metrics/operational/Histogram.js +26 -0
  443. package/dist/metrics/operational/Histogram.js.map +1 -0
  444. package/dist/metrics/operational/Metric.d.ts +21 -0
  445. package/dist/metrics/operational/Metric.d.ts.map +1 -0
  446. package/dist/metrics/operational/Metric.js +23 -0
  447. package/dist/metrics/operational/Metric.js.map +1 -0
  448. package/dist/metrics/operational/Timer.d.ts +96 -0
  449. package/dist/metrics/operational/Timer.d.ts.map +1 -0
  450. package/dist/metrics/operational/Timer.js +64 -0
  451. package/dist/metrics/operational/Timer.js.map +1 -0
  452. package/dist/metrics/reporters/reportBenchmarks.d.ts +11 -0
  453. package/dist/metrics/reporters/reportBenchmarks.d.ts.map +1 -0
  454. package/dist/metrics/reporters/reportBenchmarks.js +27 -0
  455. package/dist/metrics/reporters/reportBenchmarks.js.map +1 -0
  456. package/dist/metrics/reporters/reportGlobalException.d.ts +27 -0
  457. package/dist/metrics/reporters/reportGlobalException.d.ts.map +1 -0
  458. package/dist/metrics/reporters/reportGlobalException.js +82 -0
  459. package/dist/metrics/reporters/reportGlobalException.js.map +1 -0
  460. package/dist/metrics/reporters/reportHttpMetrics.d.ts +11 -0
  461. package/dist/metrics/reporters/reportHttpMetrics.d.ts.map +1 -0
  462. package/dist/metrics/reporters/reportHttpMetrics.js +107 -0
  463. package/dist/metrics/reporters/reportHttpMetrics.js.map +1 -0
  464. package/dist/metrics/reporters/reportLegalState.d.ts +16 -0
  465. package/dist/metrics/reporters/reportLegalState.d.ts.map +1 -0
  466. package/dist/metrics/reporters/reportLegalState.js +29 -0
  467. package/dist/metrics/reporters/reportLegalState.js.map +1 -0
  468. package/dist/metrics/reporters/reportLensAndAssetDownload.d.ts +39 -0
  469. package/dist/metrics/reporters/reportLensAndAssetDownload.d.ts.map +1 -0
  470. package/dist/metrics/reporters/reportLensAndAssetDownload.js +91 -0
  471. package/dist/metrics/reporters/reportLensAndAssetDownload.js.map +1 -0
  472. package/dist/metrics/reporters/reportLensValidationFailed.d.ts +21 -0
  473. package/dist/metrics/reporters/reportLensValidationFailed.d.ts.map +1 -0
  474. package/dist/metrics/reporters/reportLensValidationFailed.js +21 -0
  475. package/dist/metrics/reporters/reportLensValidationFailed.js.map +1 -0
  476. package/dist/metrics/reporters/reportLensView.d.ts +37 -0
  477. package/dist/metrics/reporters/reportLensView.d.ts.map +1 -0
  478. package/dist/metrics/reporters/reportLensView.js +102 -0
  479. package/dist/metrics/reporters/reportLensView.js.map +1 -0
  480. package/dist/metrics/reporters/reportLensWait.d.ts +33 -0
  481. package/dist/metrics/reporters/reportLensWait.d.ts.map +1 -0
  482. package/dist/metrics/reporters/reportLensWait.js +35 -0
  483. package/dist/metrics/reporters/reportLensWait.js.map +1 -0
  484. package/dist/metrics/reporters/reportPlatformCapabilities.d.ts +13 -0
  485. package/dist/metrics/reporters/reportPlatformCapabilities.d.ts.map +1 -0
  486. package/dist/metrics/reporters/reportPlatformCapabilities.js +13 -0
  487. package/dist/metrics/reporters/reportPlatformCapabilities.js.map +1 -0
  488. package/dist/metrics/reporters/reportSessionException.d.ts +18 -0
  489. package/dist/metrics/reporters/reportSessionException.d.ts.map +1 -0
  490. package/dist/metrics/reporters/reportSessionException.js +7 -0
  491. package/dist/metrics/reporters/reportSessionException.js.map +1 -0
  492. package/dist/metrics/reporters/reportUserSession.d.ts +15 -0
  493. package/dist/metrics/reporters/reportUserSession.d.ts.map +1 -0
  494. package/dist/metrics/reporters/reportUserSession.js +61 -0
  495. package/dist/metrics/reporters/reportUserSession.js.map +1 -0
  496. package/dist/metrics/reporters/reporters.d.ts +47 -0
  497. package/dist/metrics/reporters/reporters.d.ts.map +1 -0
  498. package/dist/metrics/reporters/reporters.js +24 -0
  499. package/dist/metrics/reporters/reporters.js.map +1 -0
  500. package/dist/namedErrors.d.ts +131 -0
  501. package/dist/namedErrors.d.ts.map +1 -0
  502. package/dist/namedErrors.js +29 -0
  503. package/dist/namedErrors.js.map +1 -0
  504. package/dist/observable-operators/debounceTimeAfter.d.ts +26 -0
  505. package/dist/observable-operators/debounceTimeAfter.d.ts.map +1 -0
  506. package/dist/observable-operators/debounceTimeAfter.js +22 -0
  507. package/dist/observable-operators/debounceTimeAfter.js.map +1 -0
  508. package/dist/observable-operators/unsubscribed.d.ts +13 -0
  509. package/dist/observable-operators/unsubscribed.d.ts.map +1 -0
  510. package/dist/observable-operators/unsubscribed.js +15 -0
  511. package/dist/observable-operators/unsubscribed.js.map +1 -0
  512. package/dist/persistence/ExpiringPersistence.d.ts +22 -0
  513. package/dist/persistence/ExpiringPersistence.d.ts.map +1 -0
  514. package/dist/persistence/ExpiringPersistence.js +64 -0
  515. package/dist/persistence/ExpiringPersistence.js.map +1 -0
  516. package/dist/persistence/IndexedDBPersistence.d.ts +48 -0
  517. package/dist/persistence/IndexedDBPersistence.d.ts.map +1 -0
  518. package/dist/persistence/IndexedDBPersistence.js +127 -0
  519. package/dist/persistence/IndexedDBPersistence.js.map +1 -0
  520. package/dist/persistence/Persistence.d.ts +26 -0
  521. package/dist/persistence/Persistence.d.ts.map +1 -0
  522. package/dist/persistence/Persistence.js +4 -0
  523. package/dist/persistence/Persistence.js.map +1 -0
  524. package/dist/platform/assertPlatformSupported.d.ts +5 -0
  525. package/dist/platform/assertPlatformSupported.d.ts.map +1 -0
  526. package/dist/platform/assertPlatformSupported.js +12 -0
  527. package/dist/platform/assertPlatformSupported.js.map +1 -0
  528. package/dist/platform/cameraKitUserAgent.d.ts +3 -0
  529. package/dist/platform/cameraKitUserAgent.d.ts.map +1 -0
  530. package/dist/platform/cameraKitUserAgent.js +13 -0
  531. package/dist/platform/cameraKitUserAgent.js.map +1 -0
  532. package/dist/platform/platformCapabilities.d.ts +58 -0
  533. package/dist/platform/platformCapabilities.d.ts.map +1 -0
  534. package/dist/platform/platformCapabilities.js +98 -0
  535. package/dist/platform/platformCapabilities.js.map +1 -0
  536. package/dist/platform/platformInfo.d.ts +44 -0
  537. package/dist/platform/platformInfo.d.ts.map +1 -0
  538. package/dist/platform/platformInfo.js +156 -0
  539. package/dist/platform/platformInfo.js.map +1 -0
  540. package/dist/remote-configuration/cofHandler.d.ts +30 -0
  541. package/dist/remote-configuration/cofHandler.d.ts.map +1 -0
  542. package/dist/remote-configuration/cofHandler.js +83 -0
  543. package/dist/remote-configuration/cofHandler.js.map +1 -0
  544. package/dist/remote-configuration/preloadConfiguration.d.ts +8 -0
  545. package/dist/remote-configuration/preloadConfiguration.d.ts.map +1 -0
  546. package/dist/remote-configuration/preloadConfiguration.js.map +1 -0
  547. package/dist/remote-configuration/remoteConfiguration.d.ts +36 -0
  548. package/dist/remote-configuration/remoteConfiguration.d.ts.map +1 -0
  549. package/dist/remote-configuration/remoteConfiguration.js +59 -0
  550. package/dist/remote-configuration/remoteConfiguration.js.map +1 -0
  551. package/dist/session/CameraKitSession.d.ts +257 -0
  552. package/dist/session/CameraKitSession.d.ts.map +1 -0
  553. package/dist/session/CameraKitSession.js +242 -0
  554. package/dist/session/CameraKitSession.js.map +1 -0
  555. package/dist/session/CameraKitSessionEvents.d.ts +29 -0
  556. package/dist/session/CameraKitSessionEvents.d.ts.map +1 -0
  557. package/dist/session/CameraKitSessionEvents.js +15 -0
  558. package/dist/session/CameraKitSessionEvents.js.map +1 -0
  559. package/dist/session/LensKeyboard.d.ts +90 -0
  560. package/dist/session/LensKeyboard.d.ts.map +1 -0
  561. package/dist/session/LensKeyboard.js +89 -0
  562. package/dist/session/LensKeyboard.js.map +1 -0
  563. package/dist/session/LensPerformanceMeasurement.d.ts +58 -0
  564. package/dist/session/LensPerformanceMeasurement.d.ts.map +1 -0
  565. package/dist/session/LensPerformanceMeasurement.js +63 -0
  566. package/dist/session/LensPerformanceMeasurement.js.map +1 -0
  567. package/dist/session/LensPerformanceMetrics.d.ts +32 -0
  568. package/dist/session/LensPerformanceMetrics.d.ts.map +1 -0
  569. package/dist/session/LensPerformanceMetrics.js +39 -0
  570. package/dist/session/LensPerformanceMetrics.js.map +1 -0
  571. package/dist/session/lensState.d.ts +32 -0
  572. package/dist/session/lensState.d.ts.map +1 -0
  573. package/dist/session/lensState.js +194 -0
  574. package/dist/session/lensState.js.map +1 -0
  575. package/dist/session/sessionState.d.ts +11 -0
  576. package/dist/session/sessionState.d.ts.map +1 -0
  577. package/dist/session/sessionState.js.map +1 -0
  578. package/dist/transforms/Transform2D.d.ts +27 -0
  579. package/dist/transforms/Transform2D.d.ts.map +1 -0
  580. package/dist/transforms/Transform2D.js +13 -0
  581. package/dist/transforms/Transform2D.js.map +1 -0
  582. package/dist/utils.d.ts +4 -0
  583. package/dist/utils.d.ts.map +1 -0
  584. package/docs/html/assets/navigation.js +1 -1
  585. package/docs/html/assets/search.js +1 -1
  586. package/docs/html/classes/CameraKit.html +2 -2
  587. package/docs/html/classes/CameraKitSession.html +2 -2
  588. package/docs/html/classes/CameraKitSource.html +2 -2
  589. package/docs/html/classes/LensPerformanceMeasurement.html +2 -2
  590. package/docs/html/classes/LensPerformanceMetrics.html +2 -2
  591. package/docs/html/classes/LensRepository.html +3 -3
  592. package/docs/html/classes/Transform2D.html +2 -2
  593. package/docs/html/classes/TypedCustomEvent.html +2 -2
  594. package/docs/html/classes/TypedEventTarget.html +2 -2
  595. package/docs/html/enums/Lens_CameraFacing.html +2 -2
  596. package/docs/html/functions/ConcatInjectable.html +2 -2
  597. package/docs/html/functions/Injectable.html +2 -2
  598. package/docs/html/functions/bootstrapCameraKit.html +2 -2
  599. package/docs/html/functions/createExtension.html +2 -2
  600. package/docs/html/functions/createImageSource.html +2 -2
  601. package/docs/html/functions/createMediaStreamSource.html +2 -2
  602. package/docs/html/functions/createVideoSource.html +2 -2
  603. package/docs/html/functions/estimateLensPerformance.html +2 -2
  604. package/docs/html/functions/lensSourcesFactory.html +2 -2
  605. package/docs/html/functions/remoteApiServicesFactory.html +2 -2
  606. package/docs/html/hierarchy.html +1 -1
  607. package/docs/html/index.html +3 -3
  608. package/docs/html/interfaces/BitmojiUserInfo.html +3 -0
  609. package/docs/html/interfaces/CameraKitBootstrapConfiguration.html +2 -2
  610. package/docs/html/interfaces/CameraKitDeviceOptions.html +2 -2
  611. package/docs/html/interfaces/CameraKitSourceInfo.html +2 -2
  612. package/docs/html/interfaces/CameraKitSourceSubscriber.html +2 -2
  613. package/docs/html/interfaces/ComputedFrameMetrics.html +2 -2
  614. package/docs/html/interfaces/CreateSessionOptions.html +2 -2
  615. package/docs/html/interfaces/EstimatedLensPerformance.html +2 -2
  616. package/docs/html/interfaces/FriendUserInfo.html +4 -0
  617. package/docs/html/interfaces/FunctionSourceOptions.html +2 -2
  618. package/docs/html/interfaces/Lens.html +2 -2
  619. package/docs/html/interfaces/LensCreator.html +2 -2
  620. package/docs/html/interfaces/LensLaunchData.html +3 -3
  621. package/docs/html/interfaces/LensSource.html +2 -2
  622. package/docs/html/interfaces/LensUserData.html +10 -0
  623. package/docs/html/interfaces/LoadAssetRequest.html +2 -2
  624. package/docs/html/interfaces/MediaStreamSourceOptions.html +2 -2
  625. package/docs/html/interfaces/Preview.html +2 -2
  626. package/docs/html/interfaces/RemoteApiRequest.html +2 -2
  627. package/docs/html/interfaces/RemoteApiResponse.html +4 -4
  628. package/docs/html/interfaces/RemoteApiService.html +3 -3
  629. package/docs/html/interfaces/Snapcode.html +2 -2
  630. package/docs/html/interfaces/UriCancelRequest.html +2 -2
  631. package/docs/html/interfaces/UriRequest.html +2 -2
  632. package/docs/html/interfaces/UriResponse.html +2 -2
  633. package/docs/html/interfaces/VideoSourceOptions.html +2 -2
  634. package/docs/html/modules.html +7 -3
  635. package/docs/html/types/ArgumentValidationError.html +2 -0
  636. package/docs/html/types/AssetLoader.html +2 -2
  637. package/docs/html/types/AssetResponse.html +1 -1
  638. package/docs/html/types/AssetTiming.html +2 -2
  639. package/docs/html/types/BenchmarkError.html +1 -1
  640. package/docs/html/types/BootstrapError.html +2 -2
  641. package/docs/html/types/CacheKeyNotFoundError.html +1 -1
  642. package/docs/html/types/CameraKitSessionEventListener.html +2 -2
  643. package/docs/html/types/CameraKitSessionEvents.html +2 -2
  644. package/docs/html/types/CameraKitSourceError.html +1 -1
  645. package/docs/html/types/ConfigurationError.html +2 -2
  646. package/docs/html/types/FetchHandler.html +1 -1
  647. package/docs/html/types/Keyboard.html +2 -2
  648. package/docs/html/types/KeyboardEvents.html +2 -2
  649. package/docs/html/types/LegalError.html +1 -1
  650. package/docs/html/types/LensAbortError.html +2 -2
  651. package/docs/html/types/LensAssetError.html +2 -2
  652. package/docs/html/types/LensContentValidationError.html +1 -1
  653. package/docs/html/types/LensError.html +1 -1
  654. package/docs/html/types/LensExecutionError.html +2 -2
  655. package/docs/html/types/LensImagePickerError.html +2 -2
  656. package/docs/html/types/LensLaunchParams.html +2 -2
  657. package/docs/html/types/LensMetricsEvents.html +2 -2
  658. package/docs/html/types/LensPerformanceCluster.html +1 -1
  659. package/docs/html/types/LensView.html +2 -2
  660. package/docs/html/types/LensWait.html +2 -2
  661. package/docs/html/types/Matrix.html +2 -2
  662. package/docs/html/types/PersistentStoreError.html +2 -2
  663. package/docs/html/types/PlatformNotSupportedError.html +2 -2
  664. package/docs/html/types/PublicContainer.html +2 -2
  665. package/docs/html/types/PublicServices.html +2 -2
  666. package/docs/html/types/RemoteApiCancelRequestHandler.html +2 -2
  667. package/docs/html/types/RemoteApiRequestHandler.html +2 -2
  668. package/docs/html/types/RemoteApiServices.html +1 -1
  669. package/docs/html/types/RemoteApiStatus.html +2 -2
  670. package/docs/html/types/RenderTarget.html +2 -2
  671. package/docs/html/types/Uri.html +1 -1
  672. package/docs/html/types/WebGLError.html +1 -1
  673. package/docs/html/types/Zodiac.html +1 -0
  674. package/docs/html/variables/extensionRequestContext.html +2 -2
  675. package/docs/md/README.md +1 -1
  676. package/docs/md/classes/CameraKit.md +1 -1
  677. package/docs/md/classes/CameraKitSession.md +1 -1
  678. package/docs/md/classes/CameraKitSource.md +1 -1
  679. package/docs/md/classes/LensPerformanceMeasurement.md +1 -1
  680. package/docs/md/classes/LensPerformanceMetrics.md +1 -1
  681. package/docs/md/classes/LensRepository.md +2 -2
  682. package/docs/md/classes/Transform2D.md +1 -1
  683. package/docs/md/classes/TypedCustomEvent.md +1 -1
  684. package/docs/md/classes/TypedEventTarget.md +1 -1
  685. package/docs/md/enums/Lens_CameraFacing.md +1 -1
  686. package/docs/md/interfaces/BitmojiUserInfo.md +22 -0
  687. package/docs/md/interfaces/CameraKitBootstrapConfiguration.md +1 -1
  688. package/docs/md/interfaces/CameraKitDeviceOptions.md +1 -1
  689. package/docs/md/interfaces/CameraKitSourceInfo.md +1 -1
  690. package/docs/md/interfaces/CameraKitSourceSubscriber.md +1 -1
  691. package/docs/md/interfaces/ComputedFrameMetrics.md +1 -1
  692. package/docs/md/interfaces/CreateSessionOptions.md +1 -1
  693. package/docs/md/interfaces/EstimatedLensPerformance.md +1 -1
  694. package/docs/md/interfaces/FriendUserInfo.md +29 -0
  695. package/docs/md/interfaces/FunctionSourceOptions.md +1 -1
  696. package/docs/md/interfaces/Lens.md +1 -1
  697. package/docs/md/interfaces/LensCreator.md +1 -1
  698. package/docs/md/interfaces/LensLaunchData.md +2 -21
  699. package/docs/md/interfaces/LensSource.md +1 -1
  700. package/docs/md/interfaces/LensUserData.md +71 -0
  701. package/docs/md/interfaces/LoadAssetRequest.md +1 -1
  702. package/docs/md/interfaces/MediaStreamSourceOptions.md +1 -1
  703. package/docs/md/interfaces/Preview.md +1 -1
  704. package/docs/md/interfaces/RemoteApiRequest.md +1 -1
  705. package/docs/md/interfaces/RemoteApiResponse.md +2 -2
  706. package/docs/md/interfaces/RemoteApiService.md +2 -2
  707. package/docs/md/interfaces/Snapcode.md +1 -1
  708. package/docs/md/interfaces/UriCancelRequest.md +1 -1
  709. package/docs/md/interfaces/UriRequest.md +1 -1
  710. package/docs/md/interfaces/UriResponse.md +1 -1
  711. package/docs/md/interfaces/VideoSourceOptions.md +1 -1
  712. package/docs/md/modules.md +23 -5
  713. package/package.json +14 -12
  714. package/docs/html/enums/UserData_Zodiac.html +0 -15
  715. package/docs/md/enums/UserData_Zodiac.md +0 -106
  716. package/lib/CameraKit.d.ts +0 -333
  717. package/lib/CameraKit.js +0 -176
  718. package/lib/CameraKit.js.map +0 -1
  719. package/lib/__tests__/data.d.ts +0 -14
  720. package/lib/__tests__/data.js +0 -69
  721. package/lib/__tests__/data.js.map +0 -1
  722. package/lib/__tests__/deferred.d.ts +0 -16
  723. package/lib/__tests__/deferred.js +0 -29
  724. package/lib/__tests__/deferred.js.map +0 -1
  725. package/lib/__tests__/jest.matchers.d.ts +0 -17
  726. package/lib/__tests__/jest.matchers.js +0 -67
  727. package/lib/__tests__/jest.matchers.js.map +0 -1
  728. package/lib/benchmark/benchmarkGflops.d.ts +0 -16
  729. package/lib/benchmark/benchmarkGflops.js +0 -129
  730. package/lib/benchmark/benchmarkGflops.js.map +0 -1
  731. package/lib/benchmark/estimateLensPerformanceCluster.d.ts +0 -33
  732. package/lib/benchmark/estimateLensPerformanceCluster.js +0 -48
  733. package/lib/benchmark/estimateLensPerformanceCluster.js.map +0 -1
  734. package/lib/benchmark/webglUtils.d.ts +0 -7
  735. package/lib/bootstrapCameraKit.d.ts +0 -96
  736. package/lib/bootstrapCameraKit.js +0 -222
  737. package/lib/bootstrapCameraKit.js.map +0 -1
  738. package/lib/clients/createTsProtoClient.d.ts +0 -40
  739. package/lib/clients/createTsProtoClient.js +0 -52
  740. package/lib/clients/createTsProtoClient.js.map +0 -1
  741. package/lib/clients/grpcHandler.d.ts +0 -26
  742. package/lib/clients/grpcHandler.js +0 -90
  743. package/lib/clients/grpcHandler.js.map +0 -1
  744. package/lib/clients/lensesClient.d.ts +0 -9
  745. package/lib/clients/lensesClient.js.map +0 -1
  746. package/lib/clients/metricsClient.d.ts +0 -26
  747. package/lib/clients/metricsClient.js +0 -120
  748. package/lib/clients/metricsClient.js.map +0 -1
  749. package/lib/common/__mocks__/loadScript.d.ts +0 -1
  750. package/lib/common/__mocks__/loadScript.js +0 -10
  751. package/lib/common/__mocks__/loadScript.js.map +0 -1
  752. package/lib/common/assertions.d.ts +0 -27
  753. package/lib/common/assertions.js +0 -39
  754. package/lib/common/assertions.js.map +0 -1
  755. package/lib/common/copyDefinedProperties.d.ts +0 -13
  756. package/lib/common/copyDefinedProperties.js +0 -16
  757. package/lib/common/copyDefinedProperties.js.map +0 -1
  758. package/lib/common/date.d.ts +0 -3
  759. package/lib/common/dialog.d.ts +0 -59
  760. package/lib/common/dialog.js +0 -160
  761. package/lib/common/dialog.js.map +0 -1
  762. package/lib/common/entries.d.ts +0 -4
  763. package/lib/common/entries.js +0 -5
  764. package/lib/common/entries.js.map +0 -1
  765. package/lib/common/errorHelpers.d.ts +0 -10
  766. package/lib/common/errorHelpers.js +0 -24
  767. package/lib/common/errorHelpers.js.map +0 -1
  768. package/lib/common/getFilename.d.ts +0 -1
  769. package/lib/common/hash.d.ts +0 -5
  770. package/lib/common/hash.js +0 -17
  771. package/lib/common/hash.js.map +0 -1
  772. package/lib/common/loadScript.d.ts +0 -6
  773. package/lib/common/loadScript.js +0 -18
  774. package/lib/common/loadScript.js.map +0 -1
  775. package/lib/common/localization.d.ts +0 -54
  776. package/lib/common/localization.js +0 -654
  777. package/lib/common/localization.js.map +0 -1
  778. package/lib/common/memoize.d.ts +0 -8
  779. package/lib/common/pageVisibility.d.ts +0 -34
  780. package/lib/common/pageVisibility.js +0 -71
  781. package/lib/common/pageVisibility.js.map +0 -1
  782. package/lib/common/result.d.ts +0 -36
  783. package/lib/common/result.js +0 -40
  784. package/lib/common/result.js.map +0 -1
  785. package/lib/common/time.d.ts +0 -2
  786. package/lib/common/typeguards.d.ts +0 -53
  787. package/lib/common/typeguards.js +0 -92
  788. package/lib/common/typeguards.js.map +0 -1
  789. package/lib/common/types.d.ts +0 -18
  790. package/lib/common/types.js.map +0 -1
  791. package/lib/common/unionBy.d.ts +0 -28
  792. package/lib/common/unionBy.js +0 -46
  793. package/lib/common/unionBy.js.map +0 -1
  794. package/lib/common/validate.d.ts +0 -14
  795. package/lib/common/validate.js +0 -112
  796. package/lib/common/validate.js.map +0 -1
  797. package/lib/configuration.d.ts +0 -101
  798. package/lib/configuration.js +0 -51
  799. package/lib/configuration.js.map +0 -1
  800. package/lib/configurationOverrides.d.ts +0 -12
  801. package/lib/configurationOverrides.js +0 -46
  802. package/lib/configurationOverrides.js.map +0 -1
  803. package/lib/dependency-injection/Container.d.ts +0 -176
  804. package/lib/dependency-injection/Container.js +0 -160
  805. package/lib/dependency-injection/Container.js.map +0 -1
  806. package/lib/dependency-injection/Injectable.d.ts +0 -95
  807. package/lib/dependency-injection/Injectable.js.map +0 -1
  808. package/lib/dependency-injection/PartialContainer.d.ts +0 -85
  809. package/lib/dependency-injection/PartialContainer.js +0 -85
  810. package/lib/dependency-injection/PartialContainer.js.map +0 -1
  811. package/lib/dependency-injection/RootServices.d.ts +0 -73
  812. package/lib/dependency-injection/RootServices.js +0 -2
  813. package/lib/dependency-injection/RootServices.js.map +0 -1
  814. package/lib/dependency-injection/types.d.ts +0 -56
  815. package/lib/dependency-injection/types.js.map +0 -1
  816. package/lib/environment.d.ts +0 -4
  817. package/lib/environment.js +0 -2
  818. package/lib/environment.js.map +0 -1
  819. package/lib/events/TypedCustomEvent.d.ts +0 -10
  820. package/lib/events/TypedCustomEvent.js +0 -11
  821. package/lib/events/TypedCustomEvent.js.map +0 -1
  822. package/lib/events/TypedEventTarget.d.ts +0 -25
  823. package/lib/events/TypedEventTarget.js +0 -57
  824. package/lib/events/TypedEventTarget.js.map +0 -1
  825. package/lib/events/scan.d.ts +0 -15
  826. package/lib/events/scan.js +0 -46
  827. package/lib/events/scan.js.map +0 -1
  828. package/lib/extensions/RemoteApiServices.d.ts +0 -101
  829. package/lib/extensions/RemoteApiServices.js +0 -203
  830. package/lib/extensions/RemoteApiServices.js.map +0 -1
  831. package/lib/extensions/UriHandlers.d.ts +0 -47
  832. package/lib/extensions/UriHandlers.js +0 -38
  833. package/lib/extensions/UriHandlers.js.map +0 -1
  834. package/lib/extensions/extensionRequestContext.d.ts +0 -4
  835. package/lib/extensions/extensionRequestContext.js +0 -14
  836. package/lib/extensions/extensionRequestContext.js.map +0 -1
  837. package/lib/extensions/uriHandlersRegister.d.ts +0 -21
  838. package/lib/extensions/uriHandlersRegister.js +0 -72
  839. package/lib/extensions/uriHandlersRegister.js.map +0 -1
  840. package/lib/generated-proto/blizzard/cameraKitEvents.d.ts +0 -9527
  841. package/lib/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts +0 -79
  842. package/lib/generated-proto/pb_schema/camera_kit/v3/export.d.ts +0 -528
  843. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts +0 -34
  844. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js +0 -43
  845. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js.map +0 -1
  846. package/lib/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts +0 -29
  847. package/lib/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts +0 -85
  848. package/lib/generated-proto/pb_schema/camera_kit/v3/lens.d.ts +0 -384
  849. package/lib/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts +0 -178
  850. package/lib/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts +0 -56
  851. package/lib/generated-proto/pb_schema/camera_kit/v3/service.d.ts +0 -2511
  852. package/lib/generated-proto/pb_schema/cdp/cof/benchmark.d.ts +0 -78
  853. package/lib/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts +0 -50
  854. package/lib/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts +0 -25574
  855. package/lib/generated-proto/pb_schema/cdp/cof/config_request.d.ts +0 -279
  856. package/lib/generated-proto/pb_schema/cdp/cof/config_response.d.ts +0 -3725
  857. package/lib/generated-proto/pb_schema/cdp/cof/config_result.d.ts +0 -10223
  858. package/lib/generated-proto/pb_schema/cdp/cof/debug_info.d.ts +0 -93
  859. package/lib/generated-proto/pb_schema/cdp/cof/namespace.d.ts +0 -8
  860. package/lib/generated-proto/pb_schema/common/ruid.d.ts +0 -51
  861. package/lib/generated-proto/pb_schema/common/value.d.ts +0 -144
  862. package/lib/generated-proto/pb_schema/google/api/annotations.d.ts +0 -1
  863. package/lib/generated-proto/pb_schema/google/api/annotations.js +0 -9
  864. package/lib/generated-proto/pb_schema/google/api/annotations.js.map +0 -1
  865. package/lib/generated-proto/pb_schema/google/api/http.d.ts +0 -3630
  866. package/lib/generated-proto/pb_schema/google/api/http.js +0 -194
  867. package/lib/generated-proto/pb_schema/google/api/http.js.map +0 -1
  868. package/lib/generated-proto/pb_schema/google/protobuf/any.d.ts +0 -32
  869. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.d.ts +0 -50896
  870. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js +0 -1857
  871. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js.map +0 -1
  872. package/lib/generated-proto/pb_schema/google/protobuf/timestamp.d.ts +0 -32
  873. package/lib/generated-proto/pb_schema/google/protobuf/wrappers.d.ts +0 -119
  874. package/lib/generated-proto/pb_schema/lenses/geocircle.d.ts +0 -42
  875. package/lib/generated-proto/pb_schema/lenses/geopoint.d.ts +0 -32
  876. package/lib/generated-proto/pb_schema/lenses/launch_params.d.ts +0 -29
  877. package/lib/generated-proto/pb_schema/lenses/launchdata.d.ts +0 -396
  878. package/lib/generated-proto/pb_schema/lenses/lures.d.ts +0 -111
  879. package/lib/generated-proto/pb_schema/lenses/persistent_store.d.ts +0 -29
  880. package/lib/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts +0 -569
  881. package/lib/generated-proto/pb_schema/lenses/snappable.d.ts +0 -902
  882. package/lib/generated-proto/pb_schema/lenses/user_data.d.ts +0 -229
  883. package/lib/handlers/HandlerChainBuilder.d.ts +0 -110
  884. package/lib/handlers/HandlerChainBuilder.js +0 -199
  885. package/lib/handlers/HandlerChainBuilder.js.map +0 -1
  886. package/lib/handlers/arrayBufferParsingHandler.d.ts +0 -10
  887. package/lib/handlers/arrayBufferParsingHandler.js +0 -18
  888. package/lib/handlers/arrayBufferParsingHandler.js.map +0 -1
  889. package/lib/handlers/batchingHandler.d.ts +0 -31
  890. package/lib/handlers/batchingHandler.js +0 -76
  891. package/lib/handlers/batchingHandler.js.map +0 -1
  892. package/lib/handlers/cameraKitServiceFetchHandlerFactory.d.ts +0 -12
  893. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js +0 -19
  894. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js.map +0 -1
  895. package/lib/handlers/debugHandler.d.ts +0 -8
  896. package/lib/handlers/debugHandler.js +0 -27
  897. package/lib/handlers/debugHandler.js.map +0 -1
  898. package/lib/handlers/defaultFetchHandler.d.ts +0 -15
  899. package/lib/handlers/defaultFetchHandler.js +0 -38
  900. package/lib/handlers/defaultFetchHandler.js.map +0 -1
  901. package/lib/handlers/headersModifyingFetchHandler.d.ts +0 -8
  902. package/lib/handlers/headersModifyingFetchHandler.js +0 -17
  903. package/lib/handlers/headersModifyingFetchHandler.js.map +0 -1
  904. package/lib/handlers/mappingHandler.d.ts +0 -19
  905. package/lib/handlers/mappingHandler.js +0 -67
  906. package/lib/handlers/mappingHandler.js.map +0 -1
  907. package/lib/handlers/noCorsRetryingFetchHandler.d.ts +0 -48
  908. package/lib/handlers/noCorsRetryingFetchHandler.js +0 -95
  909. package/lib/handlers/noCorsRetryingFetchHandler.js.map +0 -1
  910. package/lib/handlers/persistingHandler.d.ts +0 -14
  911. package/lib/handlers/persistingHandler.js +0 -71
  912. package/lib/handlers/persistingHandler.js.map +0 -1
  913. package/lib/handlers/rateLimitingHandler.d.ts +0 -24
  914. package/lib/handlers/rateLimitingHandler.js +0 -45
  915. package/lib/handlers/rateLimitingHandler.js.map +0 -1
  916. package/lib/handlers/requestStateEmittingHandler.d.ts +0 -41
  917. package/lib/handlers/requestStateEmittingHandler.js +0 -45
  918. package/lib/handlers/requestStateEmittingHandler.js.map +0 -1
  919. package/lib/handlers/responseCachingHandler.d.ts +0 -34
  920. package/lib/handlers/responseCachingHandler.js +0 -109
  921. package/lib/handlers/responseCachingHandler.js.map +0 -1
  922. package/lib/handlers/retryingHandler.d.ts +0 -48
  923. package/lib/handlers/retryingHandler.js +0 -86
  924. package/lib/handlers/retryingHandler.js.map +0 -1
  925. package/lib/handlers/timeoutHandler.d.ts +0 -18
  926. package/lib/handlers/timeoutHandler.js +0 -30
  927. package/lib/handlers/timeoutHandler.js.map +0 -1
  928. package/lib/handlers/utils.d.ts +0 -12
  929. package/lib/handlers/utils.js +0 -19
  930. package/lib/handlers/utils.js.map +0 -1
  931. package/lib/index.d.ts +0 -42
  932. package/lib/index.js +0 -36
  933. package/lib/index.js.map +0 -1
  934. package/lib/legal/legalPrompt.d.ts +0 -20
  935. package/lib/legal/legalPrompt.js +0 -135
  936. package/lib/legal/legalPrompt.js.map +0 -1
  937. package/lib/legal/legalState.d.ts +0 -50
  938. package/lib/legal/legalState.js +0 -163
  939. package/lib/legal/legalState.js.map +0 -1
  940. package/lib/lens/Lens.d.ts +0 -115
  941. package/lib/lens/Lens.js +0 -84
  942. package/lib/lens/Lens.js.map +0 -1
  943. package/lib/lens/LensLaunchData.d.ts +0 -40
  944. package/lib/lens/LensLaunchData.js +0 -37
  945. package/lib/lens/LensLaunchData.js.map +0 -1
  946. package/lib/lens/LensPersistenceStore.d.ts +0 -7
  947. package/lib/lens/LensPersistenceStore.js.map +0 -1
  948. package/lib/lens/LensRepository.d.ts +0 -137
  949. package/lib/lens/LensRepository.js +0 -237
  950. package/lib/lens/LensRepository.js.map +0 -1
  951. package/lib/lens/LensSource.d.ts +0 -43
  952. package/lib/lens/LensSource.js +0 -42
  953. package/lib/lens/LensSource.js.map +0 -1
  954. package/lib/lens/assets/LensAssetRepository.d.ts +0 -99
  955. package/lib/lens/assets/LensAssetRepository.js +0 -184
  956. package/lib/lens/assets/LensAssetRepository.js.map +0 -1
  957. package/lib/lens/assets/LensAssetsProvider.d.ts +0 -27
  958. package/lib/lens/assets/LensAssetsProvider.js +0 -68
  959. package/lib/lens/assets/LensAssetsProvider.js.map +0 -1
  960. package/lib/lens/assets/deviceDependentAssetLoader.d.ts +0 -11
  961. package/lib/lens/assets/deviceDependentAssetLoader.js +0 -59
  962. package/lib/lens/assets/deviceDependentAssetLoader.js.map +0 -1
  963. package/lib/lens/assets/remoteMediaAssetLoaderFactory.d.ts +0 -10
  964. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js +0 -27
  965. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js.map +0 -1
  966. package/lib/lens/assets/staticAssetLoader.d.ts +0 -10
  967. package/lib/lens/assets/staticAssetLoader.js +0 -25
  968. package/lib/lens/assets/staticAssetLoader.js.map +0 -1
  969. package/lib/lens/cameraKitLensSource.d.ts +0 -17
  970. package/lib/lens/cameraKitLensSource.js +0 -104
  971. package/lib/lens/cameraKitLensSource.js.map +0 -1
  972. package/lib/lens/fetchWatermarkLens.d.ts +0 -11
  973. package/lib/lens/fetchWatermarkLens.js +0 -27
  974. package/lib/lens/fetchWatermarkLens.js.map +0 -1
  975. package/lib/lens-client-interface/exif.d.ts +0 -20
  976. package/lib/lens-client-interface/exif.js +0 -61
  977. package/lib/lens-client-interface/exif.js.map +0 -1
  978. package/lib/lens-client-interface/imagePicker.d.ts +0 -8
  979. package/lib/lens-client-interface/imagePicker.js +0 -128
  980. package/lib/lens-client-interface/imagePicker.js.map +0 -1
  981. package/lib/lens-client-interface/lensClientInterface.d.ts +0 -13
  982. package/lib/lens-client-interface/lensClientInterface.js +0 -30
  983. package/lib/lens-client-interface/lensClientInterface.js.map +0 -1
  984. package/lib/lens-core-module/generated-types.d.ts +0 -469
  985. package/lib/lens-core-module/lensCore.d.ts +0 -43
  986. package/lib/lens-core-module/lensCore.js +0 -59
  987. package/lib/lens-core-module/lensCore.js.map +0 -1
  988. package/lib/lens-core-module/lensCoreError.d.ts +0 -15
  989. package/lib/lens-core-module/lensCoreError.js +0 -43
  990. package/lib/lens-core-module/lensCoreError.js.map +0 -1
  991. package/lib/lens-core-module/loader/bootstrapURLs.d.ts +0 -12
  992. package/lib/lens-core-module/loader/bootstrapURLs.js +0 -48
  993. package/lib/lens-core-module/loader/bootstrapURLs.js.map +0 -1
  994. package/lib/lens-core-module/loader/lensCoreFactory.d.ts +0 -17
  995. package/lib/lens-core-module/loader/lensCoreFactory.js +0 -76
  996. package/lib/lens-core-module/loader/lensCoreFactory.js.map +0 -1
  997. package/lib/lensCoreWasmVersions.d.ts +0 -6
  998. package/lib/lensCoreWasmVersions.js +0 -6
  999. package/lib/lensCoreWasmVersions.js.map +0 -1
  1000. package/lib/logger/errorLoggingDecorator.d.ts +0 -9
  1001. package/lib/logger/errorLoggingDecorator.js +0 -32
  1002. package/lib/logger/errorLoggingDecorator.js.map +0 -1
  1003. package/lib/logger/logEntries.d.ts +0 -15
  1004. package/lib/logger/logEntries.js +0 -14
  1005. package/lib/logger/logEntries.js.map +0 -1
  1006. package/lib/logger/logger.d.ts +0 -40
  1007. package/lib/logger/logger.js +0 -53
  1008. package/lib/logger/logger.js.map +0 -1
  1009. package/lib/logger/registerLogEntriesSubscriber.d.ts +0 -14
  1010. package/lib/logger/registerLogEntriesSubscriber.js +0 -35
  1011. package/lib/logger/registerLogEntriesSubscriber.js.map +0 -1
  1012. package/lib/media-sources/CameraKitSource.d.ts +0 -126
  1013. package/lib/media-sources/CameraKitSource.js +0 -138
  1014. package/lib/media-sources/CameraKitSource.js.map +0 -1
  1015. package/lib/media-sources/FunctionSource.d.ts +0 -41
  1016. package/lib/media-sources/FunctionSource.js +0 -128
  1017. package/lib/media-sources/FunctionSource.js.map +0 -1
  1018. package/lib/media-sources/ImageSource.d.ts +0 -11
  1019. package/lib/media-sources/ImageSource.js +0 -16
  1020. package/lib/media-sources/ImageSource.js.map +0 -1
  1021. package/lib/media-sources/MediaStreamSource.d.ts +0 -29
  1022. package/lib/media-sources/MediaStreamSource.js +0 -137
  1023. package/lib/media-sources/MediaStreamSource.js.map +0 -1
  1024. package/lib/media-sources/VideoSource.d.ts +0 -25
  1025. package/lib/media-sources/VideoSource.js +0 -22
  1026. package/lib/media-sources/VideoSource.js.map +0 -1
  1027. package/lib/metrics/businessEventsReporter.d.ts +0 -39
  1028. package/lib/metrics/businessEventsReporter.js +0 -195
  1029. package/lib/metrics/businessEventsReporter.js.map +0 -1
  1030. package/lib/metrics/metricsEventTarget.d.ts +0 -41
  1031. package/lib/metrics/metricsEventTarget.js +0 -11
  1032. package/lib/metrics/metricsEventTarget.js.map +0 -1
  1033. package/lib/metrics/operational/Count.d.ts +0 -19
  1034. package/lib/metrics/operational/Count.js +0 -33
  1035. package/lib/metrics/operational/Count.js.map +0 -1
  1036. package/lib/metrics/operational/Histogram.d.ts +0 -17
  1037. package/lib/metrics/operational/Histogram.js +0 -27
  1038. package/lib/metrics/operational/Histogram.js.map +0 -1
  1039. package/lib/metrics/operational/Metric.d.ts +0 -20
  1040. package/lib/metrics/operational/Metric.js +0 -28
  1041. package/lib/metrics/operational/Metric.js.map +0 -1
  1042. package/lib/metrics/operational/Timer.d.ts +0 -94
  1043. package/lib/metrics/operational/Timer.js +0 -108
  1044. package/lib/metrics/operational/Timer.js.map +0 -1
  1045. package/lib/metrics/reporters/reportBenchmarks.d.ts +0 -10
  1046. package/lib/metrics/reporters/reportBenchmarks.js +0 -30
  1047. package/lib/metrics/reporters/reportBenchmarks.js.map +0 -1
  1048. package/lib/metrics/reporters/reportGlobalException.d.ts +0 -26
  1049. package/lib/metrics/reporters/reportGlobalException.js +0 -106
  1050. package/lib/metrics/reporters/reportGlobalException.js.map +0 -1
  1051. package/lib/metrics/reporters/reportHttpMetrics.d.ts +0 -10
  1052. package/lib/metrics/reporters/reportHttpMetrics.js +0 -110
  1053. package/lib/metrics/reporters/reportHttpMetrics.js.map +0 -1
  1054. package/lib/metrics/reporters/reportLegalState.d.ts +0 -15
  1055. package/lib/metrics/reporters/reportLegalState.js +0 -32
  1056. package/lib/metrics/reporters/reportLegalState.js.map +0 -1
  1057. package/lib/metrics/reporters/reportLensAndAssetDownload.d.ts +0 -38
  1058. package/lib/metrics/reporters/reportLensAndAssetDownload.js +0 -92
  1059. package/lib/metrics/reporters/reportLensAndAssetDownload.js.map +0 -1
  1060. package/lib/metrics/reporters/reportLensValidationFailed.d.ts +0 -20
  1061. package/lib/metrics/reporters/reportLensValidationFailed.js +0 -24
  1062. package/lib/metrics/reporters/reportLensValidationFailed.js.map +0 -1
  1063. package/lib/metrics/reporters/reportLensView.d.ts +0 -36
  1064. package/lib/metrics/reporters/reportLensView.js +0 -137
  1065. package/lib/metrics/reporters/reportLensView.js.map +0 -1
  1066. package/lib/metrics/reporters/reportLensWait.d.ts +0 -32
  1067. package/lib/metrics/reporters/reportLensWait.js +0 -60
  1068. package/lib/metrics/reporters/reportLensWait.js.map +0 -1
  1069. package/lib/metrics/reporters/reportPlatformCapabilities.d.ts +0 -12
  1070. package/lib/metrics/reporters/reportPlatformCapabilities.js +0 -19
  1071. package/lib/metrics/reporters/reportPlatformCapabilities.js.map +0 -1
  1072. package/lib/metrics/reporters/reportSessionException.d.ts +0 -17
  1073. package/lib/metrics/reporters/reportSessionException.js +0 -12
  1074. package/lib/metrics/reporters/reportSessionException.js.map +0 -1
  1075. package/lib/metrics/reporters/reportUserSession.d.ts +0 -14
  1076. package/lib/metrics/reporters/reportUserSession.js +0 -66
  1077. package/lib/metrics/reporters/reportUserSession.js.map +0 -1
  1078. package/lib/metrics/reporters/reporters.d.ts +0 -46
  1079. package/lib/metrics/reporters/reporters.js +0 -35
  1080. package/lib/metrics/reporters/reporters.js.map +0 -1
  1081. package/lib/namedErrors.d.ts +0 -124
  1082. package/lib/namedErrors.js +0 -58
  1083. package/lib/namedErrors.js.map +0 -1
  1084. package/lib/observable-operators/unsubscribed.d.ts +0 -12
  1085. package/lib/observable-operators/unsubscribed.js +0 -27
  1086. package/lib/observable-operators/unsubscribed.js.map +0 -1
  1087. package/lib/persistence/ExpiringPersistence.d.ts +0 -21
  1088. package/lib/persistence/ExpiringPersistence.js +0 -71
  1089. package/lib/persistence/ExpiringPersistence.js.map +0 -1
  1090. package/lib/persistence/IndexedDBPersistence.d.ts +0 -47
  1091. package/lib/persistence/IndexedDBPersistence.js +0 -190
  1092. package/lib/persistence/IndexedDBPersistence.js.map +0 -1
  1093. package/lib/persistence/Persistence.d.ts +0 -25
  1094. package/lib/persistence/Persistence.js +0 -10
  1095. package/lib/persistence/Persistence.js.map +0 -1
  1096. package/lib/platform/assertPlatformSupported.d.ts +0 -4
  1097. package/lib/platform/assertPlatformSupported.js +0 -15
  1098. package/lib/platform/assertPlatformSupported.js.map +0 -1
  1099. package/lib/platform/cameraKitUserAgent.d.ts +0 -2
  1100. package/lib/platform/cameraKitUserAgent.js +0 -20
  1101. package/lib/platform/cameraKitUserAgent.js.map +0 -1
  1102. package/lib/platform/platformCapabilities.d.ts +0 -50
  1103. package/lib/platform/platformCapabilities.js +0 -128
  1104. package/lib/platform/platformCapabilities.js.map +0 -1
  1105. package/lib/platform/platformInfo.d.ts +0 -43
  1106. package/lib/platform/platformInfo.js +0 -228
  1107. package/lib/platform/platformInfo.js.map +0 -1
  1108. package/lib/remote-configuration/cofHandler.d.ts +0 -29
  1109. package/lib/remote-configuration/cofHandler.js +0 -115
  1110. package/lib/remote-configuration/cofHandler.js.map +0 -1
  1111. package/lib/remote-configuration/preloadConfiguration.d.ts +0 -7
  1112. package/lib/remote-configuration/preloadConfiguration.js.map +0 -1
  1113. package/lib/remote-configuration/remoteConfiguration.d.ts +0 -34
  1114. package/lib/remote-configuration/remoteConfiguration.js +0 -73
  1115. package/lib/remote-configuration/remoteConfiguration.js.map +0 -1
  1116. package/lib/session/CameraKitSession.d.ts +0 -255
  1117. package/lib/session/CameraKitSession.js +0 -440
  1118. package/lib/session/CameraKitSession.js.map +0 -1
  1119. package/lib/session/CameraKitSessionEvents.d.ts +0 -37
  1120. package/lib/session/CameraKitSessionEvents.js +0 -38
  1121. package/lib/session/CameraKitSessionEvents.js.map +0 -1
  1122. package/lib/session/LensKeyboard.d.ts +0 -89
  1123. package/lib/session/LensKeyboard.js +0 -95
  1124. package/lib/session/LensKeyboard.js.map +0 -1
  1125. package/lib/session/LensPerformanceMeasurement.d.ts +0 -57
  1126. package/lib/session/LensPerformanceMeasurement.js +0 -114
  1127. package/lib/session/LensPerformanceMeasurement.js.map +0 -1
  1128. package/lib/session/LensPerformanceMetrics.d.ts +0 -31
  1129. package/lib/session/LensPerformanceMetrics.js +0 -59
  1130. package/lib/session/LensPerformanceMetrics.js.map +0 -1
  1131. package/lib/session/lensState.d.ts +0 -31
  1132. package/lib/session/lensState.js +0 -261
  1133. package/lib/session/lensState.js.map +0 -1
  1134. package/lib/session/sessionState.d.ts +0 -10
  1135. package/lib/session/sessionState.js.map +0 -1
  1136. package/lib/transforms/Transform2D.d.ts +0 -22
  1137. package/lib/transforms/Transform2D.js +0 -19
  1138. package/lib/transforms/Transform2D.js.map +0 -1
  1139. package/lib/utils.d.ts +0 -3
  1140. /package/{lib → dist}/benchmark/webglUtils.js +0 -0
  1141. /package/{lib → dist}/benchmark/webglUtils.js.map +0 -0
  1142. /package/{lib → dist}/clients/lensesClient.js +0 -0
  1143. /package/{lib → dist}/common/date.js +0 -0
  1144. /package/{lib → dist}/common/date.js.map +0 -0
  1145. /package/{lib → dist}/common/getFilename.js +0 -0
  1146. /package/{lib → dist}/common/getFilename.js.map +0 -0
  1147. /package/{lib → dist}/common/memoize.js +0 -0
  1148. /package/{lib → dist}/common/memoize.js.map +0 -0
  1149. /package/{lib → dist}/common/time.js +0 -0
  1150. /package/{lib → dist}/common/time.js.map +0 -0
  1151. /package/{lib → dist}/common/types.js +0 -0
  1152. /package/{lib → dist}/dependency-injection/Injectable.js +0 -0
  1153. /package/{lib → dist}/dependency-injection/types.js +0 -0
  1154. /package/{lib → dist}/generated-proto/blizzard/cameraKitEvents.js +0 -0
  1155. /package/{lib → dist}/generated-proto/blizzard/cameraKitEvents.js.map +0 -0
  1156. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/business_events.js +0 -0
  1157. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/business_events.js.map +0 -0
  1158. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/export.js +0 -0
  1159. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/export.js.map +0 -0
  1160. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js +0 -0
  1161. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js.map +0 -0
  1162. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js +0 -0
  1163. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js.map +0 -0
  1164. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/lens.js +0 -0
  1165. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/lens.js.map +0 -0
  1166. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js +0 -0
  1167. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js.map +0 -0
  1168. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/ranking.js +0 -0
  1169. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/ranking.js.map +0 -0
  1170. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/service.js +0 -0
  1171. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/service.js.map +0 -0
  1172. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark.js +0 -0
  1173. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark.js.map +0 -0
  1174. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark_name.js +0 -0
  1175. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark_name.js.map +0 -0
  1176. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/circumstance_service.js +0 -0
  1177. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/circumstance_service.js.map +0 -0
  1178. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_request.js +0 -0
  1179. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_request.js.map +0 -0
  1180. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_response.js +0 -0
  1181. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_response.js.map +0 -0
  1182. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_result.js +0 -0
  1183. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_result.js.map +0 -0
  1184. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/debug_info.js +0 -0
  1185. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/debug_info.js.map +0 -0
  1186. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/namespace.js +0 -0
  1187. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/namespace.js.map +0 -0
  1188. /package/{lib → dist}/generated-proto/pb_schema/common/ruid.js +0 -0
  1189. /package/{lib → dist}/generated-proto/pb_schema/common/ruid.js.map +0 -0
  1190. /package/{lib → dist}/generated-proto/pb_schema/common/value.js +0 -0
  1191. /package/{lib → dist}/generated-proto/pb_schema/common/value.js.map +0 -0
  1192. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/any.js +0 -0
  1193. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/any.js.map +0 -0
  1194. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/timestamp.js +0 -0
  1195. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/timestamp.js.map +0 -0
  1196. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/wrappers.js +0 -0
  1197. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/wrappers.js.map +0 -0
  1198. /package/{lib → dist}/generated-proto/pb_schema/lenses/geocircle.js +0 -0
  1199. /package/{lib → dist}/generated-proto/pb_schema/lenses/geocircle.js.map +0 -0
  1200. /package/{lib → dist}/generated-proto/pb_schema/lenses/geopoint.js +0 -0
  1201. /package/{lib → dist}/generated-proto/pb_schema/lenses/geopoint.js.map +0 -0
  1202. /package/{lib → dist}/generated-proto/pb_schema/lenses/launch_params.js +0 -0
  1203. /package/{lib → dist}/generated-proto/pb_schema/lenses/launch_params.js.map +0 -0
  1204. /package/{lib → dist}/generated-proto/pb_schema/lenses/launchdata.js +0 -0
  1205. /package/{lib → dist}/generated-proto/pb_schema/lenses/launchdata.js.map +0 -0
  1206. /package/{lib → dist}/generated-proto/pb_schema/lenses/lures.js +0 -0
  1207. /package/{lib → dist}/generated-proto/pb_schema/lenses/lures.js.map +0 -0
  1208. /package/{lib → dist}/generated-proto/pb_schema/lenses/persistent_store.js +0 -0
  1209. /package/{lib → dist}/generated-proto/pb_schema/lenses/persistent_store.js.map +0 -0
  1210. /package/{lib → dist}/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js +0 -0
  1211. /package/{lib → dist}/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js.map +0 -0
  1212. /package/{lib → dist}/generated-proto/pb_schema/lenses/snappable.js +0 -0
  1213. /package/{lib → dist}/generated-proto/pb_schema/lenses/snappable.js.map +0 -0
  1214. /package/{lib → dist}/generated-proto/pb_schema/lenses/user_data.js +0 -0
  1215. /package/{lib → dist}/generated-proto/pb_schema/lenses/user_data.js.map +0 -0
  1216. /package/{lib → dist}/lens/LensPersistenceStore.js +0 -0
  1217. /package/{lib → dist}/lens-core-module/generated-types.js +0 -0
  1218. /package/{lib → dist}/lens-core-module/generated-types.js.map +0 -0
  1219. /package/{lib → dist}/remote-configuration/preloadConfiguration.js +0 -0
  1220. /package/{lib → dist}/session/sessionState.js +0 -0
  1221. /package/{lib → dist}/utils.js +0 -0
  1222. /package/{lib → dist}/utils.js.map +0 -0
@@ -0,0 +1,257 @@
1
+ import type { Observable } from "rxjs";
2
+ import type { Lens } from "../lens/Lens";
3
+ import type { LensLaunchData } from "../lens/LensLaunchData";
4
+ import { TypedEventTarget } from "../events/TypedEventTarget";
5
+ import type { CameraKitDeviceOptions, CameraKitSource } from "../media-sources/CameraKitSource";
6
+ import type { LogEntry } from "../logger/logger";
7
+ import type { PageVisibility } from "../common/pageVisibility";
8
+ import type { LensCore } from "../lens-core-module/lensCore";
9
+ import { LensPerformanceMetrics } from "./LensPerformanceMetrics";
10
+ import type { LensState } from "./lensState";
11
+ import type { SessionState } from "./sessionState";
12
+ import type { Keyboard, LensKeyboard } from "./LensKeyboard";
13
+ import type { CameraKitSessionEvents } from "./CameraKitSessionEvents";
14
+ /**
15
+ * Enumerates the supported render targets.
16
+ *
17
+ * Lenses may render to different render targets, as designed by the lens creator. In CameraKit, it's possible to choose
18
+ * which render target to render, and the result for each target is available as a separate `<canvas>` element.
19
+ *
20
+ * @category Rendering
21
+ * @category Lenses
22
+ */
23
+ export type RenderTarget = "live" | "capture";
24
+ /**
25
+ * A CameraKitSession represents a single rendering pipeline connecting an input media source to output `<canvas>`
26
+ * elements. When a Lens is applied to the session, CameraKit uses the Lens to transform the input media into rendered
27
+ * output.
28
+ *
29
+ * CameraKitSession is the primary object that applications interact with when integrating the CameraKit SDK.
30
+ *
31
+ * A CameraKitSession instance is obtained by calling {@link CameraKit.createSession}.
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * const cameraKit = await bootstrapCameraKit(config)
36
+ * const session = await cameraKit.createSession()
37
+ * ```
38
+ *
39
+ * @category Rendering
40
+ * @category Lenses
41
+ */
42
+ declare class CameraKitSession {
43
+ /**
44
+ * Use this to interact with lenses which require text input.
45
+ */
46
+ readonly keyboard: Keyboard;
47
+ private readonly lensCore;
48
+ private readonly sessionState;
49
+ private readonly lensState;
50
+ /**
51
+ * CameraKitSession renders video output to a `<canvas>` element. In fact, each session contains two canvas outputs
52
+ * corresponding to the RenderTargets used by Lens creators, when using LensStudio to create a Lens.
53
+ *
54
+ * The `live` output renders content suitable for the Lens user (e.g. it may contain additional UI elements
55
+ * applicable only to the person applying the lens). The `capture` output renders content suitable for sharing with
56
+ * other users (e.g. sent to the other members of a video call, or saved to disk for sharing later).
57
+ *
58
+ * For many lenses, these outputs are identical – but each lens is free to render differently, based on its own
59
+ * use-case.
60
+ */
61
+ readonly output: {
62
+ live: HTMLCanvasElement;
63
+ capture: HTMLCanvasElement;
64
+ };
65
+ /**
66
+ * Indicates whether or not the session is currently rendering. If `false`, rendering is stopped. Otherwise the
67
+ * value indicates which output is being rendered.
68
+ */
69
+ playing: {
70
+ live: boolean;
71
+ capture: boolean;
72
+ };
73
+ /**
74
+ * Add event listeners here to handle events which occur during the CameraKitSession.
75
+ *
76
+ * **Note:** Applications may want to handle the `error` event, and check the contained error type -- if the type
77
+ * is {@link LensExecutionError}, this means the current lens was unable to render and CameraKit will automatically
78
+ * remove the lens.
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * cameraKitSession.events.addEventListener('error', ({ detail }) => {
83
+ * if (detail.error.name === 'LensExecutionError') {
84
+ * console.log(`Lens ${detail.lens.name} encountered an error and was removed. Please pick a different lens.`)
85
+ * }
86
+ * })
87
+ * ```
88
+ */
89
+ readonly events: TypedEventTarget<CameraKitSessionEvents>;
90
+ /**
91
+ * Use this to measure current lens performance.
92
+ */
93
+ readonly metrics: LensPerformanceMetrics;
94
+ private readonly removePageVisibilityHandlers;
95
+ private source?;
96
+ private subscriptions;
97
+ /**
98
+ * @internal
99
+ */
100
+ constructor(
101
+ /**
102
+ * Use this to interact with lenses which require text input.
103
+ */
104
+ keyboard: Keyboard, lensCore: LensCore, sessionState: SessionState, lensState: LensState, logEntries: Observable<LogEntry>, pageVisibility: PageVisibility);
105
+ /**
106
+ * Apply a Lens to this session.
107
+ *
108
+ * This method will download (and cache) the Lens executable, and then use that Lens for rendering. If the session
109
+ * is currently playing, this will immediately update the rendered output. Otherwise, the new Lens will be used
110
+ * when session playback in resumed.
111
+ *
112
+ * Calling `applyLens` replaces any prior Lens – only one Lens is allowed at a time (per session).
113
+ *
114
+ * **NOTE**: Errors may occur after the Lens is applied. If the Lens encounters errors while rendering,
115
+ * Camera Kit will automatically remove the Lens from the session and emit a {@link LensExecutionError} event.
116
+ * Applications may want to listen for this error and, for example,
117
+ * prevent the Lens from being selected again by the user.
118
+ *
119
+ * ```ts
120
+ * session.events.addEventListener("error", ({ detail }) => {
121
+ * if (detail.error.name === "LensExecutionError") {
122
+ * preventFutureLensSelection(detail.lens);
123
+ * showMessage("We're sorry, but the Lens you selected encountered an error. Please choose a different Lens.");
124
+ * }
125
+ * });
126
+ * ```
127
+ *
128
+ * @param lens The Lens to apply to this session.
129
+ * @param launchData This can optionally be provided to pass some initial data to the Lens – only certain Lenses
130
+ * expect launch data.
131
+ * @returns A promise which can have the following results:
132
+ * 1. Resolved with `true`: the Lens has been applied.
133
+ * 2. Resolved with `false`: the Lens has not been applied, but no error occurred – this can happen if a
134
+ * subsequent call to `applyLens` interrupted the Lens application.
135
+ * 3. Rejected: the Lens has not been applied because an error occurred. This can happen if:
136
+ * - The Lens ID cannot be found in the LensRepository (use LensRepository to load the Lens before calling this
137
+ * method)
138
+ * - Lens content download fails, or the download of any required lens assets fails.
139
+ * - An internal failure occurs in the Lens rendering engine when attempting to apply the Lens.
140
+ */
141
+ applyLens(lens: Lens, launchData?: LensLaunchData): Promise<boolean>;
142
+ /**
143
+ * Remove a Lens from this session.
144
+ *
145
+ * When a Lens is removed, rendering continues if the session is playing. It will just render the session input
146
+ * directly to the outputs without any image processing.
147
+ *
148
+ * @returns A promise which can have the following results:
149
+ * 1. Resolved with `true`: the session's rendered output has no lens applied.
150
+ * 2. Resolved with `false`: the current lens has been removed, but a subsequent call to `applyLens` means that the
151
+ * session's rendered output will still have a (new) lens applied.
152
+ * 3. Rejected: the lens has failed to be removed. This can happen if an internal failure occurs in the Lens
153
+ * rendering engine when attempting to remove the lens.
154
+ */
155
+ removeLens(): Promise<boolean>;
156
+ /**
157
+ * Start/resume session playback – LensCore will begin rendering frames to the output.
158
+ *
159
+ * If no source has been set for the session, calling `play()` will update the playing state, but no actual image
160
+ * processing will occur until `setSource()` is called.
161
+ *
162
+ * @example
163
+ * ```ts
164
+ * const cameraKitSession = await cameraKit.createSession()
165
+ * await cameraKitSession.setSource(mySource)
166
+ * await cameraKitSession.play()
167
+ *
168
+ * // If you call `play` before `setSource`, the call to `play` will resolve but playback will only begin once a
169
+ * // media source has been set.
170
+ * ```
171
+ *
172
+ * @param target Specify the {@link RenderTarget} to render. Defaults to the `live` RenderTarget.
173
+ * @returns Promise resolves when playback state has been updated. If no source has been set, this means `play` will
174
+ * resolve before any frames are processed -- but once a source is set, frames will immediately begin processing.
175
+ */
176
+ play(target?: RenderTarget): Promise<void>;
177
+ /**
178
+ * Pause session playback – LensCore will stop rendering frames to the output.
179
+ *
180
+ * @param target Specify the RenderTarget to pause playback. May be either `'live'` or `'capture'`.
181
+ * Default is `'live'`.
182
+ * @returns Promise resolves when playback has stopped.
183
+ */
184
+ pause(target?: RenderTarget): Promise<void>;
185
+ /**
186
+ * Mute all sounds (default SDK state is unmuted).
187
+ *
188
+ * @param fade Do we want audio to fade out?
189
+ */
190
+ mute(fade?: boolean): void;
191
+ /**
192
+ * Unmute all sounds.
193
+ *
194
+ * @param fade Do we want audio to fade in?
195
+ */
196
+ unmute(fade?: boolean): void;
197
+ /**
198
+ * Set the media source for this session.
199
+ *
200
+ * Sessions may only have one source at a time - if `setSource` is called multiple times, subsequent calls replace
201
+ * the prior source. Setting the source does not trigger rendering (that’s done by `session.play()`). If the session
202
+ * is already playing, setting the source will immediately begin rendering the new source.
203
+ *
204
+ * The CameraKit SDK provides implementations for various common sources, which applications can create using the
205
+ * following functions:
206
+ * - {@link createMediaStreamSource}
207
+ * - {@link createVideoSource}
208
+ * - {@link createImageSource}
209
+ *
210
+ * @param source A CameraKitSource object representing input media (e.g. a webcam stream, video, or some other
211
+ * source of image data), which CameraKit will supply to Lenses in order for them to render effects on top of that
212
+ * source.
213
+ * @returns Promise is resolved when the source has successfully be set. If the session was already in the playing
214
+ * state, the Promise resolves when the first frame from the new source has been rendered. The resolved value is
215
+ * the {@link CameraKitSource} object attached to the session.
216
+ */
217
+ setSource(source: CameraKitSource): Promise<CameraKitSource>;
218
+ setSource(source: MediaStream | HTMLVideoElement, options?: Partial<CameraKitDeviceOptions>): Promise<CameraKitSource>;
219
+ /**
220
+ * Set an FPS limit.
221
+ *
222
+ * This may be useful to reduce CPU/GPU resource usage by CameraKit if, for example, the input
223
+ * media source has a low FPS – CameraKit would then not try to render more frequently than the source produces
224
+ * new frames.
225
+ *
226
+ * This may also be useful to gracefully degrade performance in situations where lowering FPS is preferable over
227
+ * alternatives.
228
+ *
229
+ * @param fpsLimit A maximum FPS, rendering will not exceed this limit
230
+ * @returns Promise is resolved when the limit is successfully set.
231
+ */
232
+ setFPSLimit(fpsLimit: number): Promise<void>;
233
+ /**
234
+ * Destroy the session.
235
+ *
236
+ * The session will become inoperable. Frame processing stops, and any session-scoped graphical resources are freed.
237
+ */
238
+ destroy(): Promise<void>;
239
+ private renderTargetToCanvasType;
240
+ private safelyDetachSource;
241
+ }
242
+ export { CameraKitSession };
243
+ /**
244
+ * @internal
245
+ */
246
+ export declare const cameraKitSessionFactory: {
247
+ (args_0: LensCore, args_1: Observable<LogEntry>, args_2: LensKeyboard, args_3: import("@snap/state-management").StateMachine<import("@snap/state-management").Action<"suspend", CameraKitSession> | import("@snap/state-management").Action<"resume", CameraKitSession> | import("@snap/state-management").Action<"destroy", undefined>, import("@snap/state-management").State<"inactive", undefined> | import("@snap/state-management").State<"active", CameraKitSession> | import("@snap/state-management").State<"destroyed", undefined>>, args_4: import("@snap/state-management").StateMachine<import("@snap/state-management").Action<"applyLens", {
248
+ lens: Lens;
249
+ launchData?: LensLaunchData | undefined;
250
+ }> | import("@snap/state-management").Action<"downloadComplete", Lens> | import("@snap/state-management").Action<"turnedOn", Lens> | import("@snap/state-management").Action<"resourcesLoaded", Lens> | import("@snap/state-management").Action<"firstFrameProcessed", Lens> | import("@snap/state-management").Action<"applyLensComplete", Lens> | import("@snap/state-management").Action<"applyLensFailed", {
251
+ error: import("./lensState").LensErrors;
252
+ lens: Lens;
253
+ }> | import("@snap/state-management").Action<"applyLensAborted", Lens> | import("@snap/state-management").Action<"removeLens", undefined> | import("@snap/state-management").Action<"turnedOff", Lens> | import("@snap/state-management").Action<"removeLensComplete", undefined> | import("@snap/state-management").Action<"removeLensFailed", Error>, import("@snap/state-management").State<"noLensApplied", undefined> | import("@snap/state-management").State<"applyingLens", Lens> | import("@snap/state-management").State<"lensApplied", Lens>>, args_5: PageVisibility): CameraKitSession;
254
+ token: "CameraKitSession";
255
+ dependencies: readonly ["lensCore", "logEntries", "lensKeyboard", "sessionState", "lensState", "pageVisibility"];
256
+ };
257
+ //# sourceMappingURL=CameraKitSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSession.d.ts","sourceRoot":"","sources":["../../src/session/CameraKitSession.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,242 @@
1
+ import { __awaiter, __esDecorate, __runInitializers } from "tslib";
2
+ import { filter, firstValueFrom, map, of, takeUntil, tap } from "rxjs";
3
+ import { dispatch, forActions, inStates, isAction, isState } from "@snap/state-management";
4
+ import { isLens } from "../lens/Lens";
5
+ import { Injectable } from "../dependency-injection/Injectable";
6
+ import { lensCoreFactory } from "../lens-core-module/loader/lensCoreFactory";
7
+ import { isLensLaunchDataOrUndefined } from "../lens/LensLaunchData";
8
+ import { getTypeName, validate } from "../common/validate";
9
+ import { TypedEventTarget } from "../events/TypedEventTarget";
10
+ import { TypedCustomEvent } from "../events/TypedCustomEvent";
11
+ import { isCameraKitSource, isPartialCameraKitDeviceOptionsOrUndefined } from "../media-sources/CameraKitSource";
12
+ import { cameraKitSourceError } from "../namedErrors";
13
+ import { createMediaStreamSource } from "../media-sources/MediaStreamSource";
14
+ import { createVideoSource } from "../media-sources/VideoSource";
15
+ import { getLogger } from "../logger/logger";
16
+ import { errorLoggingDecorator } from "../logger/errorLoggingDecorator";
17
+ import { logEntriesFactory } from "../logger/logEntries";
18
+ import { pageVisibilityFactory } from "../common/pageVisibility";
19
+ import { isUndefined, isValidNumber } from "../common/typeguards";
20
+ import { LensPerformanceMetrics } from "./LensPerformanceMetrics";
21
+ import { lensStateFactory } from "./lensState";
22
+ import { sessionStateFactory } from "./sessionState";
23
+ import { lensKeyboardFactory } from "./LensKeyboard";
24
+ import { isPublicLensError } from "./CameraKitSessionEvents";
25
+ const logger = getLogger("CameraKitSession");
26
+ function isAllowedSource(value) {
27
+ return isCameraKitSource(value) || isMediaStream(value) || isHTMLVideoElement(value);
28
+ }
29
+ function isMediaStream(value) {
30
+ return value instanceof MediaStream;
31
+ }
32
+ function isHTMLVideoElement(value) {
33
+ return value instanceof HTMLVideoElement;
34
+ }
35
+ function isRenderTargetOrUndefined(value) {
36
+ return isUndefined(value) || value === "live" || value === "capture";
37
+ }
38
+ let CameraKitSession = (() => {
39
+ var _a;
40
+ let _instanceExtraInitializers = [];
41
+ let _applyLens_decorators;
42
+ let _removeLens_decorators;
43
+ let _play_decorators;
44
+ let _pause_decorators;
45
+ let _mute_decorators;
46
+ let _unmute_decorators;
47
+ let _setSource_decorators;
48
+ let _setFPSLimit_decorators;
49
+ let _destroy_decorators;
50
+ return _a = class CameraKitSession {
51
+ constructor(keyboard, lensCore, sessionState, lensState, logEntries, pageVisibility) {
52
+ this.keyboard = (__runInitializers(this, _instanceExtraInitializers), keyboard);
53
+ this.lensCore = lensCore;
54
+ this.sessionState = sessionState;
55
+ this.lensState = lensState;
56
+ this.events = new TypedEventTarget();
57
+ const outputs = this.lensCore.getOutputCanvases();
58
+ this.output = {
59
+ live: outputs[this.lensCore.CanvasType.Preview.value],
60
+ capture: outputs[this.lensCore.CanvasType.Capture.value],
61
+ };
62
+ this.playing = {
63
+ live: false,
64
+ capture: false,
65
+ };
66
+ this.metrics = new LensPerformanceMetrics(this.lensCore);
67
+ const removeOnHidden = pageVisibility.onPageHidden(() => this.sessionState.dispatch("suspend", this));
68
+ const removeOnVisible = pageVisibility.onPageVisible(() => this.sessionState.dispatch("resume", this));
69
+ this.removePageVisibilityHandlers = () => {
70
+ removeOnHidden();
71
+ removeOnVisible();
72
+ };
73
+ this.subscriptions = [
74
+ lensCore.errors
75
+ .pipe(filter((error) => error.name === "LensCoreAbortError"))
76
+ .subscribe(() => this.destroy()),
77
+ lensCore.errors
78
+ .pipe(filter((error) => error.name !== "LensCoreAbortError" && error.isFrameError))
79
+ .subscribe(() => this.removeLens()),
80
+ logEntries
81
+ .pipe(filter((entry) => entry.level === "error"), map((entry) => entry.messages.find((e) => e instanceof Error)), filter(isPublicLensError))
82
+ .subscribe((error) => {
83
+ const state = lensState.getState();
84
+ if (!isState(state, "noLensApplied")) {
85
+ this.events.dispatchEvent(new TypedCustomEvent("error", { error, lens: state.data }));
86
+ }
87
+ else {
88
+ logger.warn("Lens error occurred even though there is no active lens.", error);
89
+ }
90
+ }),
91
+ ];
92
+ }
93
+ applyLens(lens, launchData) {
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ const action = this.lensState.actions.applyLens({ lens, launchData });
96
+ return firstValueFrom(of(action).pipe(dispatch(this.lensState), takeUntil(this.lensState.events.pipe(forActions("applyLens"), filter(([a]) => a !== action))), tap(([a]) => {
97
+ if (isAction(a, "applyLensFailed") && a.data.lens.id === lens.id)
98
+ throw a.data.error;
99
+ }), inStates("lensApplied"), map(() => true)), { defaultValue: false });
100
+ });
101
+ }
102
+ removeLens() {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ if (isState(this.lensState.getState(), "noLensApplied"))
105
+ return true;
106
+ return firstValueFrom(of(this.lensState.actions.removeLens()).pipe(dispatch(this.lensState), tap(([a]) => {
107
+ if (isAction(a, "removeLensFailed"))
108
+ throw a.data;
109
+ }), inStates("noLensApplied"), takeUntil(this.lensState.events.pipe(forActions("applyLens"))), map(() => true)), { defaultValue: false });
110
+ });
111
+ }
112
+ play(target = "live") {
113
+ return __awaiter(this, void 0, void 0, function* () {
114
+ if (this.playing[target])
115
+ return;
116
+ this.playing[target] = true;
117
+ const type = this.renderTargetToCanvasType(target);
118
+ return this.lensCore.playCanvas({ type }).catch((error) => {
119
+ this.playing[target] = false;
120
+ throw error;
121
+ });
122
+ });
123
+ }
124
+ pause(target = "live") {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ if (this.playing[target] === false)
127
+ return;
128
+ this.playing[target] = false;
129
+ const type = this.renderTargetToCanvasType(target);
130
+ return this.lensCore.pauseCanvas({ type }).catch((error) => {
131
+ this.playing[target] = true;
132
+ throw error;
133
+ });
134
+ });
135
+ }
136
+ mute(fade = false) {
137
+ this.lensCore.setAllSoundsMuted({
138
+ muted: true,
139
+ fade,
140
+ });
141
+ }
142
+ unmute(fade = false) {
143
+ this.lensCore.setAllSoundsMuted({
144
+ muted: false,
145
+ fade,
146
+ });
147
+ }
148
+ setSource(source, options = {}) {
149
+ return __awaiter(this, void 0, void 0, function* () {
150
+ yield this.safelyDetachSource();
151
+ const cameraKitSource = isMediaStream(source)
152
+ ? createMediaStreamSource(source, options)
153
+ : isHTMLVideoElement(source)
154
+ ? createVideoSource(source, options)
155
+ : source;
156
+ const priorPlayingState = this.playing;
157
+ this.playing = {
158
+ live: false,
159
+ capture: false,
160
+ };
161
+ yield cameraKitSource.attach(this.lensCore, (error) => {
162
+ logger.error(cameraKitSourceError("Error occurred during source attachment.", error));
163
+ });
164
+ this.source = cameraKitSource;
165
+ if (priorPlayingState.live)
166
+ yield this.play("live");
167
+ if (priorPlayingState.capture)
168
+ yield this.play("capture");
169
+ return cameraKitSource;
170
+ });
171
+ }
172
+ setFPSLimit(fpsLimit) {
173
+ return __awaiter(this, void 0, void 0, function* () {
174
+ const fps = fpsLimit < Number.POSITIVE_INFINITY ? fpsLimit : 0;
175
+ return this.lensCore.setFPSLimit({ fps });
176
+ });
177
+ }
178
+ destroy() {
179
+ return __awaiter(this, void 0, void 0, function* () {
180
+ try {
181
+ yield this.lensCore.clearAllLenses();
182
+ yield this.lensCore.teardown();
183
+ }
184
+ catch (error) {
185
+ logger.warn("An error occurred in LensCore during the session termination process.", error);
186
+ }
187
+ this.subscriptions.forEach((sub) => sub.unsubscribe());
188
+ yield this.safelyDetachSource();
189
+ this.removePageVisibilityHandlers();
190
+ this.sessionState.dispatch("destroy", undefined);
191
+ });
192
+ }
193
+ renderTargetToCanvasType(target) {
194
+ return target === "capture" ? this.lensCore.CanvasType.Capture : this.lensCore.CanvasType.Preview;
195
+ }
196
+ safelyDetachSource() {
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ if (this.source) {
199
+ try {
200
+ yield this.source.detach((error) => {
201
+ logger.error(cameraKitSourceError("Error occurred during source detachment.", error));
202
+ });
203
+ }
204
+ catch (error) {
205
+ logger.error(cameraKitSourceError(`Detaching prior source of type ${getTypeName(this.source)} failed.`, error));
206
+ }
207
+ }
208
+ });
209
+ }
210
+ },
211
+ (() => {
212
+ _applyLens_decorators = [validate(isLens, isLensLaunchDataOrUndefined), errorLoggingDecorator(logger)];
213
+ _removeLens_decorators = [errorLoggingDecorator(logger)];
214
+ _play_decorators = [validate(isRenderTargetOrUndefined), errorLoggingDecorator(logger)];
215
+ _pause_decorators = [validate(isRenderTargetOrUndefined), errorLoggingDecorator(logger)];
216
+ _mute_decorators = [errorLoggingDecorator(logger)];
217
+ _unmute_decorators = [errorLoggingDecorator(logger)];
218
+ _setSource_decorators = [validate(isAllowedSource, isPartialCameraKitDeviceOptionsOrUndefined), errorLoggingDecorator(logger)];
219
+ _setFPSLimit_decorators = [validate(isValidNumber), errorLoggingDecorator(logger)];
220
+ _destroy_decorators = [errorLoggingDecorator(logger)];
221
+ __esDecorate(_a, null, _applyLens_decorators, { kind: "method", name: "applyLens", static: false, private: false, access: { has: obj => "applyLens" in obj, get: obj => obj.applyLens } }, null, _instanceExtraInitializers);
222
+ __esDecorate(_a, null, _removeLens_decorators, { kind: "method", name: "removeLens", static: false, private: false, access: { has: obj => "removeLens" in obj, get: obj => obj.removeLens } }, null, _instanceExtraInitializers);
223
+ __esDecorate(_a, null, _play_decorators, { kind: "method", name: "play", static: false, private: false, access: { has: obj => "play" in obj, get: obj => obj.play } }, null, _instanceExtraInitializers);
224
+ __esDecorate(_a, null, _pause_decorators, { kind: "method", name: "pause", static: false, private: false, access: { has: obj => "pause" in obj, get: obj => obj.pause } }, null, _instanceExtraInitializers);
225
+ __esDecorate(_a, null, _mute_decorators, { kind: "method", name: "mute", static: false, private: false, access: { has: obj => "mute" in obj, get: obj => obj.mute } }, null, _instanceExtraInitializers);
226
+ __esDecorate(_a, null, _unmute_decorators, { kind: "method", name: "unmute", static: false, private: false, access: { has: obj => "unmute" in obj, get: obj => obj.unmute } }, null, _instanceExtraInitializers);
227
+ __esDecorate(_a, null, _setSource_decorators, { kind: "method", name: "setSource", static: false, private: false, access: { has: obj => "setSource" in obj, get: obj => obj.setSource } }, null, _instanceExtraInitializers);
228
+ __esDecorate(_a, null, _setFPSLimit_decorators, { kind: "method", name: "setFPSLimit", static: false, private: false, access: { has: obj => "setFPSLimit" in obj, get: obj => obj.setFPSLimit } }, null, _instanceExtraInitializers);
229
+ __esDecorate(_a, null, _destroy_decorators, { kind: "method", name: "destroy", static: false, private: false, access: { has: obj => "destroy" in obj, get: obj => obj.destroy } }, null, _instanceExtraInitializers);
230
+ })(),
231
+ _a;
232
+ })();
233
+ export { CameraKitSession };
234
+ export const cameraKitSessionFactory = Injectable("CameraKitSession", [
235
+ lensCoreFactory.token,
236
+ logEntriesFactory.token,
237
+ lensKeyboardFactory.token,
238
+ sessionStateFactory.token,
239
+ lensStateFactory.token,
240
+ pageVisibilityFactory.token,
241
+ ], (lensCore, logEntries, keyboard, sessionState, lensState, pageVisibility) => new CameraKitSession(keyboard, lensCore, sessionState, lensState, logEntries, pageVisibility));
242
+ //# sourceMappingURL=CameraKitSession.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSession.js","sourceRoot":"","sources":["../../src/session/CameraKitSession.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/member-ordering */\nimport type { Observable, Subscription } from \"rxjs\";\nimport { filter, firstValueFrom, map, of, takeUntil, tap } from \"rxjs\";\nimport { dispatch, forActions, inStates, isAction, isState } from \"@snap/state-management\";\nimport type { Lens } from \"../lens/Lens\";\nimport { isLens } from \"../lens/Lens\";\nimport { Injectable } from \"../dependency-injection/Injectable\";\nimport { lensCoreFactory } from \"../lens-core-module/loader/lensCoreFactory\";\nimport type { LensLaunchData } from \"../lens/LensLaunchData\";\nimport { isLensLaunchDataOrUndefined } from \"../lens/LensLaunchData\";\nimport { getTypeName, validate } from \"../common/validate\";\nimport { TypedEventTarget } from \"../events/TypedEventTarget\";\nimport { TypedCustomEvent } from \"../events/TypedCustomEvent\";\nimport type { CameraKitDeviceOptions, CameraKitSource } from \"../media-sources/CameraKitSource\";\nimport { isCameraKitSource, isPartialCameraKitDeviceOptionsOrUndefined } from \"../media-sources/CameraKitSource\";\nimport { cameraKitSourceError, LensExecutionError } from \"../namedErrors\";\nimport { createMediaStreamSource } from \"../media-sources/MediaStreamSource\";\nimport { createVideoSource } from \"../media-sources/VideoSource\";\nimport type { LogEntry } from \"../logger/logger\";\nimport { getLogger } from \"../logger/logger\";\nimport { errorLoggingDecorator } from \"../logger/errorLoggingDecorator\";\nimport { logEntriesFactory } from \"../logger/logEntries\";\nimport type { PageVisibility } from \"../common/pageVisibility\";\nimport { pageVisibilityFactory } from \"../common/pageVisibility\";\nimport type { LensCore } from \"../lens-core-module/lensCore\";\nimport type { CanvasType } from \"../lens-core-module/generated-types\";\nimport { isUndefined, isValidNumber } from \"../common/typeguards\";\nimport { LensPerformanceMetrics } from \"./LensPerformanceMetrics\";\nimport type { LensState } from \"./lensState\";\nimport { lensStateFactory } from \"./lensState\";\nimport type { SessionState } from \"./sessionState\";\nimport { sessionStateFactory } from \"./sessionState\";\nimport type { Keyboard, LensKeyboard } from \"./LensKeyboard\";\nimport { lensKeyboardFactory } from \"./LensKeyboard\";\nimport type { CameraKitSessionEvents } from \"./CameraKitSessionEvents\";\nimport { isPublicLensError } from \"./CameraKitSessionEvents\";\n\nconst logger = getLogger(\"CameraKitSession\");\n\nfunction isAllowedSource(value: unknown): value is CameraKitSource | MediaStream | HTMLVideoElement {\n return isCameraKitSource(value) || isMediaStream(value) || isHTMLVideoElement(value);\n}\nfunction isMediaStream(value: unknown): value is MediaStream {\n return value instanceof MediaStream;\n}\nfunction isHTMLVideoElement(value: unknown): value is HTMLVideoElement {\n return value instanceof HTMLVideoElement;\n}\n\nfunction isRenderTargetOrUndefined(value: unknown): value is RenderTarget | undefined {\n return isUndefined(value) || value === \"live\" || value === \"capture\";\n}\n\n/**\n * Enumerates the supported render targets.\n *\n * Lenses may render to different render targets, as designed by the lens creator. In CameraKit, it's possible to choose\n * which render target to render, and the result for each target is available as a separate `<canvas>` element.\n *\n * @category Rendering\n * @category Lenses\n */\nexport type RenderTarget = \"live\" | \"capture\";\n\n/**\n * A CameraKitSession represents a single rendering pipeline connecting an input media source to output `<canvas>`\n * elements. When a Lens is applied to the session, CameraKit uses the Lens to transform the input media into rendered\n * output.\n *\n * CameraKitSession is the primary object that applications interact with when integrating the CameraKit SDK.\n *\n * A CameraKitSession instance is obtained by calling {@link CameraKit.createSession}.\n *\n * @example\n * ```ts\n * const cameraKit = await bootstrapCameraKit(config)\n * const session = await cameraKit.createSession()\n * ```\n *\n * @category Rendering\n * @category Lenses\n */\nclass CameraKitSession {\n /**\n * CameraKitSession renders video output to a `<canvas>` element. In fact, each session contains two canvas outputs\n * corresponding to the RenderTargets used by Lens creators, when using LensStudio to create a Lens.\n *\n * The `live` output renders content suitable for the Lens user (e.g. it may contain additional UI elements\n * applicable only to the person applying the lens). The `capture` output renders content suitable for sharing with\n * other users (e.g. sent to the other members of a video call, or saved to disk for sharing later).\n *\n * For many lenses, these outputs are identical – but each lens is free to render differently, based on its own\n * use-case.\n */\n readonly output: {\n live: HTMLCanvasElement;\n capture: HTMLCanvasElement;\n };\n\n /**\n * Indicates whether or not the session is currently rendering. If `false`, rendering is stopped. Otherwise the\n * value indicates which output is being rendered.\n */\n playing: {\n live: boolean;\n capture: boolean;\n };\n\n /**\n * Add event listeners here to handle events which occur during the CameraKitSession.\n *\n * **Note:** Applications may want to handle the `error` event, and check the contained error type -- if the type\n * is {@link LensExecutionError}, this means the current lens was unable to render and CameraKit will automatically\n * remove the lens.\n *\n * @example\n * ```ts\n * cameraKitSession.events.addEventListener('error', ({ detail }) => {\n * if (detail.error.name === 'LensExecutionError') {\n * console.log(`Lens ${detail.lens.name} encountered an error and was removed. Please pick a different lens.`)\n * }\n * })\n * ```\n */\n readonly events = new TypedEventTarget<CameraKitSessionEvents>();\n\n /**\n * Use this to measure current lens performance.\n */\n readonly metrics: LensPerformanceMetrics;\n\n private readonly removePageVisibilityHandlers: () => void;\n private source?: CameraKitSource;\n private subscriptions: Subscription[];\n\n /**\n * @internal\n */\n constructor(\n /**\n * Use this to interact with lenses which require text input.\n */\n public readonly keyboard: Keyboard,\n\n private readonly lensCore: LensCore,\n private readonly sessionState: SessionState,\n private readonly lensState: LensState,\n logEntries: Observable<LogEntry>,\n pageVisibility: PageVisibility\n ) {\n const outputs = this.lensCore.getOutputCanvases();\n this.output = {\n live: outputs[this.lensCore.CanvasType.Preview.value],\n capture: outputs[this.lensCore.CanvasType.Capture.value],\n };\n this.playing = {\n live: false,\n capture: false,\n };\n\n this.metrics = new LensPerformanceMetrics(this.lensCore);\n\n const removeOnHidden = pageVisibility.onPageHidden(() => this.sessionState.dispatch(\"suspend\", this));\n const removeOnVisible = pageVisibility.onPageVisible(() => this.sessionState.dispatch(\"resume\", this));\n this.removePageVisibilityHandlers = () => {\n removeOnHidden();\n removeOnVisible();\n };\n\n this.subscriptions = [\n // In case of an abort error, the only option is to destroy the current session,\n // as it becomes inoperable.\n lensCore.errors\n .pipe(filter((error) => error.name === \"LensCoreAbortError\"))\n .subscribe(() => this.destroy()),\n\n // In case of LensCore lens execution error, we must remove the lens from rendering\n // NOTE: LensCore doesn't differentiate recoverable vs non-recoverable errors and\n // it is recommended to always remove the lens.\n lensCore.errors\n .pipe(filter((error) => error.name !== \"LensCoreAbortError\" && error.isFrameError))\n .subscribe(() => this.removeLens()),\n\n // Forward logged errors that are public to the app\n logEntries\n .pipe(\n filter((entry) => entry.level === \"error\"),\n map((entry) => entry.messages.find((e) => e instanceof Error)),\n filter(isPublicLensError)\n )\n .subscribe((error) => {\n const state = lensState.getState();\n if (!isState(state, \"noLensApplied\")) {\n this.events.dispatchEvent(new TypedCustomEvent(\"error\", { error, lens: state.data }));\n } else {\n // NOTE: at this point the error is already reported, so we can just log a warning\n logger.warn(\"Lens error occurred even though there is no active lens.\", error);\n }\n }),\n ];\n }\n\n /**\n * Apply a Lens to this session.\n *\n * This method will download (and cache) the Lens executable, and then use that Lens for rendering. If the session\n * is currently playing, this will immediately update the rendered output. Otherwise, the new Lens will be used\n * when session playback in resumed.\n *\n * Calling `applyLens` replaces any prior Lens – only one Lens is allowed at a time (per session).\n *\n * **NOTE**: Errors may occur after the Lens is applied. If the Lens encounters errors while rendering,\n * Camera Kit will automatically remove the Lens from the session and emit a {@link LensExecutionError} event.\n * Applications may want to listen for this error and, for example,\n * prevent the Lens from being selected again by the user.\n *\n * ```ts\n * session.events.addEventListener(\"error\", ({ detail }) => {\n * if (detail.error.name === \"LensExecutionError\") {\n * preventFutureLensSelection(detail.lens);\n * showMessage(\"We're sorry, but the Lens you selected encountered an error. Please choose a different Lens.\");\n * }\n * });\n * ```\n *\n * @param lens The Lens to apply to this session.\n * @param launchData This can optionally be provided to pass some initial data to the Lens – only certain Lenses\n * expect launch data.\n * @returns A promise which can have the following results:\n * 1. Resolved with `true`: the Lens has been applied.\n * 2. Resolved with `false`: the Lens has not been applied, but no error occurred – this can happen if a\n * subsequent call to `applyLens` interrupted the Lens application.\n * 3. Rejected: the Lens has not been applied because an error occurred. This can happen if:\n * - The Lens ID cannot be found in the LensRepository (use LensRepository to load the Lens before calling this\n * method)\n * - Lens content download fails, or the download of any required lens assets fails.\n * - An internal failure occurs in the Lens rendering engine when attempting to apply the Lens.\n */\n @validate(isLens, isLensLaunchDataOrUndefined)\n @errorLoggingDecorator(logger)\n async applyLens(lens: Lens, launchData?: LensLaunchData): Promise<boolean> {\n const action = this.lensState.actions.applyLens({ lens, launchData });\n return firstValueFrom(\n of(action).pipe(\n dispatch(this.lensState),\n\n // If another applyLens occurs while we're waiting, resolve this applyLens promise early – we're no\n // longer waiting for the requested lens to be applied.\n takeUntil(\n this.lensState.events.pipe(\n forActions(\"applyLens\"),\n filter(([a]) => a !== action)\n )\n ),\n\n // If lens application failed, convert this into a rejected promise by throwing the error.\n tap(([a]) => {\n if (isAction(a, \"applyLensFailed\") && a.data.lens.id === lens.id) throw a.data.error;\n }),\n\n inStates(\"lensApplied\"),\n\n map(() => true)\n ),\n // The default value is used if `takeUntil` completes the Observable early – i.e. the lens was not\n // applied (application was interrupted by a new call to `applyLens`), so we'll resolve with `false`.\n { defaultValue: false }\n );\n }\n\n /**\n * Remove a Lens from this session.\n *\n * When a Lens is removed, rendering continues if the session is playing. It will just render the session input\n * directly to the outputs without any image processing.\n *\n * @returns A promise which can have the following results:\n * 1. Resolved with `true`: the session's rendered output has no lens applied.\n * 2. Resolved with `false`: the current lens has been removed, but a subsequent call to `applyLens` means that the\n * session's rendered output will still have a (new) lens applied.\n * 3. Rejected: the lens has failed to be removed. This can happen if an internal failure occurs in the Lens\n * rendering engine when attempting to remove the lens.\n */\n @errorLoggingDecorator(logger)\n async removeLens(): Promise<boolean> {\n if (isState(this.lensState.getState(), \"noLensApplied\")) return true;\n return firstValueFrom(\n of(this.lensState.actions.removeLens()).pipe(\n dispatch(this.lensState),\n // If lens removal failed, convert this into a rejected promise by throwing the error.\n tap(([a]) => {\n if (isAction(a, \"removeLensFailed\")) throw a.data;\n }),\n inStates(\"noLensApplied\"),\n\n // If applyLens is called while we're waiting for removal, complete immediately – applying the next lens\n // will replace the current one.\n takeUntil(this.lensState.events.pipe(forActions(\"applyLens\"))),\n map(() => true)\n ),\n // The default value is used if `takeUntil` completes the Observable early (otherwise firstValueFrom will\n // return a rejected Promise).\n { defaultValue: false }\n );\n }\n\n /**\n * Start/resume session playback – LensCore will begin rendering frames to the output.\n *\n * If no source has been set for the session, calling `play()` will update the playing state, but no actual image\n * processing will occur until `setSource()` is called.\n *\n * @example\n * ```ts\n * const cameraKitSession = await cameraKit.createSession()\n * await cameraKitSession.setSource(mySource)\n * await cameraKitSession.play()\n *\n * // If you call `play` before `setSource`, the call to `play` will resolve but playback will only begin once a\n * // media source has been set.\n * ```\n *\n * @param target Specify the {@link RenderTarget} to render. Defaults to the `live` RenderTarget.\n * @returns Promise resolves when playback state has been updated. If no source has been set, this means `play` will\n * resolve before any frames are processed -- but once a source is set, frames will immediately begin processing.\n */\n @validate(isRenderTargetOrUndefined)\n @errorLoggingDecorator(logger)\n async play(target: RenderTarget = \"live\"): Promise<void> {\n if (this.playing[target]) return;\n\n this.playing[target] = true;\n const type = this.renderTargetToCanvasType(target);\n return this.lensCore.playCanvas({ type }).catch((error) => {\n this.playing[target] = false;\n throw error;\n });\n }\n\n /**\n * Pause session playback – LensCore will stop rendering frames to the output.\n *\n * @param target Specify the RenderTarget to pause playback. May be either `'live'` or `'capture'`.\n * Default is `'live'`.\n * @returns Promise resolves when playback has stopped.\n */\n @validate(isRenderTargetOrUndefined)\n @errorLoggingDecorator(logger)\n async pause(target: RenderTarget = \"live\"): Promise<void> {\n if (this.playing[target] === false) return;\n this.playing[target] = false;\n const type = this.renderTargetToCanvasType(target);\n return this.lensCore.pauseCanvas({ type }).catch((error) => {\n this.playing[target] = true;\n throw error;\n });\n }\n\n /**\n * Mute all sounds (default SDK state is unmuted).\n *\n * @param fade Do we want audio to fade out?\n */\n @errorLoggingDecorator(logger)\n mute(fade: boolean = false): void {\n this.lensCore.setAllSoundsMuted({\n muted: true,\n fade,\n });\n }\n\n /**\n * Unmute all sounds.\n *\n * @param fade Do we want audio to fade in?\n */\n @errorLoggingDecorator(logger)\n unmute(fade: boolean = false): void {\n this.lensCore.setAllSoundsMuted({\n muted: false,\n fade,\n });\n }\n\n /**\n * Set the media source for this session.\n *\n * Sessions may only have one source at a time - if `setSource` is called multiple times, subsequent calls replace\n * the prior source. Setting the source does not trigger rendering (that’s done by `session.play()`). If the session\n * is already playing, setting the source will immediately begin rendering the new source.\n *\n * The CameraKit SDK provides implementations for various common sources, which applications can create using the\n * following functions:\n * - {@link createMediaStreamSource}\n * - {@link createVideoSource}\n * - {@link createImageSource}\n *\n * @param source A CameraKitSource object representing input media (e.g. a webcam stream, video, or some other\n * source of image data), which CameraKit will supply to Lenses in order for them to render effects on top of that\n * source.\n * @returns Promise is resolved when the source has successfully be set. If the session was already in the playing\n * state, the Promise resolves when the first frame from the new source has been rendered. The resolved value is\n * the {@link CameraKitSource} object attached to the session.\n */\n async setSource(source: CameraKitSource): Promise<CameraKitSource>;\n async setSource(\n source: MediaStream | HTMLVideoElement,\n options?: Partial<CameraKitDeviceOptions>\n ): Promise<CameraKitSource>;\n\n @validate(isAllowedSource, isPartialCameraKitDeviceOptionsOrUndefined)\n @errorLoggingDecorator(logger)\n async setSource(\n source: CameraKitSource | MediaStream | HTMLVideoElement,\n options: Partial<CameraKitDeviceOptions> = {}\n ): Promise<CameraKitSource> {\n await this.safelyDetachSource();\n\n // For convenience, we allow callers to pass in native objects (e.g. MediaStream) as well as CameraKitSource.\n // Native objects are wrapped in corresponding CameraKitSource classes with default options.\n const cameraKitSource = isMediaStream(source)\n ? createMediaStreamSource(source, options)\n : isHTMLVideoElement(source)\n ? createVideoSource(source, options)\n : source;\n\n const priorPlayingState = this.playing;\n this.playing = {\n live: false,\n capture: false,\n };\n\n // The source will provide its data to LensCore, and use other LensCore APIs (e.g. setRenderSize,\n // setInputTransform) to render the source correctly.\n await cameraKitSource.attach(this.lensCore, (error) => {\n logger.error(cameraKitSourceError(\"Error occurred during source attachment.\", error));\n });\n\n // If attachment is successful, we'll update our source so that we can detach it later.\n this.source = cameraKitSource;\n\n // Finally we'll resume playback, if appropriate.\n if (priorPlayingState.live) await this.play(\"live\");\n if (priorPlayingState.capture) await this.play(\"capture\");\n\n return cameraKitSource;\n }\n\n /**\n * Set an FPS limit.\n *\n * This may be useful to reduce CPU/GPU resource usage by CameraKit if, for example, the input\n * media source has a low FPS – CameraKit would then not try to render more frequently than the source produces\n * new frames.\n *\n * This may also be useful to gracefully degrade performance in situations where lowering FPS is preferable over\n * alternatives.\n *\n * @param fpsLimit A maximum FPS, rendering will not exceed this limit\n * @returns Promise is resolved when the limit is successfully set.\n */\n @validate(isValidNumber)\n @errorLoggingDecorator(logger)\n async setFPSLimit(fpsLimit: number): Promise<void> {\n // LensCore uses 0 to remove the limit.\n const fps = fpsLimit < Number.POSITIVE_INFINITY ? fpsLimit : 0;\n return this.lensCore.setFPSLimit({ fps });\n }\n\n /**\n * Destroy the session.\n *\n * The session will become inoperable. Frame processing stops, and any session-scoped graphical resources are freed.\n */\n @errorLoggingDecorator(logger)\n async destroy(): Promise<void> {\n try {\n await this.lensCore.clearAllLenses();\n await this.lensCore.teardown();\n } catch (error) {\n // If a LensCore is in an aborted state, the above lines may throw an error.\n // In such cases, we should continue with the cleanup process.\n // We are also not interested in reporting these errors to our backend.\n logger.warn(\"An error occurred in LensCore during the session termination process.\", error);\n }\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n await this.safelyDetachSource();\n this.removePageVisibilityHandlers();\n this.sessionState.dispatch(\"destroy\", undefined);\n }\n\n private renderTargetToCanvasType(target: RenderTarget): CanvasType {\n return target === \"capture\" ? this.lensCore.CanvasType.Capture : this.lensCore.CanvasType.Preview;\n }\n\n private async safelyDetachSource(): Promise<void> {\n if (this.source) {\n try {\n await this.source.detach((error) => {\n logger.error(cameraKitSourceError(\"Error occurred during source detachment.\", error));\n });\n // If there's a failure to detach, we will report the error and proceed. Failure to detach may lead to a\n // memory leak, but it shouldn't prevent us from switching to the new source.\n } catch (error) {\n logger.error(\n cameraKitSourceError(`Detaching prior source of type ${getTypeName(this.source)} failed.`, error)\n );\n }\n }\n }\n}\n\n// NOTE: jest doesn't like default exports of classes with decorated methods.\nexport { CameraKitSession };\n\n/**\n * @internal\n */\nexport const cameraKitSessionFactory = Injectable(\n \"CameraKitSession\",\n [\n lensCoreFactory.token,\n logEntriesFactory.token,\n lensKeyboardFactory.token,\n sessionStateFactory.token,\n lensStateFactory.token,\n pageVisibilityFactory.token,\n ] as const,\n (\n lensCore: LensCore,\n logEntries: Observable<LogEntry>,\n keyboard: LensKeyboard,\n sessionState: SessionState,\n lensState: LensState,\n pageVisibility: PageVisibility\n ) => new CameraKitSession(keyboard, lensCore, sessionState, lensState, logEntries, pageVisibility)\n);\n"]}
@@ -0,0 +1,29 @@
1
+ import type { LensExecutionError, LensImagePickerError, LensAbortError } from "../namedErrors";
2
+ import type { TypedCustomEvent } from "../events/TypedCustomEvent";
3
+ import type { TypedEventListener } from "../events/TypedEventTarget";
4
+ import type { Lens } from "../lens/Lens";
5
+ /**
6
+ * Events emitted by {@link CameraKitSession.events | CameraKitSession.events}.
7
+ *
8
+ * The following events are emitted:
9
+ * - `error`: An error has been encountered during lens rendering. May contain an error of type:
10
+ * - {@link LensExecutionError} If an error of this type occurs, the rendering lens will be automatically removed
11
+ * from the associated CameraKitSession.
12
+ * - {@link LensImagePickerError}
13
+ *
14
+ * @category Rendering
15
+ * @category Lenses
16
+ */
17
+ export type CameraKitSessionEvents = TypedCustomEvent<"error", {
18
+ error: LensExecutionError | LensAbortError | LensImagePickerError;
19
+ lens: Lens;
20
+ }>;
21
+ /**
22
+ * Listener of {@link CameraKitSessionEvents} events.
23
+ */
24
+ export type CameraKitSessionEventListener = TypedEventListener<CameraKitSessionEvents>;
25
+ /**
26
+ * Determines if the value is an error to be reported to the host application.
27
+ */
28
+ export declare function isPublicLensError(value: unknown): value is CameraKitSessionEvents["detail"]["error"];
29
+ //# sourceMappingURL=CameraKitSessionEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSessionEvents.d.ts","sourceRoot":"","sources":["../../src/session/CameraKitSessionEvents.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAOzC;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,sBAAsB,GAAG,gBAAgB,CACjD,OAAO,EACP;IAAE,KAAK,EAAE,kBAAkB,GAAG,cAAc,GAAG,oBAAoB,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,CACpF,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,6BAA6B,GAAG,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;AAEvF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,sBAAsB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAYpG"}
@@ -0,0 +1,15 @@
1
+ const isReachable = (_) => false;
2
+ export function isPublicLensError(value) {
3
+ if (!(value instanceof Error))
4
+ return false;
5
+ const maybeSessionErrorName = value.name;
6
+ switch (maybeSessionErrorName) {
7
+ case "LensAbortError":
8
+ case "LensExecutionError":
9
+ case "LensImagePickerError":
10
+ return true;
11
+ default:
12
+ return isReachable(maybeSessionErrorName);
13
+ }
14
+ }
15
+ //# sourceMappingURL=CameraKitSessionEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSessionEvents.js","sourceRoot":"","sources":["../../src/session/CameraKitSessionEvents.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,GAAG,CAAC,CAAQ,EAAE,EAAE,CAAC,KAAK,CAAC;AA2BxC,MAAM,UAAU,iBAAiB,CAAC,KAAc;IAC5C,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE5C,MAAM,qBAAqB,GAAI,KAAmD,CAAC,IAAI,CAAC;IACxF,QAAQ,qBAAqB,EAAE;QAC3B,KAAK,gBAAgB,CAAC;QACtB,KAAK,oBAAoB,CAAC;QAC1B,KAAK,sBAAsB;YACvB,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,WAAW,CAAC,qBAAqB,CAAC,CAAC;KACjD;AACL,CAAC","sourcesContent":["import type { LensExecutionError, LensImagePickerError, LensAbortError } from \"../namedErrors\";\nimport type { TypedCustomEvent } from \"../events/TypedCustomEvent\";\nimport type { TypedEventListener } from \"../events/TypedEventTarget\";\nimport type { Lens } from \"../lens/Lens\";\n\n/**\n * A type guard helper to detect unreachable code.\n */\nconst isReachable = (_: never) => false;\n\n/**\n * Events emitted by {@link CameraKitSession.events | CameraKitSession.events}.\n *\n * The following events are emitted:\n * - `error`: An error has been encountered during lens rendering. May contain an error of type:\n * - {@link LensExecutionError} If an error of this type occurs, the rendering lens will be automatically removed\n * from the associated CameraKitSession.\n * - {@link LensImagePickerError}\n *\n * @category Rendering\n * @category Lenses\n */\nexport type CameraKitSessionEvents = TypedCustomEvent<\n \"error\",\n { error: LensExecutionError | LensAbortError | LensImagePickerError; lens: Lens }\n>;\n\n/**\n * Listener of {@link CameraKitSessionEvents} events.\n */\nexport type CameraKitSessionEventListener = TypedEventListener<CameraKitSessionEvents>;\n\n/**\n * Determines if the value is an error to be reported to the host application.\n */\nexport function isPublicLensError(value: unknown): value is CameraKitSessionEvents[\"detail\"][\"error\"] {\n if (!(value instanceof Error)) return false;\n\n const maybeSessionErrorName = (value as CameraKitSessionEvents[\"detail\"][\"error\"]).name;\n switch (maybeSessionErrorName) {\n case \"LensAbortError\":\n case \"LensExecutionError\":\n case \"LensImagePickerError\":\n return true;\n default:\n return isReachable(maybeSessionErrorName);\n }\n}\n"]}