@snap/camera-kit 0.16.2 → 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 (1220) hide show
  1. package/LICENSE.md +141 -3875
  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 +20 -0
  547. package/dist/remote-configuration/preloadConfiguration.js.map +1 -0
  548. package/dist/remote-configuration/remoteConfiguration.d.ts +36 -0
  549. package/dist/remote-configuration/remoteConfiguration.d.ts.map +1 -0
  550. package/dist/remote-configuration/remoteConfiguration.js +59 -0
  551. package/dist/remote-configuration/remoteConfiguration.js.map +1 -0
  552. package/dist/session/CameraKitSession.d.ts +257 -0
  553. package/dist/session/CameraKitSession.d.ts.map +1 -0
  554. package/dist/session/CameraKitSession.js +242 -0
  555. package/dist/session/CameraKitSession.js.map +1 -0
  556. package/dist/session/CameraKitSessionEvents.d.ts +29 -0
  557. package/dist/session/CameraKitSessionEvents.d.ts.map +1 -0
  558. package/dist/session/CameraKitSessionEvents.js +15 -0
  559. package/dist/session/CameraKitSessionEvents.js.map +1 -0
  560. package/dist/session/LensKeyboard.d.ts +90 -0
  561. package/dist/session/LensKeyboard.d.ts.map +1 -0
  562. package/dist/session/LensKeyboard.js +89 -0
  563. package/dist/session/LensKeyboard.js.map +1 -0
  564. package/dist/session/LensPerformanceMeasurement.d.ts +58 -0
  565. package/dist/session/LensPerformanceMeasurement.d.ts.map +1 -0
  566. package/dist/session/LensPerformanceMeasurement.js +63 -0
  567. package/dist/session/LensPerformanceMeasurement.js.map +1 -0
  568. package/dist/session/LensPerformanceMetrics.d.ts +32 -0
  569. package/dist/session/LensPerformanceMetrics.d.ts.map +1 -0
  570. package/dist/session/LensPerformanceMetrics.js +39 -0
  571. package/dist/session/LensPerformanceMetrics.js.map +1 -0
  572. package/dist/session/lensState.d.ts +32 -0
  573. package/dist/session/lensState.d.ts.map +1 -0
  574. package/dist/session/lensState.js +194 -0
  575. package/dist/session/lensState.js.map +1 -0
  576. package/dist/session/sessionState.d.ts +11 -0
  577. package/dist/session/sessionState.d.ts.map +1 -0
  578. package/dist/session/sessionState.js.map +1 -0
  579. package/dist/transforms/Transform2D.d.ts +27 -0
  580. package/dist/transforms/Transform2D.d.ts.map +1 -0
  581. package/dist/transforms/Transform2D.js +13 -0
  582. package/dist/transforms/Transform2D.js.map +1 -0
  583. package/dist/utils.d.ts +4 -0
  584. package/dist/utils.d.ts.map +1 -0
  585. package/docs/html/assets/navigation.js +1 -1
  586. package/docs/html/assets/search.js +1 -1
  587. package/docs/html/classes/CameraKit.html +2 -2
  588. package/docs/html/classes/CameraKitSession.html +2 -2
  589. package/docs/html/classes/CameraKitSource.html +2 -2
  590. package/docs/html/classes/LensPerformanceMeasurement.html +2 -2
  591. package/docs/html/classes/LensPerformanceMetrics.html +2 -2
  592. package/docs/html/classes/LensRepository.html +3 -3
  593. package/docs/html/classes/Transform2D.html +2 -2
  594. package/docs/html/classes/TypedCustomEvent.html +2 -2
  595. package/docs/html/classes/TypedEventTarget.html +2 -2
  596. package/docs/html/enums/Lens_CameraFacing.html +2 -2
  597. package/docs/html/functions/ConcatInjectable.html +2 -2
  598. package/docs/html/functions/Injectable.html +2 -2
  599. package/docs/html/functions/bootstrapCameraKit.html +2 -2
  600. package/docs/html/functions/createExtension.html +2 -2
  601. package/docs/html/functions/createImageSource.html +2 -2
  602. package/docs/html/functions/createMediaStreamSource.html +2 -2
  603. package/docs/html/functions/createVideoSource.html +2 -2
  604. package/docs/html/functions/estimateLensPerformance.html +2 -2
  605. package/docs/html/functions/lensSourcesFactory.html +2 -2
  606. package/docs/html/functions/remoteApiServicesFactory.html +2 -2
  607. package/docs/html/hierarchy.html +1 -1
  608. package/docs/html/index.html +3 -3
  609. package/docs/html/interfaces/BitmojiUserInfo.html +3 -0
  610. package/docs/html/interfaces/CameraKitBootstrapConfiguration.html +2 -2
  611. package/docs/html/interfaces/CameraKitDeviceOptions.html +2 -2
  612. package/docs/html/interfaces/CameraKitSourceInfo.html +2 -2
  613. package/docs/html/interfaces/CameraKitSourceSubscriber.html +2 -2
  614. package/docs/html/interfaces/ComputedFrameMetrics.html +2 -2
  615. package/docs/html/interfaces/CreateSessionOptions.html +2 -2
  616. package/docs/html/interfaces/EstimatedLensPerformance.html +2 -2
  617. package/docs/html/interfaces/FriendUserInfo.html +4 -0
  618. package/docs/html/interfaces/FunctionSourceOptions.html +2 -2
  619. package/docs/html/interfaces/Lens.html +2 -2
  620. package/docs/html/interfaces/LensCreator.html +2 -2
  621. package/docs/html/interfaces/LensLaunchData.html +3 -3
  622. package/docs/html/interfaces/LensSource.html +2 -2
  623. package/docs/html/interfaces/LensUserData.html +10 -0
  624. package/docs/html/interfaces/LoadAssetRequest.html +2 -2
  625. package/docs/html/interfaces/MediaStreamSourceOptions.html +2 -2
  626. package/docs/html/interfaces/Preview.html +2 -2
  627. package/docs/html/interfaces/RemoteApiRequest.html +2 -2
  628. package/docs/html/interfaces/RemoteApiResponse.html +4 -4
  629. package/docs/html/interfaces/RemoteApiService.html +3 -3
  630. package/docs/html/interfaces/Snapcode.html +2 -2
  631. package/docs/html/interfaces/UriCancelRequest.html +2 -2
  632. package/docs/html/interfaces/UriRequest.html +2 -2
  633. package/docs/html/interfaces/UriResponse.html +2 -2
  634. package/docs/html/interfaces/VideoSourceOptions.html +2 -2
  635. package/docs/html/modules.html +7 -3
  636. package/docs/html/types/ArgumentValidationError.html +2 -0
  637. package/docs/html/types/AssetLoader.html +2 -2
  638. package/docs/html/types/AssetResponse.html +1 -1
  639. package/docs/html/types/AssetTiming.html +2 -2
  640. package/docs/html/types/BenchmarkError.html +1 -1
  641. package/docs/html/types/BootstrapError.html +2 -2
  642. package/docs/html/types/CacheKeyNotFoundError.html +1 -1
  643. package/docs/html/types/CameraKitSessionEventListener.html +2 -2
  644. package/docs/html/types/CameraKitSessionEvents.html +2 -2
  645. package/docs/html/types/CameraKitSourceError.html +1 -1
  646. package/docs/html/types/ConfigurationError.html +2 -2
  647. package/docs/html/types/FetchHandler.html +1 -1
  648. package/docs/html/types/Keyboard.html +2 -2
  649. package/docs/html/types/KeyboardEvents.html +2 -2
  650. package/docs/html/types/LegalError.html +1 -1
  651. package/docs/html/types/LensAbortError.html +2 -2
  652. package/docs/html/types/LensAssetError.html +2 -2
  653. package/docs/html/types/LensContentValidationError.html +1 -1
  654. package/docs/html/types/LensError.html +1 -1
  655. package/docs/html/types/LensExecutionError.html +2 -2
  656. package/docs/html/types/LensImagePickerError.html +2 -2
  657. package/docs/html/types/LensLaunchParams.html +2 -2
  658. package/docs/html/types/LensMetricsEvents.html +2 -2
  659. package/docs/html/types/LensPerformanceCluster.html +1 -1
  660. package/docs/html/types/LensView.html +2 -2
  661. package/docs/html/types/LensWait.html +2 -2
  662. package/docs/html/types/Matrix.html +2 -2
  663. package/docs/html/types/PersistentStoreError.html +2 -2
  664. package/docs/html/types/PlatformNotSupportedError.html +2 -2
  665. package/docs/html/types/PublicContainer.html +2 -2
  666. package/docs/html/types/PublicServices.html +2 -2
  667. package/docs/html/types/RemoteApiCancelRequestHandler.html +2 -2
  668. package/docs/html/types/RemoteApiRequestHandler.html +2 -2
  669. package/docs/html/types/RemoteApiServices.html +1 -1
  670. package/docs/html/types/RemoteApiStatus.html +2 -2
  671. package/docs/html/types/RenderTarget.html +2 -2
  672. package/docs/html/types/Uri.html +1 -1
  673. package/docs/html/types/WebGLError.html +1 -1
  674. package/docs/html/types/Zodiac.html +1 -0
  675. package/docs/html/variables/extensionRequestContext.html +2 -2
  676. package/docs/md/README.md +1 -1
  677. package/docs/md/classes/CameraKit.md +1 -1
  678. package/docs/md/classes/CameraKitSession.md +1 -1
  679. package/docs/md/classes/CameraKitSource.md +1 -1
  680. package/docs/md/classes/LensPerformanceMeasurement.md +1 -1
  681. package/docs/md/classes/LensPerformanceMetrics.md +1 -1
  682. package/docs/md/classes/LensRepository.md +2 -2
  683. package/docs/md/classes/Transform2D.md +1 -1
  684. package/docs/md/classes/TypedCustomEvent.md +1 -1
  685. package/docs/md/classes/TypedEventTarget.md +1 -1
  686. package/docs/md/enums/Lens_CameraFacing.md +1 -1
  687. package/docs/md/interfaces/BitmojiUserInfo.md +22 -0
  688. package/docs/md/interfaces/CameraKitBootstrapConfiguration.md +1 -1
  689. package/docs/md/interfaces/CameraKitDeviceOptions.md +1 -1
  690. package/docs/md/interfaces/CameraKitSourceInfo.md +1 -1
  691. package/docs/md/interfaces/CameraKitSourceSubscriber.md +1 -1
  692. package/docs/md/interfaces/ComputedFrameMetrics.md +1 -1
  693. package/docs/md/interfaces/CreateSessionOptions.md +1 -1
  694. package/docs/md/interfaces/EstimatedLensPerformance.md +1 -1
  695. package/docs/md/interfaces/FriendUserInfo.md +29 -0
  696. package/docs/md/interfaces/FunctionSourceOptions.md +1 -1
  697. package/docs/md/interfaces/Lens.md +1 -1
  698. package/docs/md/interfaces/LensCreator.md +1 -1
  699. package/docs/md/interfaces/LensLaunchData.md +2 -21
  700. package/docs/md/interfaces/LensSource.md +1 -1
  701. package/docs/md/interfaces/LensUserData.md +71 -0
  702. package/docs/md/interfaces/LoadAssetRequest.md +1 -1
  703. package/docs/md/interfaces/MediaStreamSourceOptions.md +1 -1
  704. package/docs/md/interfaces/Preview.md +1 -1
  705. package/docs/md/interfaces/RemoteApiRequest.md +1 -1
  706. package/docs/md/interfaces/RemoteApiResponse.md +2 -2
  707. package/docs/md/interfaces/RemoteApiService.md +2 -2
  708. package/docs/md/interfaces/Snapcode.md +1 -1
  709. package/docs/md/interfaces/UriCancelRequest.md +1 -1
  710. package/docs/md/interfaces/UriRequest.md +1 -1
  711. package/docs/md/interfaces/UriResponse.md +1 -1
  712. package/docs/md/interfaces/VideoSourceOptions.md +1 -1
  713. package/docs/md/modules.md +23 -5
  714. package/package.json +14 -12
  715. package/docs/html/enums/UserData_Zodiac.html +0 -15
  716. package/docs/md/enums/UserData_Zodiac.md +0 -106
  717. package/lib/CameraKit.d.ts +0 -333
  718. package/lib/CameraKit.js +0 -176
  719. package/lib/CameraKit.js.map +0 -1
  720. package/lib/__tests__/data.d.ts +0 -14
  721. package/lib/__tests__/data.js +0 -69
  722. package/lib/__tests__/data.js.map +0 -1
  723. package/lib/__tests__/deferred.d.ts +0 -16
  724. package/lib/__tests__/deferred.js +0 -29
  725. package/lib/__tests__/deferred.js.map +0 -1
  726. package/lib/__tests__/jest.matchers.d.ts +0 -17
  727. package/lib/__tests__/jest.matchers.js +0 -67
  728. package/lib/__tests__/jest.matchers.js.map +0 -1
  729. package/lib/benchmark/benchmarkGflops.d.ts +0 -16
  730. package/lib/benchmark/benchmarkGflops.js +0 -129
  731. package/lib/benchmark/benchmarkGflops.js.map +0 -1
  732. package/lib/benchmark/estimateLensPerformanceCluster.d.ts +0 -33
  733. package/lib/benchmark/estimateLensPerformanceCluster.js +0 -48
  734. package/lib/benchmark/estimateLensPerformanceCluster.js.map +0 -1
  735. package/lib/benchmark/webglUtils.d.ts +0 -7
  736. package/lib/bootstrapCameraKit.d.ts +0 -96
  737. package/lib/bootstrapCameraKit.js +0 -220
  738. package/lib/bootstrapCameraKit.js.map +0 -1
  739. package/lib/clients/createTsProtoClient.d.ts +0 -40
  740. package/lib/clients/createTsProtoClient.js +0 -52
  741. package/lib/clients/createTsProtoClient.js.map +0 -1
  742. package/lib/clients/grpcHandler.d.ts +0 -26
  743. package/lib/clients/grpcHandler.js +0 -90
  744. package/lib/clients/grpcHandler.js.map +0 -1
  745. package/lib/clients/lensesClient.d.ts +0 -9
  746. package/lib/clients/lensesClient.js.map +0 -1
  747. package/lib/clients/metricsClient.d.ts +0 -26
  748. package/lib/clients/metricsClient.js +0 -120
  749. package/lib/clients/metricsClient.js.map +0 -1
  750. package/lib/common/__mocks__/loadScript.d.ts +0 -1
  751. package/lib/common/__mocks__/loadScript.js +0 -10
  752. package/lib/common/__mocks__/loadScript.js.map +0 -1
  753. package/lib/common/assertions.d.ts +0 -27
  754. package/lib/common/assertions.js +0 -39
  755. package/lib/common/assertions.js.map +0 -1
  756. package/lib/common/copyDefinedProperties.d.ts +0 -13
  757. package/lib/common/copyDefinedProperties.js +0 -16
  758. package/lib/common/copyDefinedProperties.js.map +0 -1
  759. package/lib/common/date.d.ts +0 -3
  760. package/lib/common/dialog.d.ts +0 -59
  761. package/lib/common/dialog.js +0 -160
  762. package/lib/common/dialog.js.map +0 -1
  763. package/lib/common/entries.d.ts +0 -4
  764. package/lib/common/entries.js +0 -5
  765. package/lib/common/entries.js.map +0 -1
  766. package/lib/common/errorHelpers.d.ts +0 -10
  767. package/lib/common/errorHelpers.js +0 -24
  768. package/lib/common/errorHelpers.js.map +0 -1
  769. package/lib/common/getFilename.d.ts +0 -1
  770. package/lib/common/hash.d.ts +0 -5
  771. package/lib/common/hash.js +0 -17
  772. package/lib/common/hash.js.map +0 -1
  773. package/lib/common/loadScript.d.ts +0 -6
  774. package/lib/common/loadScript.js +0 -18
  775. package/lib/common/loadScript.js.map +0 -1
  776. package/lib/common/localization.d.ts +0 -54
  777. package/lib/common/localization.js +0 -654
  778. package/lib/common/localization.js.map +0 -1
  779. package/lib/common/memoize.d.ts +0 -8
  780. package/lib/common/pageVisibility.d.ts +0 -34
  781. package/lib/common/pageVisibility.js +0 -71
  782. package/lib/common/pageVisibility.js.map +0 -1
  783. package/lib/common/result.d.ts +0 -36
  784. package/lib/common/result.js +0 -40
  785. package/lib/common/result.js.map +0 -1
  786. package/lib/common/time.d.ts +0 -2
  787. package/lib/common/typeguards.d.ts +0 -53
  788. package/lib/common/typeguards.js +0 -92
  789. package/lib/common/typeguards.js.map +0 -1
  790. package/lib/common/types.d.ts +0 -18
  791. package/lib/common/types.js.map +0 -1
  792. package/lib/common/unionBy.d.ts +0 -28
  793. package/lib/common/unionBy.js +0 -46
  794. package/lib/common/unionBy.js.map +0 -1
  795. package/lib/common/validate.d.ts +0 -14
  796. package/lib/common/validate.js +0 -112
  797. package/lib/common/validate.js.map +0 -1
  798. package/lib/configuration.d.ts +0 -101
  799. package/lib/configuration.js +0 -51
  800. package/lib/configuration.js.map +0 -1
  801. package/lib/configurationOverrides.d.ts +0 -12
  802. package/lib/configurationOverrides.js +0 -46
  803. package/lib/configurationOverrides.js.map +0 -1
  804. package/lib/dependency-injection/Container.d.ts +0 -176
  805. package/lib/dependency-injection/Container.js +0 -160
  806. package/lib/dependency-injection/Container.js.map +0 -1
  807. package/lib/dependency-injection/Injectable.d.ts +0 -95
  808. package/lib/dependency-injection/Injectable.js.map +0 -1
  809. package/lib/dependency-injection/PartialContainer.d.ts +0 -85
  810. package/lib/dependency-injection/PartialContainer.js +0 -85
  811. package/lib/dependency-injection/PartialContainer.js.map +0 -1
  812. package/lib/dependency-injection/RootServices.d.ts +0 -73
  813. package/lib/dependency-injection/RootServices.js +0 -2
  814. package/lib/dependency-injection/RootServices.js.map +0 -1
  815. package/lib/dependency-injection/types.d.ts +0 -56
  816. package/lib/dependency-injection/types.js.map +0 -1
  817. package/lib/environment.d.ts +0 -4
  818. package/lib/environment.js +0 -2
  819. package/lib/environment.js.map +0 -1
  820. package/lib/events/TypedCustomEvent.d.ts +0 -10
  821. package/lib/events/TypedCustomEvent.js +0 -11
  822. package/lib/events/TypedCustomEvent.js.map +0 -1
  823. package/lib/events/TypedEventTarget.d.ts +0 -25
  824. package/lib/events/TypedEventTarget.js +0 -57
  825. package/lib/events/TypedEventTarget.js.map +0 -1
  826. package/lib/events/scan.d.ts +0 -15
  827. package/lib/events/scan.js +0 -46
  828. package/lib/events/scan.js.map +0 -1
  829. package/lib/extensions/RemoteApiServices.d.ts +0 -101
  830. package/lib/extensions/RemoteApiServices.js +0 -203
  831. package/lib/extensions/RemoteApiServices.js.map +0 -1
  832. package/lib/extensions/UriHandlers.d.ts +0 -47
  833. package/lib/extensions/UriHandlers.js +0 -38
  834. package/lib/extensions/UriHandlers.js.map +0 -1
  835. package/lib/extensions/extensionRequestContext.d.ts +0 -4
  836. package/lib/extensions/extensionRequestContext.js +0 -14
  837. package/lib/extensions/extensionRequestContext.js.map +0 -1
  838. package/lib/extensions/uriHandlersRegister.d.ts +0 -21
  839. package/lib/extensions/uriHandlersRegister.js +0 -72
  840. package/lib/extensions/uriHandlersRegister.js.map +0 -1
  841. package/lib/generated-proto/blizzard/cameraKitEvents.d.ts +0 -9527
  842. package/lib/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts +0 -79
  843. package/lib/generated-proto/pb_schema/camera_kit/v3/export.d.ts +0 -528
  844. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.d.ts +0 -34
  845. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js +0 -43
  846. package/lib/generated-proto/pb_schema/camera_kit/v3/features/ranking_info.js.map +0 -1
  847. package/lib/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.d.ts +0 -29
  848. package/lib/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts +0 -85
  849. package/lib/generated-proto/pb_schema/camera_kit/v3/lens.d.ts +0 -384
  850. package/lib/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts +0 -178
  851. package/lib/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts +0 -56
  852. package/lib/generated-proto/pb_schema/camera_kit/v3/service.d.ts +0 -2511
  853. package/lib/generated-proto/pb_schema/cdp/cof/benchmark.d.ts +0 -78
  854. package/lib/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts +0 -50
  855. package/lib/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts +0 -25574
  856. package/lib/generated-proto/pb_schema/cdp/cof/config_request.d.ts +0 -279
  857. package/lib/generated-proto/pb_schema/cdp/cof/config_response.d.ts +0 -3725
  858. package/lib/generated-proto/pb_schema/cdp/cof/config_result.d.ts +0 -10223
  859. package/lib/generated-proto/pb_schema/cdp/cof/debug_info.d.ts +0 -93
  860. package/lib/generated-proto/pb_schema/cdp/cof/namespace.d.ts +0 -8
  861. package/lib/generated-proto/pb_schema/common/ruid.d.ts +0 -51
  862. package/lib/generated-proto/pb_schema/common/value.d.ts +0 -144
  863. package/lib/generated-proto/pb_schema/google/api/annotations.d.ts +0 -1
  864. package/lib/generated-proto/pb_schema/google/api/annotations.js +0 -9
  865. package/lib/generated-proto/pb_schema/google/api/annotations.js.map +0 -1
  866. package/lib/generated-proto/pb_schema/google/api/http.d.ts +0 -3630
  867. package/lib/generated-proto/pb_schema/google/api/http.js +0 -194
  868. package/lib/generated-proto/pb_schema/google/api/http.js.map +0 -1
  869. package/lib/generated-proto/pb_schema/google/protobuf/any.d.ts +0 -32
  870. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.d.ts +0 -50896
  871. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js +0 -1857
  872. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js.map +0 -1
  873. package/lib/generated-proto/pb_schema/google/protobuf/timestamp.d.ts +0 -32
  874. package/lib/generated-proto/pb_schema/google/protobuf/wrappers.d.ts +0 -119
  875. package/lib/generated-proto/pb_schema/lenses/geocircle.d.ts +0 -42
  876. package/lib/generated-proto/pb_schema/lenses/geopoint.d.ts +0 -32
  877. package/lib/generated-proto/pb_schema/lenses/launch_params.d.ts +0 -29
  878. package/lib/generated-proto/pb_schema/lenses/launchdata.d.ts +0 -396
  879. package/lib/generated-proto/pb_schema/lenses/lures.d.ts +0 -111
  880. package/lib/generated-proto/pb_schema/lenses/persistent_store.d.ts +0 -29
  881. package/lib/generated-proto/pb_schema/lenses/remote_api/remote_api_service.d.ts +0 -569
  882. package/lib/generated-proto/pb_schema/lenses/snappable.d.ts +0 -902
  883. package/lib/generated-proto/pb_schema/lenses/user_data.d.ts +0 -229
  884. package/lib/handlers/HandlerChainBuilder.d.ts +0 -110
  885. package/lib/handlers/HandlerChainBuilder.js +0 -199
  886. package/lib/handlers/HandlerChainBuilder.js.map +0 -1
  887. package/lib/handlers/arrayBufferParsingHandler.d.ts +0 -10
  888. package/lib/handlers/arrayBufferParsingHandler.js +0 -18
  889. package/lib/handlers/arrayBufferParsingHandler.js.map +0 -1
  890. package/lib/handlers/batchingHandler.d.ts +0 -31
  891. package/lib/handlers/batchingHandler.js +0 -76
  892. package/lib/handlers/batchingHandler.js.map +0 -1
  893. package/lib/handlers/cameraKitServiceFetchHandlerFactory.d.ts +0 -12
  894. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js +0 -19
  895. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js.map +0 -1
  896. package/lib/handlers/debugHandler.d.ts +0 -8
  897. package/lib/handlers/debugHandler.js +0 -27
  898. package/lib/handlers/debugHandler.js.map +0 -1
  899. package/lib/handlers/defaultFetchHandler.d.ts +0 -15
  900. package/lib/handlers/defaultFetchHandler.js +0 -38
  901. package/lib/handlers/defaultFetchHandler.js.map +0 -1
  902. package/lib/handlers/headersModifyingFetchHandler.d.ts +0 -8
  903. package/lib/handlers/headersModifyingFetchHandler.js +0 -17
  904. package/lib/handlers/headersModifyingFetchHandler.js.map +0 -1
  905. package/lib/handlers/mappingHandler.d.ts +0 -19
  906. package/lib/handlers/mappingHandler.js +0 -67
  907. package/lib/handlers/mappingHandler.js.map +0 -1
  908. package/lib/handlers/noCorsRetryingFetchHandler.d.ts +0 -48
  909. package/lib/handlers/noCorsRetryingFetchHandler.js +0 -95
  910. package/lib/handlers/noCorsRetryingFetchHandler.js.map +0 -1
  911. package/lib/handlers/persistingHandler.d.ts +0 -14
  912. package/lib/handlers/persistingHandler.js +0 -71
  913. package/lib/handlers/persistingHandler.js.map +0 -1
  914. package/lib/handlers/rateLimitingHandler.d.ts +0 -24
  915. package/lib/handlers/rateLimitingHandler.js +0 -45
  916. package/lib/handlers/rateLimitingHandler.js.map +0 -1
  917. package/lib/handlers/requestStateEmittingHandler.d.ts +0 -41
  918. package/lib/handlers/requestStateEmittingHandler.js +0 -45
  919. package/lib/handlers/requestStateEmittingHandler.js.map +0 -1
  920. package/lib/handlers/responseCachingHandler.d.ts +0 -34
  921. package/lib/handlers/responseCachingHandler.js +0 -109
  922. package/lib/handlers/responseCachingHandler.js.map +0 -1
  923. package/lib/handlers/retryingHandler.d.ts +0 -48
  924. package/lib/handlers/retryingHandler.js +0 -86
  925. package/lib/handlers/retryingHandler.js.map +0 -1
  926. package/lib/handlers/timeoutHandler.d.ts +0 -18
  927. package/lib/handlers/timeoutHandler.js +0 -30
  928. package/lib/handlers/timeoutHandler.js.map +0 -1
  929. package/lib/handlers/utils.d.ts +0 -12
  930. package/lib/handlers/utils.js +0 -19
  931. package/lib/handlers/utils.js.map +0 -1
  932. package/lib/index.d.ts +0 -42
  933. package/lib/index.js +0 -36
  934. package/lib/index.js.map +0 -1
  935. package/lib/legal/legalPrompt.d.ts +0 -20
  936. package/lib/legal/legalPrompt.js +0 -135
  937. package/lib/legal/legalPrompt.js.map +0 -1
  938. package/lib/legal/legalState.d.ts +0 -50
  939. package/lib/legal/legalState.js +0 -163
  940. package/lib/legal/legalState.js.map +0 -1
  941. package/lib/lens/Lens.d.ts +0 -115
  942. package/lib/lens/Lens.js +0 -84
  943. package/lib/lens/Lens.js.map +0 -1
  944. package/lib/lens/LensLaunchData.d.ts +0 -40
  945. package/lib/lens/LensLaunchData.js +0 -37
  946. package/lib/lens/LensLaunchData.js.map +0 -1
  947. package/lib/lens/LensPersistenceStore.d.ts +0 -7
  948. package/lib/lens/LensPersistenceStore.js.map +0 -1
  949. package/lib/lens/LensRepository.d.ts +0 -137
  950. package/lib/lens/LensRepository.js +0 -237
  951. package/lib/lens/LensRepository.js.map +0 -1
  952. package/lib/lens/LensSource.d.ts +0 -43
  953. package/lib/lens/LensSource.js +0 -42
  954. package/lib/lens/LensSource.js.map +0 -1
  955. package/lib/lens/assets/LensAssetRepository.d.ts +0 -99
  956. package/lib/lens/assets/LensAssetRepository.js +0 -184
  957. package/lib/lens/assets/LensAssetRepository.js.map +0 -1
  958. package/lib/lens/assets/LensAssetsProvider.d.ts +0 -27
  959. package/lib/lens/assets/LensAssetsProvider.js +0 -68
  960. package/lib/lens/assets/LensAssetsProvider.js.map +0 -1
  961. package/lib/lens/assets/deviceDependentAssetLoader.d.ts +0 -11
  962. package/lib/lens/assets/deviceDependentAssetLoader.js +0 -59
  963. package/lib/lens/assets/deviceDependentAssetLoader.js.map +0 -1
  964. package/lib/lens/assets/remoteMediaAssetLoaderFactory.d.ts +0 -10
  965. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js +0 -27
  966. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js.map +0 -1
  967. package/lib/lens/assets/staticAssetLoader.d.ts +0 -10
  968. package/lib/lens/assets/staticAssetLoader.js +0 -25
  969. package/lib/lens/assets/staticAssetLoader.js.map +0 -1
  970. package/lib/lens/cameraKitLensSource.d.ts +0 -16
  971. package/lib/lens/cameraKitLensSource.js +0 -59
  972. package/lib/lens/cameraKitLensSource.js.map +0 -1
  973. package/lib/lens-client-interface/exif.d.ts +0 -20
  974. package/lib/lens-client-interface/exif.js +0 -61
  975. package/lib/lens-client-interface/exif.js.map +0 -1
  976. package/lib/lens-client-interface/imagePicker.d.ts +0 -8
  977. package/lib/lens-client-interface/imagePicker.js +0 -128
  978. package/lib/lens-client-interface/imagePicker.js.map +0 -1
  979. package/lib/lens-client-interface/lensClientInterface.d.ts +0 -13
  980. package/lib/lens-client-interface/lensClientInterface.js +0 -30
  981. package/lib/lens-client-interface/lensClientInterface.js.map +0 -1
  982. package/lib/lens-core-module/generated-types.d.ts +0 -469
  983. package/lib/lens-core-module/lensCore.d.ts +0 -43
  984. package/lib/lens-core-module/lensCore.js +0 -59
  985. package/lib/lens-core-module/lensCore.js.map +0 -1
  986. package/lib/lens-core-module/lensCoreError.d.ts +0 -15
  987. package/lib/lens-core-module/lensCoreError.js +0 -43
  988. package/lib/lens-core-module/lensCoreError.js.map +0 -1
  989. package/lib/lens-core-module/loader/bootstrapURLs.d.ts +0 -12
  990. package/lib/lens-core-module/loader/bootstrapURLs.js +0 -48
  991. package/lib/lens-core-module/loader/bootstrapURLs.js.map +0 -1
  992. package/lib/lens-core-module/loader/lensCoreFactory.d.ts +0 -17
  993. package/lib/lens-core-module/loader/lensCoreFactory.js +0 -76
  994. package/lib/lens-core-module/loader/lensCoreFactory.js.map +0 -1
  995. package/lib/lensCoreWasmVersions.d.ts +0 -6
  996. package/lib/lensCoreWasmVersions.js +0 -6
  997. package/lib/lensCoreWasmVersions.js.map +0 -1
  998. package/lib/logger/errorLoggingDecorator.d.ts +0 -9
  999. package/lib/logger/errorLoggingDecorator.js +0 -32
  1000. package/lib/logger/errorLoggingDecorator.js.map +0 -1
  1001. package/lib/logger/logEntries.d.ts +0 -15
  1002. package/lib/logger/logEntries.js +0 -14
  1003. package/lib/logger/logEntries.js.map +0 -1
  1004. package/lib/logger/logger.d.ts +0 -40
  1005. package/lib/logger/logger.js +0 -53
  1006. package/lib/logger/logger.js.map +0 -1
  1007. package/lib/logger/registerLogEntriesSubscriber.d.ts +0 -14
  1008. package/lib/logger/registerLogEntriesSubscriber.js +0 -35
  1009. package/lib/logger/registerLogEntriesSubscriber.js.map +0 -1
  1010. package/lib/media-sources/CameraKitSource.d.ts +0 -126
  1011. package/lib/media-sources/CameraKitSource.js +0 -138
  1012. package/lib/media-sources/CameraKitSource.js.map +0 -1
  1013. package/lib/media-sources/FunctionSource.d.ts +0 -41
  1014. package/lib/media-sources/FunctionSource.js +0 -128
  1015. package/lib/media-sources/FunctionSource.js.map +0 -1
  1016. package/lib/media-sources/ImageSource.d.ts +0 -11
  1017. package/lib/media-sources/ImageSource.js +0 -16
  1018. package/lib/media-sources/ImageSource.js.map +0 -1
  1019. package/lib/media-sources/MediaStreamSource.d.ts +0 -29
  1020. package/lib/media-sources/MediaStreamSource.js +0 -137
  1021. package/lib/media-sources/MediaStreamSource.js.map +0 -1
  1022. package/lib/media-sources/VideoSource.d.ts +0 -25
  1023. package/lib/media-sources/VideoSource.js +0 -22
  1024. package/lib/media-sources/VideoSource.js.map +0 -1
  1025. package/lib/metrics/businessEventsReporter.d.ts +0 -39
  1026. package/lib/metrics/businessEventsReporter.js +0 -195
  1027. package/lib/metrics/businessEventsReporter.js.map +0 -1
  1028. package/lib/metrics/metricsEventTarget.d.ts +0 -41
  1029. package/lib/metrics/metricsEventTarget.js +0 -11
  1030. package/lib/metrics/metricsEventTarget.js.map +0 -1
  1031. package/lib/metrics/operational/Count.d.ts +0 -19
  1032. package/lib/metrics/operational/Count.js +0 -33
  1033. package/lib/metrics/operational/Count.js.map +0 -1
  1034. package/lib/metrics/operational/Histogram.d.ts +0 -17
  1035. package/lib/metrics/operational/Histogram.js +0 -27
  1036. package/lib/metrics/operational/Histogram.js.map +0 -1
  1037. package/lib/metrics/operational/Metric.d.ts +0 -20
  1038. package/lib/metrics/operational/Metric.js +0 -28
  1039. package/lib/metrics/operational/Metric.js.map +0 -1
  1040. package/lib/metrics/operational/Timer.d.ts +0 -94
  1041. package/lib/metrics/operational/Timer.js +0 -108
  1042. package/lib/metrics/operational/Timer.js.map +0 -1
  1043. package/lib/metrics/reporters/reportBenchmarks.d.ts +0 -10
  1044. package/lib/metrics/reporters/reportBenchmarks.js +0 -30
  1045. package/lib/metrics/reporters/reportBenchmarks.js.map +0 -1
  1046. package/lib/metrics/reporters/reportGlobalException.d.ts +0 -26
  1047. package/lib/metrics/reporters/reportGlobalException.js +0 -106
  1048. package/lib/metrics/reporters/reportGlobalException.js.map +0 -1
  1049. package/lib/metrics/reporters/reportHttpMetrics.d.ts +0 -10
  1050. package/lib/metrics/reporters/reportHttpMetrics.js +0 -110
  1051. package/lib/metrics/reporters/reportHttpMetrics.js.map +0 -1
  1052. package/lib/metrics/reporters/reportLegalState.d.ts +0 -15
  1053. package/lib/metrics/reporters/reportLegalState.js +0 -32
  1054. package/lib/metrics/reporters/reportLegalState.js.map +0 -1
  1055. package/lib/metrics/reporters/reportLensAndAssetDownload.d.ts +0 -38
  1056. package/lib/metrics/reporters/reportLensAndAssetDownload.js +0 -92
  1057. package/lib/metrics/reporters/reportLensAndAssetDownload.js.map +0 -1
  1058. package/lib/metrics/reporters/reportLensValidationFailed.d.ts +0 -20
  1059. package/lib/metrics/reporters/reportLensValidationFailed.js +0 -24
  1060. package/lib/metrics/reporters/reportLensValidationFailed.js.map +0 -1
  1061. package/lib/metrics/reporters/reportLensView.d.ts +0 -36
  1062. package/lib/metrics/reporters/reportLensView.js +0 -137
  1063. package/lib/metrics/reporters/reportLensView.js.map +0 -1
  1064. package/lib/metrics/reporters/reportLensWait.d.ts +0 -32
  1065. package/lib/metrics/reporters/reportLensWait.js +0 -60
  1066. package/lib/metrics/reporters/reportLensWait.js.map +0 -1
  1067. package/lib/metrics/reporters/reportPlatformCapabilities.d.ts +0 -12
  1068. package/lib/metrics/reporters/reportPlatformCapabilities.js +0 -19
  1069. package/lib/metrics/reporters/reportPlatformCapabilities.js.map +0 -1
  1070. package/lib/metrics/reporters/reportSessionException.d.ts +0 -17
  1071. package/lib/metrics/reporters/reportSessionException.js +0 -12
  1072. package/lib/metrics/reporters/reportSessionException.js.map +0 -1
  1073. package/lib/metrics/reporters/reportUserSession.d.ts +0 -14
  1074. package/lib/metrics/reporters/reportUserSession.js +0 -66
  1075. package/lib/metrics/reporters/reportUserSession.js.map +0 -1
  1076. package/lib/metrics/reporters/reporters.d.ts +0 -46
  1077. package/lib/metrics/reporters/reporters.js +0 -35
  1078. package/lib/metrics/reporters/reporters.js.map +0 -1
  1079. package/lib/namedErrors.d.ts +0 -124
  1080. package/lib/namedErrors.js +0 -58
  1081. package/lib/namedErrors.js.map +0 -1
  1082. package/lib/observable-operators/unsubscribed.d.ts +0 -12
  1083. package/lib/observable-operators/unsubscribed.js +0 -27
  1084. package/lib/observable-operators/unsubscribed.js.map +0 -1
  1085. package/lib/persistence/ExpiringPersistence.d.ts +0 -21
  1086. package/lib/persistence/ExpiringPersistence.js +0 -71
  1087. package/lib/persistence/ExpiringPersistence.js.map +0 -1
  1088. package/lib/persistence/IndexedDBPersistence.d.ts +0 -47
  1089. package/lib/persistence/IndexedDBPersistence.js +0 -190
  1090. package/lib/persistence/IndexedDBPersistence.js.map +0 -1
  1091. package/lib/persistence/Persistence.d.ts +0 -25
  1092. package/lib/persistence/Persistence.js +0 -10
  1093. package/lib/persistence/Persistence.js.map +0 -1
  1094. package/lib/platform/assertPlatformSupported.d.ts +0 -4
  1095. package/lib/platform/assertPlatformSupported.js +0 -15
  1096. package/lib/platform/assertPlatformSupported.js.map +0 -1
  1097. package/lib/platform/cameraKitUserAgent.d.ts +0 -2
  1098. package/lib/platform/cameraKitUserAgent.js +0 -20
  1099. package/lib/platform/cameraKitUserAgent.js.map +0 -1
  1100. package/lib/platform/platformCapabilities.d.ts +0 -50
  1101. package/lib/platform/platformCapabilities.js +0 -128
  1102. package/lib/platform/platformCapabilities.js.map +0 -1
  1103. package/lib/platform/platformInfo.d.ts +0 -43
  1104. package/lib/platform/platformInfo.js +0 -228
  1105. package/lib/platform/platformInfo.js.map +0 -1
  1106. package/lib/remote-configuration/cofHandler.d.ts +0 -29
  1107. package/lib/remote-configuration/cofHandler.js +0 -115
  1108. package/lib/remote-configuration/cofHandler.js.map +0 -1
  1109. package/lib/remote-configuration/preloadConfiguration.d.ts +0 -7
  1110. package/lib/remote-configuration/preloadConfiguration.js +0 -15
  1111. package/lib/remote-configuration/preloadConfiguration.js.map +0 -1
  1112. package/lib/remote-configuration/remoteConfiguration.d.ts +0 -34
  1113. package/lib/remote-configuration/remoteConfiguration.js +0 -73
  1114. package/lib/remote-configuration/remoteConfiguration.js.map +0 -1
  1115. package/lib/session/CameraKitSession.d.ts +0 -255
  1116. package/lib/session/CameraKitSession.js +0 -440
  1117. package/lib/session/CameraKitSession.js.map +0 -1
  1118. package/lib/session/CameraKitSessionEvents.d.ts +0 -37
  1119. package/lib/session/CameraKitSessionEvents.js +0 -38
  1120. package/lib/session/CameraKitSessionEvents.js.map +0 -1
  1121. package/lib/session/LensKeyboard.d.ts +0 -94
  1122. package/lib/session/LensKeyboard.js +0 -95
  1123. package/lib/session/LensKeyboard.js.map +0 -1
  1124. package/lib/session/LensPerformanceMeasurement.d.ts +0 -57
  1125. package/lib/session/LensPerformanceMeasurement.js +0 -114
  1126. package/lib/session/LensPerformanceMeasurement.js.map +0 -1
  1127. package/lib/session/LensPerformanceMetrics.d.ts +0 -31
  1128. package/lib/session/LensPerformanceMetrics.js +0 -59
  1129. package/lib/session/LensPerformanceMetrics.js.map +0 -1
  1130. package/lib/session/lensState.d.ts +0 -30
  1131. package/lib/session/lensState.js +0 -238
  1132. package/lib/session/lensState.js.map +0 -1
  1133. package/lib/session/sessionState.d.ts +0 -10
  1134. package/lib/session/sessionState.js.map +0 -1
  1135. package/lib/transforms/Transform2D.d.ts +0 -22
  1136. package/lib/transforms/Transform2D.js +0 -19
  1137. package/lib/transforms/Transform2D.js.map +0 -1
  1138. package/lib/utils.d.ts +0 -3
  1139. /package/{lib → dist}/benchmark/webglUtils.js +0 -0
  1140. /package/{lib → dist}/benchmark/webglUtils.js.map +0 -0
  1141. /package/{lib → dist}/clients/lensesClient.js +0 -0
  1142. /package/{lib → dist}/common/date.js +0 -0
  1143. /package/{lib → dist}/common/date.js.map +0 -0
  1144. /package/{lib → dist}/common/getFilename.js +0 -0
  1145. /package/{lib → dist}/common/getFilename.js.map +0 -0
  1146. /package/{lib → dist}/common/memoize.js +0 -0
  1147. /package/{lib → dist}/common/memoize.js.map +0 -0
  1148. /package/{lib → dist}/common/time.js +0 -0
  1149. /package/{lib → dist}/common/time.js.map +0 -0
  1150. /package/{lib → dist}/common/types.js +0 -0
  1151. /package/{lib → dist}/dependency-injection/Injectable.js +0 -0
  1152. /package/{lib → dist}/dependency-injection/types.js +0 -0
  1153. /package/{lib → dist}/generated-proto/blizzard/cameraKitEvents.js +0 -0
  1154. /package/{lib → dist}/generated-proto/blizzard/cameraKitEvents.js.map +0 -0
  1155. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/business_events.js +0 -0
  1156. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/business_events.js.map +0 -0
  1157. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/export.js +0 -0
  1158. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/export.js.map +0 -0
  1159. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js +0 -0
  1160. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/features/remote_api_info.js.map +0 -0
  1161. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js +0 -0
  1162. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js.map +0 -0
  1163. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/lens.js +0 -0
  1164. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/lens.js.map +0 -0
  1165. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js +0 -0
  1166. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js.map +0 -0
  1167. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/ranking.js +0 -0
  1168. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/ranking.js.map +0 -0
  1169. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/service.js +0 -0
  1170. /package/{lib → dist}/generated-proto/pb_schema/camera_kit/v3/service.js.map +0 -0
  1171. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark.js +0 -0
  1172. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark.js.map +0 -0
  1173. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark_name.js +0 -0
  1174. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/benchmark_name.js.map +0 -0
  1175. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/circumstance_service.js +0 -0
  1176. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/circumstance_service.js.map +0 -0
  1177. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_request.js +0 -0
  1178. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_request.js.map +0 -0
  1179. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_response.js +0 -0
  1180. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_response.js.map +0 -0
  1181. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_result.js +0 -0
  1182. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/config_result.js.map +0 -0
  1183. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/debug_info.js +0 -0
  1184. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/debug_info.js.map +0 -0
  1185. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/namespace.js +0 -0
  1186. /package/{lib → dist}/generated-proto/pb_schema/cdp/cof/namespace.js.map +0 -0
  1187. /package/{lib → dist}/generated-proto/pb_schema/common/ruid.js +0 -0
  1188. /package/{lib → dist}/generated-proto/pb_schema/common/ruid.js.map +0 -0
  1189. /package/{lib → dist}/generated-proto/pb_schema/common/value.js +0 -0
  1190. /package/{lib → dist}/generated-proto/pb_schema/common/value.js.map +0 -0
  1191. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/any.js +0 -0
  1192. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/any.js.map +0 -0
  1193. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/timestamp.js +0 -0
  1194. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/timestamp.js.map +0 -0
  1195. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/wrappers.js +0 -0
  1196. /package/{lib → dist}/generated-proto/pb_schema/google/protobuf/wrappers.js.map +0 -0
  1197. /package/{lib → dist}/generated-proto/pb_schema/lenses/geocircle.js +0 -0
  1198. /package/{lib → dist}/generated-proto/pb_schema/lenses/geocircle.js.map +0 -0
  1199. /package/{lib → dist}/generated-proto/pb_schema/lenses/geopoint.js +0 -0
  1200. /package/{lib → dist}/generated-proto/pb_schema/lenses/geopoint.js.map +0 -0
  1201. /package/{lib → dist}/generated-proto/pb_schema/lenses/launch_params.js +0 -0
  1202. /package/{lib → dist}/generated-proto/pb_schema/lenses/launch_params.js.map +0 -0
  1203. /package/{lib → dist}/generated-proto/pb_schema/lenses/launchdata.js +0 -0
  1204. /package/{lib → dist}/generated-proto/pb_schema/lenses/launchdata.js.map +0 -0
  1205. /package/{lib → dist}/generated-proto/pb_schema/lenses/lures.js +0 -0
  1206. /package/{lib → dist}/generated-proto/pb_schema/lenses/lures.js.map +0 -0
  1207. /package/{lib → dist}/generated-proto/pb_schema/lenses/persistent_store.js +0 -0
  1208. /package/{lib → dist}/generated-proto/pb_schema/lenses/persistent_store.js.map +0 -0
  1209. /package/{lib → dist}/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js +0 -0
  1210. /package/{lib → dist}/generated-proto/pb_schema/lenses/remote_api/remote_api_service.js.map +0 -0
  1211. /package/{lib → dist}/generated-proto/pb_schema/lenses/snappable.js +0 -0
  1212. /package/{lib → dist}/generated-proto/pb_schema/lenses/snappable.js.map +0 -0
  1213. /package/{lib → dist}/generated-proto/pb_schema/lenses/user_data.js +0 -0
  1214. /package/{lib → dist}/generated-proto/pb_schema/lenses/user_data.js.map +0 -0
  1215. /package/{lib → dist}/lens/LensPersistenceStore.js +0 -0
  1216. /package/{lib → dist}/lens-core-module/generated-types.js +0 -0
  1217. /package/{lib → dist}/lens-core-module/generated-types.js.map +0 -0
  1218. /package/{lib → dist}/session/sessionState.js +0 -0
  1219. /package/{lib → dist}/utils.js +0 -0
  1220. /package/{lib → dist}/utils.js.map +0 -0
@@ -0,0 +1,130 @@
1
+ import type { LensCore } from "../lens-core-module/lensCore";
2
+ import type { Transform2D } from "../transforms/Transform2D";
3
+ export declare const defaultDeviceInfo: CameraKitDeviceOptions;
4
+ /**
5
+ * When creating a {@link CameraKitSource}, passing a CameraKitSourceSubscriber allows logic to implemented which will
6
+ * run whenever that source is attached/detached from a CameraKitSession.
7
+ *
8
+ * @category Rendering
9
+ */
10
+ export interface CameraKitSourceSubscriber {
11
+ readonly onAttach?: (source: CameraKitSource, lensCore: LensCore, reportError: (error: Error) => void) => void | Promise<void>;
12
+ readonly onDetach?: (reportError: (error: Error) => void) => void | Promise<void>;
13
+ }
14
+ export declare function isCameraKitSource(value: unknown): value is CameraKitSource;
15
+ export declare function isPartialCameraKitDeviceOptionsOrUndefined(value: unknown): value is Partial<CameraKitDeviceOptions> | undefined;
16
+ /**
17
+ * Device options.
18
+ *
19
+ * @category Rendering
20
+ */
21
+ export interface CameraKitDeviceOptions {
22
+ /**
23
+ * Specifies the camera type for which certain features are enabled or disabled.
24
+ * For example, surface tracking features are only active when the camera is set to "environment" mode.
25
+ * The default value is "user", which accommodates the majority of Lenses.
26
+ * "user" refers to the front-facing camera, while "environment" refers to the rear-facing camera.
27
+ */
28
+ cameraType: "user" | "environment";
29
+ /**
30
+ * Limits the frames per second (FPS) to optimize performance by reducing compute resources
31
+ * when high FPS is not critical. By default, no limit is set, allowing usage of the video's native FPS.
32
+ * Useful for controlling resource usage on varying device capabilities.
33
+ */
34
+ fpsLimit: number;
35
+ }
36
+ /** @category Rendering */
37
+ export interface CameraKitSourceInfo {
38
+ /**
39
+ * HTML element or MediaStream as an input source.
40
+ * If useManualFrameProcessing is true, then this parameter is optional.
41
+ */
42
+ media?: HTMLCanvasElement | HTMLImageElement | HTMLVideoElement | MediaStream;
43
+ /**
44
+ * Whether to provide frames manually.
45
+ */
46
+ useManualFrameProcessing?: boolean;
47
+ /**
48
+ * If specified, the passed-in tracking data buffer will be used as tracking data for the current
49
+ * media element instead of live tracking data.
50
+ */
51
+ replayTrackingData?: {
52
+ buffer: Uint8Array | ArrayBuffer;
53
+ };
54
+ }
55
+ /**
56
+ * This general-purpose class represents a source of media for a {@link CameraKitSession}.
57
+ *
58
+ * When an instance is passed to {@link CameraKitSession.setSource | CameraKitSession.setSource}, it will be "attached"
59
+ * to the session. Later it may be "detached" from the session.
60
+ *
61
+ * Passing a {@link CameraKitSourceSubscriber} to the constructor allows callers to specify behavior
62
+ * that will occur when the source is attached and detached. This can be used to e.g. update the render size.
63
+ *
64
+ * @category Rendering
65
+ */
66
+ declare class CameraKitSource {
67
+ private readonly sourceInfo;
68
+ private readonly subscriber;
69
+ private lensCore?;
70
+ private readonly deviceInfo;
71
+ constructor(sourceInfo: CameraKitSourceInfo, subscriber?: CameraKitSourceSubscriber, deviceInfo?: Partial<CameraKitDeviceOptions>);
72
+ /**
73
+ * Called by {@link CameraKitSession} when this source is set as that session's source.
74
+ *
75
+ * @param lensCore
76
+ * @param reportError Calling this function will report an error back to the session.
77
+ * @returns Rejects if any calls to LensCore or CameraKitSource.subscriber.onAttach fail.
78
+ * @internal
79
+ */
80
+ attach(lensCore: LensCore, reportError: (error: Error) => void): Promise<void>;
81
+ /**
82
+ * Make a copy of the source, sharing the same {@link CameraKitSourceSubscriber}.
83
+ *
84
+ * @param deviceInfo Optionally provide new device info for the copy (e.g. to change the camera type).
85
+ * @returns The new {@link CameraKitSource}
86
+ */
87
+ copy(deviceInfo?: Partial<CameraKitDeviceOptions>): CameraKitSource;
88
+ /**
89
+ * Called by {@link CameraKitSession} when it must remove this source.
90
+ *
91
+ * @param reportError Calling this function will report an error back to the session.
92
+ * @returns
93
+ * @internal
94
+ */
95
+ detach(reportError: (error: Error) => void): void | Promise<void>;
96
+ /**
97
+ * Set the resolution used to render this source.
98
+ *
99
+ * If greater performance is required, a smaller render size may boost frame-rate. It does come at a cost, including
100
+ * loss of accuracy in various tracking and computer-vision algorithms (since they'll be operating on fewer pixels).
101
+ *
102
+ * By default (i.e. if this method is never called), then the render size will match the size of the input media.
103
+ * Best performance can be achieved by varying the size of the input media and allowing CameraKit to render at a
104
+ * resolution that matches the input media -- this method should only be used if the input media resolution cannot
105
+ * be changed to the desired size.
106
+ *
107
+ * It’s important to distinguish render size from display size. The size at which the output canvases are displayed
108
+ * on a web page is determined by the CSS of the page. It is distinct from the size at which CameraKit renders
109
+ * Lenses. Performance is dominated by render size, while any display scaling (using CSS) can most often be thought
110
+ * of as free.
111
+ *
112
+ * The size of the Live and Capture {@link RenderTarget} is always the same.
113
+ *
114
+ * @todo Currently it's only valid to call `setRenderSize` after `CameraKitSession.play` has been called. This
115
+ * constraint should be removed, so callers don't have to understand the underlying LensCore state machine.
116
+ *
117
+ * @param width pixels
118
+ * @param height pixels
119
+ * @returns Promise resolves when the render size has been successfully updated.
120
+ */
121
+ setRenderSize(width: number, height: number): Promise<void>;
122
+ /**
123
+ * Apply a 2D transformation to the source (e.g. translation, rotation, scale).
124
+ *
125
+ * @param transform Specifies the 3x3 matrix describing the transformation.
126
+ */
127
+ setTransform(transform: Transform2D): Promise<void>;
128
+ }
129
+ export { CameraKitSource };
130
+ //# sourceMappingURL=CameraKitSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSource.d.ts","sourceRoot":"","sources":["../../src/media-sources/CameraKitSource.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,eAAO,MAAM,iBAAiB,EAAE,sBAG/B,CAAC;AAKF;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAChB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAClC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrF;AAWD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAE1E;AAED,wBAAgB,0CAA0C,CACtD,KAAK,EAAE,OAAO,GACf,KAAK,IAAI,OAAO,CAAC,sBAAsB,CAAC,GAAG,SAAS,CAEtD;AAcD;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,0BAA0B;AAC1B,MAAM,WAAW,mBAAmB;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,WAAW,CAAC;IAE9E;;OAEG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC;;;OAGG;IACH,kBAAkB,CAAC,EAAE;QACjB,MAAM,EAAE,UAAU,GAAG,WAAW,CAAC;KACpC,CAAC;CACL;AAED;;;;;;;;;;GAUG;AACH,cAAM,eAAe;IAKb,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAL/B,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;gBAG/B,UAAU,EAAE,mBAAmB,EAC/B,UAAU,GAAE,yBAA8B,EAC3D,UAAU,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAKpD;;;;;;;OAOG;IACG,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BpF;;;;;OAKG;IACH,IAAI,CAAC,UAAU,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAAG,eAAe;IAIvE;;;;;;OAMG;IACH,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IAEH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D;;;;OAIG;IAEH,YAAY,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAKtD;AAGD,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,96 @@
1
+ import { __awaiter, __esDecorate, __runInitializers } from "tslib";
2
+ import { copyDefinedProperties } from "../common/copyDefinedProperties";
3
+ import { isRecord, isUndefined, isValidNumber, isValidNumberOrUndefined } from "../common/typeguards";
4
+ import { validate } from "../common/validate";
5
+ import { isTransform2D } from "../transforms/Transform2D";
6
+ export const defaultDeviceInfo = {
7
+ cameraType: "user",
8
+ fpsLimit: Number.POSITIVE_INFINITY,
9
+ };
10
+ const createNotAttachedError = (message) => new Error(`${message}. This CameraKitSource is not attached to a CameraKitSession.`);
11
+ const cameraTypeValueSet = new Set(Object.keys({
12
+ user: 0,
13
+ environment: 0,
14
+ }));
15
+ export function isCameraKitSource(value) {
16
+ return value instanceof CameraKitSource;
17
+ }
18
+ export function isPartialCameraKitDeviceOptionsOrUndefined(value) {
19
+ return isUndefined(value) || isPartialCameraKitDeviceOptions(value);
20
+ }
21
+ function isPartialCameraKitDeviceOptions(value) {
22
+ return isRecord(value) && isCameraTypeOrUndefined(value.cameraType) && isValidNumberOrUndefined(value.fpsLimit);
23
+ }
24
+ function isCameraType(value) {
25
+ return cameraTypeValueSet.has(value);
26
+ }
27
+ function isCameraTypeOrUndefined(value) {
28
+ return isUndefined(value) || isCameraType(value);
29
+ }
30
+ let CameraKitSource = (() => {
31
+ var _a;
32
+ let _instanceExtraInitializers = [];
33
+ let _setRenderSize_decorators;
34
+ let _setTransform_decorators;
35
+ return _a = class CameraKitSource {
36
+ constructor(sourceInfo, subscriber = {}, deviceInfo = {}) {
37
+ this.sourceInfo = (__runInitializers(this, _instanceExtraInitializers), sourceInfo);
38
+ this.subscriber = subscriber;
39
+ this.deviceInfo = Object.assign(Object.assign({}, defaultDeviceInfo), copyDefinedProperties(deviceInfo));
40
+ }
41
+ attach(lensCore, reportError) {
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ if (this.lensCore) {
44
+ throw new Error("Cannot attach. This CameraKitCustomSource has already been attached to " +
45
+ "a CameraKitSession. To re-attach, create a copy of this CameraKitCustomSource.");
46
+ }
47
+ this.lensCore = lensCore;
48
+ yield lensCore.useMediaElement({
49
+ autoplayNewMedia: false,
50
+ autoplayPreviewCanvas: false,
51
+ media: this.sourceInfo.media,
52
+ pauseExistingMedia: false,
53
+ replayTrackingData: this.sourceInfo.replayTrackingData,
54
+ requestWebcam: false,
55
+ startOnFrontCamera: ["user", "front"].includes(this.deviceInfo.cameraType),
56
+ useManualFrameProcessing: this.sourceInfo.useManualFrameProcessing,
57
+ });
58
+ const fps = this.deviceInfo.fpsLimit < Number.POSITIVE_INFINITY ? this.deviceInfo.fpsLimit : 0;
59
+ yield lensCore.setFPSLimit({ fps });
60
+ yield lensCore.setRenderSize({ mode: "matchInputResolution" });
61
+ if (this.subscriber.onAttach)
62
+ yield this.subscriber.onAttach(this, lensCore, reportError);
63
+ });
64
+ }
65
+ copy(deviceInfo = {}) {
66
+ return new CameraKitSource(this.sourceInfo, this.subscriber, Object.assign(Object.assign({}, this.deviceInfo), deviceInfo));
67
+ }
68
+ detach(reportError) {
69
+ if (!this.lensCore)
70
+ return Promise.reject(createNotAttachedError("Cannot detach"));
71
+ if (this.subscriber.onDetach)
72
+ return this.subscriber.onDetach(reportError);
73
+ }
74
+ setRenderSize(width, height) {
75
+ if (!this.lensCore)
76
+ return Promise.reject(createNotAttachedError("Cannot setRenderSize"));
77
+ const target = { width, height };
78
+ return this.lensCore.setRenderSize({ mode: "explicit", target });
79
+ }
80
+ setTransform(transform) {
81
+ if (!this.lensCore)
82
+ return Promise.reject(createNotAttachedError("Cannot setTransform"));
83
+ const matrix = new Float32Array(transform.matrix);
84
+ return this.lensCore.setInputTransform({ matrix });
85
+ }
86
+ },
87
+ (() => {
88
+ _setRenderSize_decorators = [validate(isValidNumber, isValidNumber)];
89
+ _setTransform_decorators = [validate(isTransform2D)];
90
+ __esDecorate(_a, null, _setRenderSize_decorators, { kind: "method", name: "setRenderSize", static: false, private: false, access: { has: obj => "setRenderSize" in obj, get: obj => obj.setRenderSize } }, null, _instanceExtraInitializers);
91
+ __esDecorate(_a, null, _setTransform_decorators, { kind: "method", name: "setTransform", static: false, private: false, access: { has: obj => "setTransform" in obj, get: obj => obj.setTransform } }, null, _instanceExtraInitializers);
92
+ })(),
93
+ _a;
94
+ })();
95
+ export { CameraKitSource };
96
+ //# sourceMappingURL=CameraKitSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CameraKitSource.js","sourceRoot":"","sources":["../../src/media-sources/CameraKitSource.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/member-ordering */\n\nimport { copyDefinedProperties } from \"../common/copyDefinedProperties\";\nimport { isRecord, isUndefined, isValidNumber, isValidNumberOrUndefined } from \"../common/typeguards\";\nimport { validate } from \"../common/validate\";\nimport type { LensCore } from \"../lens-core-module/lensCore\";\nimport type { Transform2D } from \"../transforms/Transform2D\";\nimport { isTransform2D } from \"../transforms/Transform2D\";\n\nexport const defaultDeviceInfo: CameraKitDeviceOptions = {\n cameraType: \"user\",\n fpsLimit: Number.POSITIVE_INFINITY,\n};\n\nconst createNotAttachedError = (message: string) =>\n new Error(`${message}. This CameraKitSource is not attached to a CameraKitSession.`);\n\n/**\n * When creating a {@link CameraKitSource}, passing a CameraKitSourceSubscriber allows logic to implemented which will\n * run whenever that source is attached/detached from a CameraKitSession.\n *\n * @category Rendering\n */\nexport interface CameraKitSourceSubscriber {\n readonly onAttach?: (\n source: CameraKitSource,\n lensCore: LensCore,\n reportError: (error: Error) => void\n ) => void | Promise<void>;\n readonly onDetach?: (reportError: (error: Error) => void) => void | Promise<void>;\n}\n\n// Helper set to ensure that changes to cameraType will ensure changes to the guard.\ntype CameraType = CameraKitDeviceOptions[\"cameraType\"];\nconst cameraTypeValueSet = new Set(\n Object.keys({\n user: 0,\n environment: 0,\n } satisfies Record<CameraType, 0>) as CameraType[]\n);\n\nexport function isCameraKitSource(value: unknown): value is CameraKitSource {\n return value instanceof CameraKitSource;\n}\n\nexport function isPartialCameraKitDeviceOptionsOrUndefined(\n value: unknown\n): value is Partial<CameraKitDeviceOptions> | undefined {\n return isUndefined(value) || isPartialCameraKitDeviceOptions(value);\n}\n\nfunction isPartialCameraKitDeviceOptions(value: unknown): value is Partial<CameraKitDeviceOptions> {\n return isRecord(value) && isCameraTypeOrUndefined(value.cameraType) && isValidNumberOrUndefined(value.fpsLimit);\n}\n\nfunction isCameraType(value: unknown): value is CameraType {\n return cameraTypeValueSet.has(value as CameraType);\n}\n\nfunction isCameraTypeOrUndefined(value: unknown): value is CameraType | undefined {\n return isUndefined(value) || isCameraType(value);\n}\n\n/**\n * Device options.\n *\n * @category Rendering\n */\nexport interface CameraKitDeviceOptions {\n /**\n * Specifies the camera type for which certain features are enabled or disabled.\n * For example, surface tracking features are only active when the camera is set to \"environment\" mode.\n * The default value is \"user\", which accommodates the majority of Lenses.\n * \"user\" refers to the front-facing camera, while \"environment\" refers to the rear-facing camera.\n */\n cameraType: \"user\" | \"environment\";\n\n /**\n * Limits the frames per second (FPS) to optimize performance by reducing compute resources\n * when high FPS is not critical. By default, no limit is set, allowing usage of the video's native FPS.\n * Useful for controlling resource usage on varying device capabilities.\n */\n fpsLimit: number;\n}\n\n/** @category Rendering */\nexport interface CameraKitSourceInfo {\n /**\n * HTML element or MediaStream as an input source.\n * If useManualFrameProcessing is true, then this parameter is optional.\n */\n media?: HTMLCanvasElement | HTMLImageElement | HTMLVideoElement | MediaStream;\n\n /**\n * Whether to provide frames manually.\n */\n useManualFrameProcessing?: boolean;\n\n /**\n * If specified, the passed-in tracking data buffer will be used as tracking data for the current\n * media element instead of live tracking data.\n */\n replayTrackingData?: {\n buffer: Uint8Array | ArrayBuffer;\n };\n}\n\n/**\n * This general-purpose class represents a source of media for a {@link CameraKitSession}.\n *\n * When an instance is passed to {@link CameraKitSession.setSource | CameraKitSession.setSource}, it will be \"attached\"\n * to the session. Later it may be \"detached\" from the session.\n *\n * Passing a {@link CameraKitSourceSubscriber} to the constructor allows callers to specify behavior\n * that will occur when the source is attached and detached. This can be used to e.g. update the render size.\n *\n * @category Rendering\n */\nclass CameraKitSource {\n private lensCore?: LensCore;\n private readonly deviceInfo: CameraKitDeviceOptions;\n\n constructor(\n private readonly sourceInfo: CameraKitSourceInfo,\n private readonly subscriber: CameraKitSourceSubscriber = {},\n deviceInfo: Partial<CameraKitDeviceOptions> = {}\n ) {\n this.deviceInfo = { ...defaultDeviceInfo, ...copyDefinedProperties(deviceInfo) };\n }\n\n /**\n * Called by {@link CameraKitSession} when this source is set as that session's source.\n *\n * @param lensCore\n * @param reportError Calling this function will report an error back to the session.\n * @returns Rejects if any calls to LensCore or CameraKitSource.subscriber.onAttach fail.\n * @internal\n */\n async attach(lensCore: LensCore, reportError: (error: Error) => void): Promise<void> {\n if (this.lensCore) {\n throw new Error(\n \"Cannot attach. This CameraKitCustomSource has already been attached to \" +\n \"a CameraKitSession. To re-attach, create a copy of this CameraKitCustomSource.\"\n );\n }\n\n this.lensCore = lensCore;\n\n await lensCore.useMediaElement({\n autoplayNewMedia: false,\n autoplayPreviewCanvas: false,\n media: this.sourceInfo.media,\n pauseExistingMedia: false,\n replayTrackingData: this.sourceInfo.replayTrackingData,\n requestWebcam: false,\n startOnFrontCamera: [\"user\", \"front\"].includes(this.deviceInfo.cameraType),\n useManualFrameProcessing: this.sourceInfo.useManualFrameProcessing,\n });\n\n // LensCore uses 0 to remove the limit.\n const fps = this.deviceInfo.fpsLimit < Number.POSITIVE_INFINITY ? this.deviceInfo.fpsLimit : 0;\n await lensCore.setFPSLimit({ fps });\n await lensCore.setRenderSize({ mode: \"matchInputResolution\" });\n\n if (this.subscriber.onAttach) await this.subscriber.onAttach(this, lensCore, reportError);\n }\n\n /**\n * Make a copy of the source, sharing the same {@link CameraKitSourceSubscriber}.\n *\n * @param deviceInfo Optionally provide new device info for the copy (e.g. to change the camera type).\n * @returns The new {@link CameraKitSource}\n */\n copy(deviceInfo: Partial<CameraKitDeviceOptions> = {}): CameraKitSource {\n return new CameraKitSource(this.sourceInfo, this.subscriber, { ...this.deviceInfo, ...deviceInfo });\n }\n\n /**\n * Called by {@link CameraKitSession} when it must remove this source.\n *\n * @param reportError Calling this function will report an error back to the session.\n * @returns\n * @internal\n */\n detach(reportError: (error: Error) => void): void | Promise<void> {\n if (!this.lensCore) return Promise.reject(createNotAttachedError(\"Cannot detach\"));\n if (this.subscriber.onDetach) return this.subscriber.onDetach(reportError);\n }\n\n /**\n * Set the resolution used to render this source.\n *\n * If greater performance is required, a smaller render size may boost frame-rate. It does come at a cost, including\n * loss of accuracy in various tracking and computer-vision algorithms (since they'll be operating on fewer pixels).\n *\n * By default (i.e. if this method is never called), then the render size will match the size of the input media.\n * Best performance can be achieved by varying the size of the input media and allowing CameraKit to render at a\n * resolution that matches the input media -- this method should only be used if the input media resolution cannot\n * be changed to the desired size.\n *\n * It’s important to distinguish render size from display size. The size at which the output canvases are displayed\n * on a web page is determined by the CSS of the page. It is distinct from the size at which CameraKit renders\n * Lenses. Performance is dominated by render size, while any display scaling (using CSS) can most often be thought\n * of as free.\n *\n * The size of the Live and Capture {@link RenderTarget} is always the same.\n *\n * @todo Currently it's only valid to call `setRenderSize` after `CameraKitSession.play` has been called. This\n * constraint should be removed, so callers don't have to understand the underlying LensCore state machine.\n *\n * @param width pixels\n * @param height pixels\n * @returns Promise resolves when the render size has been successfully updated.\n */\n @validate(isValidNumber, isValidNumber)\n setRenderSize(width: number, height: number): Promise<void> {\n if (!this.lensCore) return Promise.reject(createNotAttachedError(\"Cannot setRenderSize\"));\n const target = { width, height };\n return this.lensCore.setRenderSize({ mode: \"explicit\", target });\n }\n\n /**\n * Apply a 2D transformation to the source (e.g. translation, rotation, scale).\n *\n * @param transform Specifies the 3x3 matrix describing the transformation.\n */\n @validate(isTransform2D)\n setTransform(transform: Transform2D): Promise<void> {\n if (!this.lensCore) return Promise.reject(createNotAttachedError(\"Cannot setTransform\"));\n const matrix = new Float32Array(transform.matrix);\n return this.lensCore.setInputTransform({ matrix });\n }\n}\n\n// NOTE: jest doesn't like default exports of classes with decorated methods.\nexport { CameraKitSource };\n"]}
@@ -0,0 +1,42 @@
1
+ import { CameraKitSource } from "./CameraKitSource";
2
+ /** @internal */
3
+ export type FrameFormat = "rgb" | "yuv" | "nv12";
4
+ /** @internal */
5
+ export interface FrameInput {
6
+ format?: FrameFormat;
7
+ imageData: ImageData;
8
+ timestampMillis: number;
9
+ }
10
+ /** @internal */
11
+ export interface FrameOutput {
12
+ live: ImageData;
13
+ capture: ImageData;
14
+ }
15
+ /** @internal */
16
+ export interface MediaSourceFunction {
17
+ (render: (frame: FrameInput) => Promise<FrameOutput>): Promise<void>;
18
+ }
19
+ /**
20
+ * Function source options.
21
+ */
22
+ export interface FunctionSourceOptions {
23
+ /**
24
+ * Specifies the camera type for which certain features are enabled or disabled.
25
+ * For example, surface tracking features are only active when the camera is set to "environment" mode.
26
+ * The default value is "user", which accommodates the majority of Lenses.
27
+ * "user" refers to the front-facing camera, while "environment" refers to the rear-facing camera.
28
+ */
29
+ cameraType: "user" | "environment";
30
+ }
31
+ /**
32
+ * Creates a {@link CameraKitSource} from a function which provides per-frame pixel data to CameraKit.
33
+ *
34
+ * @param sourceFunction This function will be called in a requestAnimationFrame loop. Each time it is called, it is
35
+ * passed a `render` function. It may call `render` and CameraKit will process the pixel data passed to `render` and
36
+ * return a Promise of the processed pixels (along with rendering them to the normal output canvases).
37
+ * @param options Options.
38
+ *
39
+ * @internal
40
+ */
41
+ export declare const createFunctionSource: (sourceFunction: MediaSourceFunction, options?: Partial<FunctionSourceOptions>) => CameraKitSource;
42
+ //# sourceMappingURL=FunctionSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionSource.d.ts","sourceRoot":"","sources":["../../src/media-sources/FunctionSource.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqCpD,gBAAgB;AAChB,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;AAEjD,gBAAgB;AAChB,MAAM,WAAW,UAAU;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,gBAAgB;AAChB,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC;CACtB;AAED,gBAAgB;AAChB,MAAM,WAAW,mBAAmB;IAChC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;;;;OAKG;IACH,UAAU,EAAE,MAAM,GAAG,aAAa,CAAC;CACtC;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,mBACb,mBAAmB,YAC1B,QAAQ,qBAAqB,CAAC,KACxC,eA0FF,CAAC"}
@@ -0,0 +1,105 @@
1
+ import { __awaiter } from "tslib";
2
+ import { CameraKitSource } from "./CameraKitSource";
3
+ const getYUVImageData = (canvas, lensCore) => __awaiter(void 0, void 0, void 0, function* () {
4
+ const { width, height } = canvas;
5
+ const outputBuffer = new ArrayBuffer((width * height * 3) / 2);
6
+ yield lensCore.imageToYuvBuffer({ image: canvas, width, height, outputBuffer });
7
+ const pixels = new Uint8ClampedArray(outputBuffer);
8
+ return new ImageData(pixels, width, height);
9
+ });
10
+ const getRGBImageData = (output, imageReader2D) => {
11
+ if (imageReader2D === null)
12
+ return new ImageData(0, 0);
13
+ imageReader2D.drawImage(output, 0, 0);
14
+ return imageReader2D.getImageData(0, 0, output.width, output.height);
15
+ };
16
+ const getImageBitmap = (imageData, format) => __awaiter(void 0, void 0, void 0, function* () {
17
+ switch (format) {
18
+ case "nv12":
19
+ case "yuv":
20
+ if (!window.VideoFrame)
21
+ return Promise.reject(new Error(`Cannot process frame. ImageData in ${format} is not supported by this browser.`));
22
+ const frame = new VideoFrame(imageData.data.buffer, {
23
+ format: "NV12",
24
+ codedWidth: imageData.width,
25
+ codedHeight: imageData.height,
26
+ timestamp: 0,
27
+ });
28
+ return createImageBitmap(frame);
29
+ case "rgb":
30
+ return createImageBitmap(imageData);
31
+ }
32
+ });
33
+ export const createFunctionSource = (sourceFunction, options = {}) => {
34
+ let width = 0;
35
+ let height = 0;
36
+ let shouldProcessFrame = true;
37
+ const imageReaderCanvas = document.createElement("canvas");
38
+ const imageReader2D = imageReaderCanvas.getContext("2d");
39
+ const subscriber = {
40
+ onAttach: (source, lensCore, reportError) => {
41
+ const outputs = lensCore.getOutputCanvases();
42
+ const output = {
43
+ live: outputs[lensCore.CanvasType.Preview.value],
44
+ capture: outputs[lensCore.CanvasType.Capture.value],
45
+ };
46
+ const processFrame = (source, lensCore, reportError) => requestAnimationFrame(() => __awaiter(void 0, void 0, void 0, function* () {
47
+ var _a;
48
+ if (!shouldProcessFrame)
49
+ return;
50
+ try {
51
+ yield sourceFunction(({ format, imageData, timestampMillis }) => {
52
+ const frameOutput = new Promise((resolve, reject) => __awaiter(void 0, void 0, void 0, function* () {
53
+ const inputFrame = yield getImageBitmap(imageData, format !== null && format !== void 0 ? format : "rgb");
54
+ if (inputFrame.width !== width || inputFrame.height !== height) {
55
+ width = imageReaderCanvas.width = inputFrame.width;
56
+ height = imageReaderCanvas.height = inputFrame.height;
57
+ source.setRenderSize(width, height);
58
+ }
59
+ lensCore
60
+ .processFrame({ inputFrame, timestampMillis })
61
+ .then(() => __awaiter(void 0, void 0, void 0, function* () {
62
+ inputFrame.close();
63
+ switch (format !== null && format !== void 0 ? format : "rgb") {
64
+ case "nv12":
65
+ case "yuv":
66
+ const [live, capture] = yield Promise.all([
67
+ getYUVImageData(output.live, lensCore),
68
+ getYUVImageData(output.capture, lensCore),
69
+ ]).catch((error) => {
70
+ reject(error);
71
+ return [undefined, undefined];
72
+ });
73
+ if (!live || !capture)
74
+ return;
75
+ return resolve({ live, capture });
76
+ case "rgb":
77
+ return resolve({
78
+ live: getRGBImageData(output.live, imageReader2D),
79
+ capture: getRGBImageData(output.capture, imageReader2D),
80
+ });
81
+ }
82
+ }))
83
+ .catch((error) => {
84
+ inputFrame.close();
85
+ reject(error);
86
+ });
87
+ }));
88
+ frameOutput.finally(() => processFrame(source, lensCore, reportError));
89
+ return frameOutput;
90
+ });
91
+ }
92
+ catch (error) {
93
+ reportError(new Error("Failure to process frame, which was not handled by the provided " +
94
+ `MediaSourceFunction ${(_a = sourceFunction.name) !== null && _a !== void 0 ? _a : "anonymous"}.`, { cause: error }));
95
+ }
96
+ }));
97
+ processFrame(source, lensCore, reportError);
98
+ },
99
+ onDetach: () => {
100
+ shouldProcessFrame = false;
101
+ },
102
+ };
103
+ return new CameraKitSource({ useManualFrameProcessing: true }, subscriber, options);
104
+ };
105
+ //# sourceMappingURL=FunctionSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FunctionSource.js","sourceRoot":"","sources":["../../src/media-sources/FunctionSource.ts"],"names":[],"mappings":"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","sourcesContent":["import type { LensCore } from \"../lens-core-module/lensCore\";\nimport type { CameraKitSourceSubscriber } from \"./CameraKitSource\";\nimport { CameraKitSource } from \"./CameraKitSource\";\n\nconst getYUVImageData = async (canvas: HTMLCanvasElement, lensCore: LensCore): Promise<ImageData> => {\n const { width, height } = canvas;\n // A YUV buffer has lower-res UV channels, so the total number of bytes works out like so:\n const outputBuffer = new ArrayBuffer((width * height * 3) / 2);\n await lensCore.imageToYuvBuffer({ image: canvas, width, height, outputBuffer });\n const pixels = new Uint8ClampedArray(outputBuffer);\n return new ImageData(pixels, width, height);\n};\n\nconst getRGBImageData = (output: HTMLCanvasElement, imageReader2D: CanvasRenderingContext2D | null): ImageData => {\n if (imageReader2D === null) return new ImageData(0, 0);\n imageReader2D.drawImage(output, 0, 0);\n return imageReader2D.getImageData(0, 0, output.width, output.height);\n};\n\nconst getImageBitmap = async (imageData: ImageData, format: FrameFormat): Promise<ImageBitmap> => {\n switch (format) {\n case \"nv12\":\n case \"yuv\":\n if (!window.VideoFrame)\n return Promise.reject(\n new Error(`Cannot process frame. ImageData in ${format} is not supported by this browser.`)\n );\n const frame = new VideoFrame(imageData.data.buffer, {\n format: \"NV12\",\n codedWidth: imageData.width,\n codedHeight: imageData.height,\n timestamp: 0,\n });\n return createImageBitmap(frame);\n case \"rgb\":\n return createImageBitmap(imageData);\n }\n};\n\n/** @internal */\nexport type FrameFormat = \"rgb\" | \"yuv\" | \"nv12\";\n\n/** @internal */\nexport interface FrameInput {\n format?: FrameFormat;\n imageData: ImageData;\n timestampMillis: number;\n}\n\n/** @internal */\nexport interface FrameOutput {\n live: ImageData;\n capture: ImageData;\n}\n\n/** @internal */\nexport interface MediaSourceFunction {\n (render: (frame: FrameInput) => Promise<FrameOutput>): Promise<void>;\n}\n\n/**\n * Function source options.\n */\nexport interface FunctionSourceOptions {\n /**\n * Specifies the camera type for which certain features are enabled or disabled.\n * For example, surface tracking features are only active when the camera is set to \"environment\" mode.\n * The default value is \"user\", which accommodates the majority of Lenses.\n * \"user\" refers to the front-facing camera, while \"environment\" refers to the rear-facing camera.\n */\n cameraType: \"user\" | \"environment\";\n}\n\n/**\n * Creates a {@link CameraKitSource} from a function which provides per-frame pixel data to CameraKit.\n *\n * @param sourceFunction This function will be called in a requestAnimationFrame loop. Each time it is called, it is\n * passed a `render` function. It may call `render` and CameraKit will process the pixel data passed to `render` and\n * return a Promise of the processed pixels (along with rendering them to the normal output canvases).\n * @param options Options.\n *\n * @internal\n */\nexport const createFunctionSource = (\n sourceFunction: MediaSourceFunction,\n options: Partial<FunctionSourceOptions> = {}\n): CameraKitSource => {\n let width = 0;\n let height = 0;\n let shouldProcessFrame = true;\n\n // We require an auxiliary canvas that we can use to read back pixel data (unless we're in YUV mode, in which case\n // we use LensCore to convert between formats and we don't need this canvas).\n const imageReaderCanvas = document.createElement(\"canvas\");\n const imageReader2D = imageReaderCanvas.getContext(\"2d\");\n\n const subscriber: CameraKitSourceSubscriber = {\n onAttach: (source, lensCore, reportError) => {\n const outputs = lensCore.getOutputCanvases();\n const output = {\n live: outputs[lensCore.CanvasType.Preview.value],\n capture: outputs[lensCore.CanvasType.Capture.value],\n };\n\n const processFrame = (source: CameraKitSource, lensCore: LensCore, reportError: (error: Error) => void) =>\n requestAnimationFrame(async () => {\n if (!shouldProcessFrame) return;\n try {\n await sourceFunction(({ format, imageData, timestampMillis }) => {\n // TODO: with processFrame promisified, we don't really need to create a wrapper promise\n const frameOutput = new Promise<FrameOutput>(async (resolve, reject) => {\n const inputFrame = await getImageBitmap(imageData, format ?? \"rgb\");\n if (inputFrame.width !== width || inputFrame.height !== height) {\n width = imageReaderCanvas.width = inputFrame.width;\n height = imageReaderCanvas.height = inputFrame.height;\n // We don't await this promise, because we want to continue to process frames and\n // let LensCore manage the concurrency between setting resolution and processing a\n // frame.\n source.setRenderSize(width, height);\n }\n lensCore\n .processFrame({ inputFrame, timestampMillis })\n .then(async () => {\n // Closing releases graphics resources associated with the frame, now that is\n // has been processed.\n inputFrame.close();\n\n switch (format ?? \"rgb\") {\n case \"nv12\":\n case \"yuv\":\n const [live, capture] = await Promise.all([\n getYUVImageData(output.live, lensCore),\n getYUVImageData(output.capture, lensCore),\n ]).catch((error) => {\n reject(error);\n return [undefined, undefined] as const;\n });\n // if either of these is undefined, we'll have already rejected\n // the promise, so we can return.\n if (!live || !capture) return;\n return resolve({ live, capture });\n case \"rgb\":\n return resolve({\n live: getRGBImageData(output.live, imageReader2D),\n capture: getRGBImageData(output.capture, imageReader2D),\n });\n }\n })\n .catch((error) => {\n inputFrame.close();\n reject(error);\n });\n });\n // Even if there's an error processing the frame, we do want to attempt to process the next\n // frame. We expect `sourceFunction` to handle a rejected `frameOutput` Promise.\n frameOutput.finally(() => processFrame(source, lensCore, reportError));\n return frameOutput;\n });\n } catch (error) {\n reportError(\n new Error(\n \"Failure to process frame, which was not handled by the provided \" +\n `MediaSourceFunction ${sourceFunction.name ?? \"anonymous\"}.`,\n { cause: error }\n )\n );\n }\n });\n processFrame(source, lensCore, reportError);\n },\n onDetach: () => {\n shouldProcessFrame = false;\n },\n };\n\n return new CameraKitSource({ useManualFrameProcessing: true }, subscriber, options);\n};\n"]}
@@ -0,0 +1,13 @@
1
+ import type { CameraKitDeviceOptions } from "./CameraKitSource";
2
+ import { CameraKitSource } from "./CameraKitSource";
3
+ /**
4
+ * Create a {@link CameraKitSource} from an
5
+ * [HTMLImageElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement).
6
+ *
7
+ * @param image Image element.
8
+ * @param options Options.
9
+ *
10
+ * @category Rendering
11
+ */
12
+ export declare function createImageSource(image: HTMLImageElement, options?: Partial<CameraKitDeviceOptions>): CameraKitSource;
13
+ //# sourceMappingURL=ImageSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageSource.d.ts","sourceRoot":"","sources":["../../src/media-sources/ImageSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC7B,KAAK,EAAE,gBAAgB,EACvB,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM,GAC9C,eAAe,CAQjB"}
@@ -0,0 +1,7 @@
1
+ import { CameraKitSource } from "./CameraKitSource";
2
+ export function createImageSource(image, options = {}) {
3
+ return new CameraKitSource({
4
+ media: image,
5
+ }, {}, options);
6
+ }
7
+ //# sourceMappingURL=ImageSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageSource.js","sourceRoot":"","sources":["../../src/media-sources/ImageSource.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAWpD,MAAM,UAAU,iBAAiB,CAC7B,KAAuB,EACvB,UAA2C,EAAE;IAE7C,OAAO,IAAI,eAAe,CACtB;QACI,KAAK,EAAE,KAAK;KACf,EACD,EAAE,EACF,OAAO,CACV,CAAC;AACN,CAAC","sourcesContent":["import type { CameraKitDeviceOptions } from \"./CameraKitSource\";\nimport { CameraKitSource } from \"./CameraKitSource\";\n\n/**\n * Create a {@link CameraKitSource} from an\n * [HTMLImageElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement).\n *\n * @param image Image element.\n * @param options Options.\n *\n * @category Rendering\n */\nexport function createImageSource(\n image: HTMLImageElement,\n options: Partial<CameraKitDeviceOptions> = {}\n): CameraKitSource {\n return new CameraKitSource(\n {\n media: image,\n },\n {},\n options\n );\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import { Transform2D } from "../transforms/Transform2D";
2
+ import type { CameraKitDeviceOptions } from "./CameraKitSource";
3
+ import { CameraKitSource } from "./CameraKitSource";
4
+ /**
5
+ * Media stream source options.
6
+ *
7
+ * @category Rendering
8
+ */
9
+ export interface MediaStreamSourceOptions extends CameraKitDeviceOptions {
10
+ /**
11
+ * Specifies the 2D transformation to apply to the Lens.
12
+ * By default, CameraKit applies no transformation.
13
+ */
14
+ transform: Transform2D;
15
+ /**
16
+ * Indicates whether the audio from the source should be disabled.
17
+ * By default, CameraKit passes audio to the Lens.
18
+ */
19
+ disableSourceAudio: boolean;
20
+ }
21
+ /**
22
+ * Create a {@link CameraKitSource} from any
23
+ * [MediaStream](https://developer.mozilla.org/en-US/docs/Web/API/MediaStream).
24
+ *
25
+ * @param stream Any MediaStream, such as obtained via `canvas.captureStream()` or `mediaDevices.getUserMedia()`.
26
+ * @param options Options.
27
+ *
28
+ * @category Rendering
29
+ */
30
+ export declare function createMediaStreamSource(stream: MediaStream, options?: Partial<MediaStreamSourceOptions>): CameraKitSource;
31
+ //# sourceMappingURL=MediaStreamSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaStreamSource.d.ts","sourceRoot":"","sources":["../../src/media-sources/MediaStreamSource.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAqB,MAAM,mBAAmB,CAAC;AA4CvE;;;;GAIG;AACH,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;IACpE;;;OAGG;IACH,SAAS,EAAE,WAAW,CAAC;IAEvB;;;OAGG;IACH,kBAAkB,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACnC,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,OAAO,CAAC,wBAAwB,CAAM,GAChD,eAAe,CAkJjB"}