@azure/storage-blob-changefeed 12.0.0-preview.4 → 12.0.0-preview.5

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 (501) hide show
  1. package/LICENSE +3 -3
  2. package/README.md +87 -47
  3. package/{types/3.1/storage-blob-changefeed/src → dist/browser}/AvroReaderFactory.d.ts +10 -9
  4. package/dist/browser/AvroReaderFactory.d.ts.map +1 -0
  5. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/AvroReaderFactory.js +2 -2
  6. package/dist/browser/AvroReaderFactory.js.map +1 -0
  7. package/{types/3.1/storage-blob-changefeed/src → dist/browser}/BlobChangeFeedClient.d.ts +201 -182
  8. package/dist/browser/BlobChangeFeedClient.d.ts.map +1 -0
  9. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/BlobChangeFeedClient.js +117 -100
  10. package/dist/browser/BlobChangeFeedClient.js.map +1 -0
  11. package/{types/latest/storage-blob-changefeed/src → dist/browser}/ChangeFeed.d.ts +6 -6
  12. package/dist/browser/ChangeFeed.d.ts.map +1 -0
  13. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/ChangeFeed.js +20 -32
  14. package/dist/browser/ChangeFeed.js.map +1 -0
  15. package/{types/3.1/storage-blob-changefeed/src → dist/browser}/ChangeFeedFactory.d.ts +13 -13
  16. package/dist/browser/ChangeFeedFactory.d.ts.map +1 -0
  17. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/ChangeFeedFactory.js +20 -27
  18. package/dist/browser/ChangeFeedFactory.js.map +1 -0
  19. package/{types/latest/storage-blob-changefeed/src → dist/browser}/Chunk.d.ts +4 -5
  20. package/dist/browser/Chunk.d.ts.map +1 -0
  21. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/Chunk.js +13 -8
  22. package/dist/browser/Chunk.js.map +1 -0
  23. package/{types/latest/storage-blob-changefeed/src → dist/browser}/ChunkFactory.d.ts +5 -5
  24. package/dist/browser/ChunkFactory.d.ts.map +1 -0
  25. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/ChunkFactory.js +7 -4
  26. package/dist/browser/ChunkFactory.js.map +1 -0
  27. package/{types/latest/storage-blob-changefeed/src → dist/browser}/LazyLoadingBlobStream.d.ts +4 -4
  28. package/dist/browser/LazyLoadingBlobStream.d.ts.map +1 -0
  29. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/LazyLoadingBlobStream.js +25 -36
  30. package/dist/browser/LazyLoadingBlobStream.js.map +1 -0
  31. package/dist/browser/LazyLoadingBlobStreamFactory.d.ts +7 -0
  32. package/dist/browser/LazyLoadingBlobStreamFactory.d.ts.map +1 -0
  33. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/LazyLoadingBlobStreamFactory.js +2 -2
  34. package/dist/browser/LazyLoadingBlobStreamFactory.js.map +1 -0
  35. package/{types/latest/storage-blob-changefeed/src → dist/browser}/Segment.d.ts +5 -5
  36. package/dist/browser/Segment.d.ts.map +1 -0
  37. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/Segment.js +16 -19
  38. package/dist/browser/Segment.js.map +1 -0
  39. package/{types/3.1/storage-blob-changefeed/src → dist/browser}/SegmentFactory.d.ts +29 -29
  40. package/dist/browser/SegmentFactory.d.ts.map +1 -0
  41. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/SegmentFactory.js +12 -23
  42. package/dist/browser/SegmentFactory.js.map +1 -0
  43. package/{types/3.1/storage-blob-changefeed/src → dist/browser}/Shard.d.ts +28 -28
  44. package/dist/browser/Shard.d.ts.map +1 -0
  45. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/Shard.js +9 -16
  46. package/dist/browser/Shard.js.map +1 -0
  47. package/{types/latest/storage-blob-changefeed/src → dist/browser}/ShardFactory.d.ts +5 -5
  48. package/dist/browser/ShardFactory.d.ts.map +1 -0
  49. package/dist/browser/ShardFactory.js +55 -0
  50. package/dist/browser/ShardFactory.js.map +1 -0
  51. package/dist/browser/index.d.ts +4 -0
  52. package/dist/browser/index.d.ts.map +1 -0
  53. package/dist/browser/index.js +6 -0
  54. package/dist/browser/index.js.map +1 -0
  55. package/dist/browser/log.d.ts.map +1 -0
  56. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/log.js +1 -1
  57. package/dist/browser/log.js.map +1 -0
  58. package/{types/latest/storage-blob-changefeed/src → dist/browser}/models/BlobChangeFeedEvent.d.ts +5 -5
  59. package/dist/browser/models/BlobChangeFeedEvent.d.ts.map +1 -0
  60. package/dist/browser/models/BlobChangeFeedEvent.js +4 -0
  61. package/dist/browser/models/BlobChangeFeedEvent.js.map +1 -0
  62. package/dist/browser/models/ChangeFeedCursor.d.ts.map +1 -0
  63. package/dist/browser/models/ChangeFeedCursor.js +4 -0
  64. package/dist/browser/models/ChangeFeedCursor.js.map +1 -0
  65. package/{types/latest/storage-blob-changefeed/src → dist/browser}/models/models.d.ts +2 -2
  66. package/dist/browser/models/models.d.ts.map +1 -0
  67. package/dist/browser/models/models.js +4 -0
  68. package/dist/browser/models/models.js.map +1 -0
  69. package/dist/browser/package.json +3 -0
  70. package/dist/browser/utils/constants.d.ts.map +1 -0
  71. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/utils/constants.js +2 -2
  72. package/dist/browser/utils/constants.js.map +1 -0
  73. package/dist/browser/utils/tracing.d.ts +6 -0
  74. package/dist/browser/utils/tracing.d.ts.map +1 -0
  75. package/dist/browser/utils/tracing.js +14 -0
  76. package/dist/browser/utils/tracing.js.map +1 -0
  77. package/{types/latest/storage-blob-changefeed/src → dist/browser}/utils/utils.browser.d.ts +0 -1
  78. package/dist/browser/utils/utils.browser.d.ts.map +1 -0
  79. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/utils/utils.browser.js +1 -1
  80. package/dist/browser/utils/utils.browser.js.map +1 -0
  81. package/{types/latest/storage-blob-changefeed/src → dist/browser}/utils/utils.common.d.ts +3 -10
  82. package/dist/browser/utils/utils.common.d.ts.map +1 -0
  83. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/utils/utils.common.js +26 -91
  84. package/dist/browser/utils/utils.common.js.map +1 -0
  85. package/{types/latest/storage-blob-changefeed/src → dist/browser}/utils/utils.node.d.ts +1 -2
  86. package/dist/browser/utils/utils.node.d.ts.map +1 -0
  87. package/{dist-esm/storage-blob-changefeed/src → dist/browser}/utils/utils.node.js +2 -2
  88. package/dist/browser/utils/utils.node.js.map +1 -0
  89. package/{types/latest/storage-blob-changefeed/src → dist/commonjs}/AvroReaderFactory.d.ts +2 -1
  90. package/dist/commonjs/AvroReaderFactory.d.ts.map +1 -0
  91. package/dist/commonjs/AvroReaderFactory.js +21 -0
  92. package/dist/commonjs/AvroReaderFactory.js.map +1 -0
  93. package/{types/latest/storage-blob-changefeed/src → dist/commonjs}/BlobChangeFeedClient.d.ts +79 -60
  94. package/dist/commonjs/BlobChangeFeedClient.d.ts.map +1 -0
  95. package/dist/commonjs/BlobChangeFeedClient.js +248 -0
  96. package/dist/commonjs/BlobChangeFeedClient.js.map +1 -0
  97. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/ChangeFeed.d.ts +37 -37
  98. package/dist/commonjs/ChangeFeed.d.ts.map +1 -0
  99. package/dist/commonjs/ChangeFeed.js +108 -0
  100. package/dist/commonjs/ChangeFeed.js.map +1 -0
  101. package/{types/latest/storage-blob-changefeed/src → dist/commonjs}/ChangeFeedFactory.d.ts +4 -4
  102. package/dist/commonjs/ChangeFeedFactory.d.ts.map +1 -0
  103. package/dist/commonjs/ChangeFeedFactory.js +126 -0
  104. package/dist/commonjs/ChangeFeedFactory.js.map +1 -0
  105. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/Chunk.d.ts +27 -28
  106. package/dist/commonjs/Chunk.d.ts.map +1 -0
  107. package/dist/commonjs/Chunk.js +49 -0
  108. package/dist/commonjs/Chunk.js.map +1 -0
  109. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/ChunkFactory.d.ts +23 -23
  110. package/dist/commonjs/ChunkFactory.d.ts.map +1 -0
  111. package/dist/commonjs/ChunkFactory.js +37 -0
  112. package/dist/commonjs/ChunkFactory.js.map +1 -0
  113. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/LazyLoadingBlobStream.d.ts +46 -46
  114. package/dist/commonjs/LazyLoadingBlobStream.d.ts.map +1 -0
  115. package/dist/commonjs/LazyLoadingBlobStream.js +96 -0
  116. package/dist/commonjs/LazyLoadingBlobStream.js.map +1 -0
  117. package/dist/commonjs/LazyLoadingBlobStreamFactory.d.ts +7 -0
  118. package/dist/commonjs/LazyLoadingBlobStreamFactory.d.ts.map +1 -0
  119. package/dist/commonjs/LazyLoadingBlobStreamFactory.js +13 -0
  120. package/dist/commonjs/LazyLoadingBlobStreamFactory.js.map +1 -0
  121. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/Segment.d.ts +29 -29
  122. package/dist/commonjs/Segment.d.ts.map +1 -0
  123. package/dist/commonjs/Segment.js +73 -0
  124. package/dist/commonjs/Segment.js.map +1 -0
  125. package/{types/latest/storage-blob-changefeed/src → dist/commonjs}/SegmentFactory.d.ts +5 -5
  126. package/dist/commonjs/SegmentFactory.d.ts.map +1 -0
  127. package/dist/commonjs/SegmentFactory.js +51 -0
  128. package/dist/commonjs/SegmentFactory.js.map +1 -0
  129. package/{types/latest/storage-blob-changefeed/src → dist/commonjs}/Shard.d.ts +6 -6
  130. package/dist/commonjs/Shard.d.ts.map +1 -0
  131. package/dist/commonjs/Shard.js +50 -0
  132. package/dist/commonjs/Shard.js.map +1 -0
  133. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/ShardFactory.d.ts +21 -21
  134. package/dist/commonjs/ShardFactory.d.ts.map +1 -0
  135. package/dist/commonjs/ShardFactory.js +59 -0
  136. package/dist/commonjs/ShardFactory.js.map +1 -0
  137. package/dist/commonjs/index.d.ts +4 -0
  138. package/dist/commonjs/index.d.ts.map +1 -0
  139. package/dist/commonjs/index.js +9 -0
  140. package/dist/commonjs/index.js.map +1 -0
  141. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/log.d.ts +5 -5
  142. package/dist/commonjs/log.d.ts.map +1 -0
  143. package/dist/commonjs/log.js +11 -0
  144. package/dist/commonjs/log.js.map +1 -0
  145. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/models/BlobChangeFeedEvent.d.ts +233 -233
  146. package/dist/commonjs/models/BlobChangeFeedEvent.d.ts.map +1 -0
  147. package/dist/commonjs/models/BlobChangeFeedEvent.js +5 -0
  148. package/dist/commonjs/models/BlobChangeFeedEvent.js.map +1 -0
  149. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/models/ChangeFeedCursor.d.ts +17 -17
  150. package/dist/commonjs/models/ChangeFeedCursor.d.ts.map +1 -0
  151. package/dist/commonjs/models/ChangeFeedCursor.js +5 -0
  152. package/dist/commonjs/models/ChangeFeedCursor.js.map +1 -0
  153. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/models/models.d.ts +23 -23
  154. package/dist/commonjs/models/models.d.ts.map +1 -0
  155. package/dist/commonjs/models/models.js +5 -0
  156. package/dist/commonjs/models/models.js.map +1 -0
  157. package/dist/commonjs/package.json +3 -0
  158. package/{types/latest → dist/commonjs}/tsdoc-metadata.json +11 -11
  159. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/utils/constants.d.ts +9 -9
  160. package/dist/commonjs/utils/constants.d.ts.map +1 -0
  161. package/dist/commonjs/utils/constants.js +14 -0
  162. package/dist/commonjs/utils/constants.js.map +1 -0
  163. package/dist/commonjs/utils/tracing.d.ts +6 -0
  164. package/dist/commonjs/utils/tracing.d.ts.map +1 -0
  165. package/dist/commonjs/utils/tracing.js +17 -0
  166. package/dist/commonjs/utils/tracing.js.map +1 -0
  167. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/utils/utils.browser.d.ts +14 -15
  168. package/dist/commonjs/utils/utils.browser.d.ts.map +1 -0
  169. package/dist/commonjs/utils/utils.browser.js +34 -0
  170. package/dist/commonjs/utils/utils.browser.js.map +1 -0
  171. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/utils/utils.common.d.ts +37 -44
  172. package/dist/commonjs/utils/utils.common.d.ts.map +1 -0
  173. package/dist/commonjs/utils/utils.common.js +180 -0
  174. package/dist/commonjs/utils/utils.common.js.map +1 -0
  175. package/{types/3.1/storage-blob-changefeed/src → dist/commonjs}/utils/utils.node.d.ts +14 -15
  176. package/dist/commonjs/utils/utils.node.d.ts.map +1 -0
  177. package/dist/commonjs/utils/utils.node.js +32 -0
  178. package/dist/commonjs/utils/utils.node.js.map +1 -0
  179. package/dist/esm/AvroReaderFactory.d.ts +10 -0
  180. package/dist/esm/AvroReaderFactory.d.ts.map +1 -0
  181. package/dist/esm/AvroReaderFactory.js +17 -0
  182. package/dist/esm/AvroReaderFactory.js.map +1 -0
  183. package/dist/esm/BlobChangeFeedClient.d.ts +201 -0
  184. package/dist/esm/BlobChangeFeedClient.d.ts.map +1 -0
  185. package/dist/esm/BlobChangeFeedClient.js +242 -0
  186. package/dist/esm/BlobChangeFeedClient.js.map +1 -0
  187. package/dist/esm/ChangeFeed.d.ts +37 -0
  188. package/dist/esm/ChangeFeed.d.ts.map +1 -0
  189. package/dist/esm/ChangeFeed.js +104 -0
  190. package/dist/esm/ChangeFeed.js.map +1 -0
  191. package/dist/esm/ChangeFeedFactory.d.ts +13 -0
  192. package/dist/esm/ChangeFeedFactory.d.ts.map +1 -0
  193. package/dist/esm/ChangeFeedFactory.js +122 -0
  194. package/dist/esm/ChangeFeedFactory.js.map +1 -0
  195. package/dist/esm/Chunk.d.ts +27 -0
  196. package/dist/esm/Chunk.d.ts.map +1 -0
  197. package/dist/esm/Chunk.js +45 -0
  198. package/dist/esm/Chunk.js.map +1 -0
  199. package/dist/esm/ChunkFactory.d.ts +23 -0
  200. package/dist/esm/ChunkFactory.d.ts.map +1 -0
  201. package/dist/esm/ChunkFactory.js +33 -0
  202. package/dist/esm/ChunkFactory.js.map +1 -0
  203. package/dist/esm/LazyLoadingBlobStream.d.ts +46 -0
  204. package/dist/esm/LazyLoadingBlobStream.d.ts.map +1 -0
  205. package/dist/esm/LazyLoadingBlobStream.js +92 -0
  206. package/dist/esm/LazyLoadingBlobStream.js.map +1 -0
  207. package/dist/esm/LazyLoadingBlobStreamFactory.d.ts +7 -0
  208. package/dist/esm/LazyLoadingBlobStreamFactory.d.ts.map +1 -0
  209. package/dist/esm/LazyLoadingBlobStreamFactory.js +9 -0
  210. package/dist/esm/LazyLoadingBlobStreamFactory.js.map +1 -0
  211. package/dist/esm/Segment.d.ts +29 -0
  212. package/dist/esm/Segment.d.ts.map +1 -0
  213. package/dist/esm/Segment.js +69 -0
  214. package/dist/esm/Segment.js.map +1 -0
  215. package/dist/esm/SegmentFactory.d.ts +29 -0
  216. package/dist/esm/SegmentFactory.d.ts.map +1 -0
  217. package/dist/esm/SegmentFactory.js +47 -0
  218. package/dist/esm/SegmentFactory.js.map +1 -0
  219. package/dist/esm/Shard.d.ts +28 -0
  220. package/dist/esm/Shard.d.ts.map +1 -0
  221. package/dist/esm/Shard.js +46 -0
  222. package/dist/esm/Shard.js.map +1 -0
  223. package/dist/esm/ShardFactory.d.ts +21 -0
  224. package/dist/esm/ShardFactory.d.ts.map +1 -0
  225. package/dist/esm/ShardFactory.js +55 -0
  226. package/dist/esm/ShardFactory.js.map +1 -0
  227. package/dist/esm/index.d.ts +4 -0
  228. package/dist/esm/index.d.ts.map +1 -0
  229. package/dist/esm/index.js +6 -0
  230. package/dist/esm/index.js.map +1 -0
  231. package/dist/esm/log.d.ts +5 -0
  232. package/dist/esm/log.d.ts.map +1 -0
  233. package/dist/esm/log.js +8 -0
  234. package/dist/esm/log.js.map +1 -0
  235. package/dist/esm/models/BlobChangeFeedEvent.d.ts +233 -0
  236. package/dist/esm/models/BlobChangeFeedEvent.d.ts.map +1 -0
  237. package/dist/esm/models/BlobChangeFeedEvent.js +4 -0
  238. package/dist/esm/models/BlobChangeFeedEvent.js.map +1 -0
  239. package/dist/esm/models/ChangeFeedCursor.d.ts +17 -0
  240. package/dist/esm/models/ChangeFeedCursor.d.ts.map +1 -0
  241. package/dist/esm/models/ChangeFeedCursor.js +4 -0
  242. package/dist/esm/models/ChangeFeedCursor.js.map +1 -0
  243. package/dist/esm/models/models.d.ts +23 -0
  244. package/dist/esm/models/models.d.ts.map +1 -0
  245. package/dist/esm/models/models.js +4 -0
  246. package/dist/esm/models/models.js.map +1 -0
  247. package/dist/esm/package.json +3 -0
  248. package/dist/esm/utils/constants.d.ts +9 -0
  249. package/dist/esm/utils/constants.d.ts.map +1 -0
  250. package/dist/esm/utils/constants.js +11 -0
  251. package/dist/esm/utils/constants.js.map +1 -0
  252. package/dist/esm/utils/tracing.d.ts +6 -0
  253. package/dist/esm/utils/tracing.d.ts.map +1 -0
  254. package/dist/esm/utils/tracing.js +14 -0
  255. package/dist/esm/utils/tracing.js.map +1 -0
  256. package/dist/esm/utils/utils.browser.d.ts +14 -0
  257. package/dist/esm/utils/utils.browser.d.ts.map +1 -0
  258. package/dist/esm/utils/utils.browser.js +29 -0
  259. package/dist/esm/utils/utils.browser.js.map +1 -0
  260. package/dist/esm/utils/utils.common.d.ts +37 -0
  261. package/dist/esm/utils/utils.common.d.ts.map +1 -0
  262. package/dist/esm/utils/utils.common.js +170 -0
  263. package/dist/esm/utils/utils.common.js.map +1 -0
  264. package/dist/esm/utils/utils.node.d.ts +14 -0
  265. package/dist/esm/utils/utils.node.d.ts.map +1 -0
  266. package/dist/esm/utils/utils.node.js +28 -0
  267. package/dist/esm/utils/utils.node.js.map +1 -0
  268. package/dist/react-native/AvroReaderFactory.d.ts +10 -0
  269. package/dist/react-native/AvroReaderFactory.d.ts.map +1 -0
  270. package/dist/react-native/AvroReaderFactory.js +17 -0
  271. package/dist/react-native/AvroReaderFactory.js.map +1 -0
  272. package/dist/react-native/BlobChangeFeedClient.d.ts +201 -0
  273. package/dist/react-native/BlobChangeFeedClient.d.ts.map +1 -0
  274. package/dist/react-native/BlobChangeFeedClient.js +242 -0
  275. package/dist/react-native/BlobChangeFeedClient.js.map +1 -0
  276. package/dist/react-native/ChangeFeed.d.ts +37 -0
  277. package/dist/react-native/ChangeFeed.d.ts.map +1 -0
  278. package/dist/react-native/ChangeFeed.js +104 -0
  279. package/dist/react-native/ChangeFeed.js.map +1 -0
  280. package/dist/react-native/ChangeFeedFactory.d.ts +13 -0
  281. package/dist/react-native/ChangeFeedFactory.d.ts.map +1 -0
  282. package/dist/react-native/ChangeFeedFactory.js +122 -0
  283. package/dist/react-native/ChangeFeedFactory.js.map +1 -0
  284. package/dist/react-native/Chunk.d.ts +27 -0
  285. package/dist/react-native/Chunk.d.ts.map +1 -0
  286. package/dist/react-native/Chunk.js +45 -0
  287. package/dist/react-native/Chunk.js.map +1 -0
  288. package/dist/react-native/ChunkFactory.d.ts +23 -0
  289. package/dist/react-native/ChunkFactory.d.ts.map +1 -0
  290. package/dist/react-native/ChunkFactory.js +33 -0
  291. package/dist/react-native/ChunkFactory.js.map +1 -0
  292. package/dist/react-native/LazyLoadingBlobStream.d.ts +46 -0
  293. package/dist/react-native/LazyLoadingBlobStream.d.ts.map +1 -0
  294. package/dist/react-native/LazyLoadingBlobStream.js +92 -0
  295. package/dist/react-native/LazyLoadingBlobStream.js.map +1 -0
  296. package/dist/react-native/LazyLoadingBlobStreamFactory.d.ts +7 -0
  297. package/dist/react-native/LazyLoadingBlobStreamFactory.d.ts.map +1 -0
  298. package/dist/react-native/LazyLoadingBlobStreamFactory.js +9 -0
  299. package/dist/react-native/LazyLoadingBlobStreamFactory.js.map +1 -0
  300. package/dist/react-native/Segment.d.ts +29 -0
  301. package/dist/react-native/Segment.d.ts.map +1 -0
  302. package/dist/react-native/Segment.js +69 -0
  303. package/dist/react-native/Segment.js.map +1 -0
  304. package/dist/react-native/SegmentFactory.d.ts +29 -0
  305. package/dist/react-native/SegmentFactory.d.ts.map +1 -0
  306. package/dist/react-native/SegmentFactory.js +47 -0
  307. package/dist/react-native/SegmentFactory.js.map +1 -0
  308. package/dist/react-native/Shard.d.ts +28 -0
  309. package/dist/react-native/Shard.d.ts.map +1 -0
  310. package/dist/react-native/Shard.js +46 -0
  311. package/dist/react-native/Shard.js.map +1 -0
  312. package/dist/react-native/ShardFactory.d.ts +21 -0
  313. package/dist/react-native/ShardFactory.d.ts.map +1 -0
  314. package/dist/react-native/ShardFactory.js +55 -0
  315. package/dist/react-native/ShardFactory.js.map +1 -0
  316. package/dist/react-native/index.d.ts +4 -0
  317. package/dist/react-native/index.d.ts.map +1 -0
  318. package/dist/react-native/index.js +6 -0
  319. package/dist/react-native/index.js.map +1 -0
  320. package/dist/react-native/log.d.ts +5 -0
  321. package/dist/react-native/log.d.ts.map +1 -0
  322. package/dist/react-native/log.js +8 -0
  323. package/dist/react-native/log.js.map +1 -0
  324. package/dist/react-native/models/BlobChangeFeedEvent.d.ts +233 -0
  325. package/dist/react-native/models/BlobChangeFeedEvent.d.ts.map +1 -0
  326. package/dist/react-native/models/BlobChangeFeedEvent.js +4 -0
  327. package/dist/react-native/models/BlobChangeFeedEvent.js.map +1 -0
  328. package/dist/react-native/models/ChangeFeedCursor.d.ts +17 -0
  329. package/dist/react-native/models/ChangeFeedCursor.d.ts.map +1 -0
  330. package/dist/react-native/models/ChangeFeedCursor.js +4 -0
  331. package/dist/react-native/models/ChangeFeedCursor.js.map +1 -0
  332. package/dist/react-native/models/models.d.ts +23 -0
  333. package/dist/react-native/models/models.d.ts.map +1 -0
  334. package/dist/react-native/models/models.js +4 -0
  335. package/dist/react-native/models/models.js.map +1 -0
  336. package/dist/react-native/package.json +3 -0
  337. package/dist/react-native/utils/constants.d.ts +9 -0
  338. package/dist/react-native/utils/constants.d.ts.map +1 -0
  339. package/dist/react-native/utils/constants.js +11 -0
  340. package/dist/react-native/utils/constants.js.map +1 -0
  341. package/dist/react-native/utils/tracing.d.ts +6 -0
  342. package/dist/react-native/utils/tracing.d.ts.map +1 -0
  343. package/dist/react-native/utils/tracing.js +14 -0
  344. package/dist/react-native/utils/tracing.js.map +1 -0
  345. package/dist/react-native/utils/utils.browser.d.ts +14 -0
  346. package/dist/react-native/utils/utils.browser.d.ts.map +1 -0
  347. package/dist/react-native/utils/utils.browser.js +29 -0
  348. package/dist/react-native/utils/utils.browser.js.map +1 -0
  349. package/dist/react-native/utils/utils.common.d.ts +37 -0
  350. package/dist/react-native/utils/utils.common.d.ts.map +1 -0
  351. package/dist/react-native/utils/utils.common.js +170 -0
  352. package/dist/react-native/utils/utils.common.js.map +1 -0
  353. package/dist/react-native/utils/utils.node.d.ts +14 -0
  354. package/dist/react-native/utils/utils.node.d.ts.map +1 -0
  355. package/dist/react-native/utils/utils.node.js +28 -0
  356. package/dist/react-native/utils/utils.node.js.map +1 -0
  357. package/package.json +89 -104
  358. package/dist/index.js +0 -1670
  359. package/dist/index.js.map +0 -1
  360. package/dist-esm/storage-blob-changefeed/src/AvroReaderFactory.js.map +0 -1
  361. package/dist-esm/storage-blob-changefeed/src/BlobChangeFeedClient.js.map +0 -1
  362. package/dist-esm/storage-blob-changefeed/src/ChangeFeed.js.map +0 -1
  363. package/dist-esm/storage-blob-changefeed/src/ChangeFeedFactory.js.map +0 -1
  364. package/dist-esm/storage-blob-changefeed/src/Chunk.js.map +0 -1
  365. package/dist-esm/storage-blob-changefeed/src/ChunkFactory.js.map +0 -1
  366. package/dist-esm/storage-blob-changefeed/src/LazyLoadingBlobStream.js.map +0 -1
  367. package/dist-esm/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.js.map +0 -1
  368. package/dist-esm/storage-blob-changefeed/src/Segment.js.map +0 -1
  369. package/dist-esm/storage-blob-changefeed/src/SegmentFactory.js.map +0 -1
  370. package/dist-esm/storage-blob-changefeed/src/Shard.js.map +0 -1
  371. package/dist-esm/storage-blob-changefeed/src/ShardFactory.js +0 -78
  372. package/dist-esm/storage-blob-changefeed/src/ShardFactory.js.map +0 -1
  373. package/dist-esm/storage-blob-changefeed/src/index.js +0 -6
  374. package/dist-esm/storage-blob-changefeed/src/index.js.map +0 -1
  375. package/dist-esm/storage-blob-changefeed/src/log.js.map +0 -1
  376. package/dist-esm/storage-blob-changefeed/src/models/BlobChangeFeedEvent.js +0 -4
  377. package/dist-esm/storage-blob-changefeed/src/models/BlobChangeFeedEvent.js.map +0 -1
  378. package/dist-esm/storage-blob-changefeed/src/models/ChangeFeedCursor.js +0 -4
  379. package/dist-esm/storage-blob-changefeed/src/models/ChangeFeedCursor.js.map +0 -1
  380. package/dist-esm/storage-blob-changefeed/src/models/models.js +0 -4
  381. package/dist-esm/storage-blob-changefeed/src/models/models.js.map +0 -1
  382. package/dist-esm/storage-blob-changefeed/src/utils/constants.js.map +0 -1
  383. package/dist-esm/storage-blob-changefeed/src/utils/tracing.js +0 -12
  384. package/dist-esm/storage-blob-changefeed/src/utils/tracing.js.map +0 -1
  385. package/dist-esm/storage-blob-changefeed/src/utils/utils.browser.js.map +0 -1
  386. package/dist-esm/storage-blob-changefeed/src/utils/utils.common.js.map +0 -1
  387. package/dist-esm/storage-blob-changefeed/src/utils/utils.node.js.map +0 -1
  388. package/dist-esm/storage-internal-avro/src/AvroConstants.js +0 -7
  389. package/dist-esm/storage-internal-avro/src/AvroConstants.js.map +0 -1
  390. package/dist-esm/storage-internal-avro/src/AvroParser.js +0 -311
  391. package/dist-esm/storage-internal-avro/src/AvroParser.js.map +0 -1
  392. package/dist-esm/storage-internal-avro/src/AvroReadable.js +0 -5
  393. package/dist-esm/storage-internal-avro/src/AvroReadable.js.map +0 -1
  394. package/dist-esm/storage-internal-avro/src/AvroReadableFromBlob.js +0 -47
  395. package/dist-esm/storage-internal-avro/src/AvroReadableFromBlob.js.map +0 -1
  396. package/dist-esm/storage-internal-avro/src/AvroReadableFromStream.js +0 -84
  397. package/dist-esm/storage-internal-avro/src/AvroReadableFromStream.js.map +0 -1
  398. package/dist-esm/storage-internal-avro/src/AvroReader.js +0 -107
  399. package/dist-esm/storage-internal-avro/src/AvroReader.js.map +0 -1
  400. package/dist-esm/storage-internal-avro/src/index.browser.js +0 -6
  401. package/dist-esm/storage-internal-avro/src/index.browser.js.map +0 -1
  402. package/dist-esm/storage-internal-avro/src/index.js +0 -6
  403. package/dist-esm/storage-internal-avro/src/index.js.map +0 -1
  404. package/dist-esm/storage-internal-avro/src/utils/utils.common.js +0 -17
  405. package/dist-esm/storage-internal-avro/src/utils/utils.common.js.map +0 -1
  406. package/types/3.1/storage-blob-changefeed/samples-dev/blobChangeFeedClient.d.ts +0 -2
  407. package/types/3.1/storage-blob-changefeed/samples-dev/resumeListChanges.d.ts +0 -2
  408. package/types/3.1/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.d.ts +0 -6
  409. package/types/3.1/storage-blob-changefeed/src/index.d.ts +0 -4
  410. package/types/3.1/storage-blob-changefeed/src/utils/tracing.d.ts +0 -11
  411. package/types/3.1/storage-blob-changefeed/test/blobchangefeedclient.spec.d.ts +0 -2
  412. package/types/3.1/storage-blob-changefeed/test/changefeed.spec.d.ts +0 -2
  413. package/types/3.1/storage-blob-changefeed/test/chunk.spec.d.ts +0 -2
  414. package/types/3.1/storage-blob-changefeed/test/segment.spec.d.ts +0 -2
  415. package/types/3.1/storage-blob-changefeed/test/shard.spec.d.ts +0 -2
  416. package/types/3.1/storage-blob-changefeed/test/utils/index.d.ts +0 -13
  417. package/types/3.1/storage-blob-changefeed/test/utils/testutils.common.d.ts +0 -64
  418. package/types/3.1/storage-blob-changefeed.d.ts +0 -437
  419. package/types/3.1/storage-internal-avro/src/AvroConstants.d.ts +0 -5
  420. package/types/3.1/storage-internal-avro/src/AvroParser.d.ts +0 -57
  421. package/types/3.1/storage-internal-avro/src/AvroReadable.d.ts +0 -16
  422. package/types/3.1/storage-internal-avro/src/AvroReadableFromBlob.d.ts +0 -9
  423. package/types/3.1/storage-internal-avro/src/AvroReadableFromStream.d.ts +0 -11
  424. package/types/3.1/storage-internal-avro/src/AvroReader.d.ts +0 -33
  425. package/types/3.1/storage-internal-avro/src/index.browser.d.ts +0 -4
  426. package/types/3.1/storage-internal-avro/src/index.d.ts +0 -4
  427. package/types/3.1/storage-internal-avro/src/utils/utils.common.d.ts +0 -6
  428. package/types/3.1/storage-internal-avro/test/browser/avroreadable.spec.d.ts +0 -2
  429. package/types/3.1/storage-internal-avro/test/node/avroreadable.spec.d.ts +0 -2
  430. package/types/3.1/storage-internal-avro/test/node/avroreader.spec.d.ts +0 -2
  431. package/types/latest/storage-blob-changefeed/samples-dev/blobChangeFeedClient.d.ts +0 -2
  432. package/types/latest/storage-blob-changefeed/samples-dev/blobChangeFeedClient.d.ts.map +0 -1
  433. package/types/latest/storage-blob-changefeed/samples-dev/resumeListChanges.d.ts +0 -2
  434. package/types/latest/storage-blob-changefeed/samples-dev/resumeListChanges.d.ts.map +0 -1
  435. package/types/latest/storage-blob-changefeed/src/AvroReaderFactory.d.ts.map +0 -1
  436. package/types/latest/storage-blob-changefeed/src/BlobChangeFeedClient.d.ts.map +0 -1
  437. package/types/latest/storage-blob-changefeed/src/ChangeFeed.d.ts.map +0 -1
  438. package/types/latest/storage-blob-changefeed/src/ChangeFeedFactory.d.ts.map +0 -1
  439. package/types/latest/storage-blob-changefeed/src/Chunk.d.ts.map +0 -1
  440. package/types/latest/storage-blob-changefeed/src/ChunkFactory.d.ts.map +0 -1
  441. package/types/latest/storage-blob-changefeed/src/LazyLoadingBlobStream.d.ts.map +0 -1
  442. package/types/latest/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.d.ts +0 -6
  443. package/types/latest/storage-blob-changefeed/src/LazyLoadingBlobStreamFactory.d.ts.map +0 -1
  444. package/types/latest/storage-blob-changefeed/src/Segment.d.ts.map +0 -1
  445. package/types/latest/storage-blob-changefeed/src/SegmentFactory.d.ts.map +0 -1
  446. package/types/latest/storage-blob-changefeed/src/Shard.d.ts.map +0 -1
  447. package/types/latest/storage-blob-changefeed/src/ShardFactory.d.ts.map +0 -1
  448. package/types/latest/storage-blob-changefeed/src/index.d.ts +0 -4
  449. package/types/latest/storage-blob-changefeed/src/index.d.ts.map +0 -1
  450. package/types/latest/storage-blob-changefeed/src/log.d.ts.map +0 -1
  451. package/types/latest/storage-blob-changefeed/src/models/BlobChangeFeedEvent.d.ts.map +0 -1
  452. package/types/latest/storage-blob-changefeed/src/models/ChangeFeedCursor.d.ts.map +0 -1
  453. package/types/latest/storage-blob-changefeed/src/models/models.d.ts.map +0 -1
  454. package/types/latest/storage-blob-changefeed/src/utils/constants.d.ts.map +0 -1
  455. package/types/latest/storage-blob-changefeed/src/utils/tracing.d.ts +0 -11
  456. package/types/latest/storage-blob-changefeed/src/utils/tracing.d.ts.map +0 -1
  457. package/types/latest/storage-blob-changefeed/src/utils/utils.browser.d.ts.map +0 -1
  458. package/types/latest/storage-blob-changefeed/src/utils/utils.common.d.ts.map +0 -1
  459. package/types/latest/storage-blob-changefeed/src/utils/utils.node.d.ts.map +0 -1
  460. package/types/latest/storage-blob-changefeed/test/blobchangefeedclient.spec.d.ts +0 -2
  461. package/types/latest/storage-blob-changefeed/test/blobchangefeedclient.spec.d.ts.map +0 -1
  462. package/types/latest/storage-blob-changefeed/test/changefeed.spec.d.ts +0 -2
  463. package/types/latest/storage-blob-changefeed/test/changefeed.spec.d.ts.map +0 -1
  464. package/types/latest/storage-blob-changefeed/test/chunk.spec.d.ts +0 -2
  465. package/types/latest/storage-blob-changefeed/test/chunk.spec.d.ts.map +0 -1
  466. package/types/latest/storage-blob-changefeed/test/segment.spec.d.ts +0 -2
  467. package/types/latest/storage-blob-changefeed/test/segment.spec.d.ts.map +0 -1
  468. package/types/latest/storage-blob-changefeed/test/shard.spec.d.ts +0 -2
  469. package/types/latest/storage-blob-changefeed/test/shard.spec.d.ts.map +0 -1
  470. package/types/latest/storage-blob-changefeed/test/utils/index.d.ts +0 -13
  471. package/types/latest/storage-blob-changefeed/test/utils/index.d.ts.map +0 -1
  472. package/types/latest/storage-blob-changefeed/test/utils/testutils.common.d.ts +0 -64
  473. package/types/latest/storage-blob-changefeed/test/utils/testutils.common.d.ts.map +0 -1
  474. package/types/latest/storage-blob-changefeed.d.ts +0 -453
  475. package/types/latest/storage-internal-avro/src/AvroConstants.d.ts +0 -5
  476. package/types/latest/storage-internal-avro/src/AvroConstants.d.ts.map +0 -1
  477. package/types/latest/storage-internal-avro/src/AvroParser.d.ts +0 -57
  478. package/types/latest/storage-internal-avro/src/AvroParser.d.ts.map +0 -1
  479. package/types/latest/storage-internal-avro/src/AvroReadable.d.ts +0 -16
  480. package/types/latest/storage-internal-avro/src/AvroReadable.d.ts.map +0 -1
  481. package/types/latest/storage-internal-avro/src/AvroReadableFromBlob.d.ts +0 -9
  482. package/types/latest/storage-internal-avro/src/AvroReadableFromBlob.d.ts.map +0 -1
  483. package/types/latest/storage-internal-avro/src/AvroReadableFromStream.d.ts +0 -11
  484. package/types/latest/storage-internal-avro/src/AvroReadableFromStream.d.ts.map +0 -1
  485. package/types/latest/storage-internal-avro/src/AvroReader.d.ts +0 -33
  486. package/types/latest/storage-internal-avro/src/AvroReader.d.ts.map +0 -1
  487. package/types/latest/storage-internal-avro/src/index.browser.d.ts +0 -4
  488. package/types/latest/storage-internal-avro/src/index.browser.d.ts.map +0 -1
  489. package/types/latest/storage-internal-avro/src/index.d.ts +0 -4
  490. package/types/latest/storage-internal-avro/src/index.d.ts.map +0 -1
  491. package/types/latest/storage-internal-avro/src/utils/utils.common.d.ts +0 -6
  492. package/types/latest/storage-internal-avro/src/utils/utils.common.d.ts.map +0 -1
  493. package/types/latest/storage-internal-avro/test/browser/avroreadable.spec.d.ts +0 -2
  494. package/types/latest/storage-internal-avro/test/browser/avroreadable.spec.d.ts.map +0 -1
  495. package/types/latest/storage-internal-avro/test/node/avroreadable.spec.d.ts +0 -2
  496. package/types/latest/storage-internal-avro/test/node/avroreadable.spec.d.ts.map +0 -1
  497. package/types/latest/storage-internal-avro/test/node/avroreader.spec.d.ts +0 -2
  498. package/types/latest/storage-internal-avro/test/node/avroreader.spec.d.ts.map +0 -1
  499. /package/{types/latest/storage-blob-changefeed/src → dist/browser}/log.d.ts +0 -0
  500. /package/{types/latest/storage-blob-changefeed/src → dist/browser}/models/ChangeFeedCursor.d.ts +0 -0
  501. /package/{types/latest/storage-blob-changefeed/src → dist/browser}/utils/constants.d.ts +0 -0
@@ -1,8 +1,9 @@
1
- import { StoragePipelineOptions, StorageSharedKeyCredential, AnonymousCredential, Pipeline } from "@azure/storage-blob";
2
- import { PagedAsyncIterableIterator } from "@azure/core-paging";
3
- import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent";
4
- import { BlobChangeFeedListChangesOptions } from "./models/models";
5
- import { TokenCredential } from "@azure/core-http";
1
+ import type { StoragePipelineOptions, StorageSharedKeyCredential, AnonymousCredential } from "@azure/storage-blob";
2
+ import { Pipeline } from "@azure/storage-blob";
3
+ import type { PagedAsyncIterableIterator } from "@azure/core-paging";
4
+ import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent.js";
5
+ import type { BlobChangeFeedListChangesOptions } from "./models/models.js";
6
+ import type { TokenCredential } from "@azure/core-auth";
6
7
  /**
7
8
  * Contains paged response data for the {@link BlobChangeFeedClient.listChanges} operation.
8
9
  */
@@ -36,7 +37,7 @@ export interface BlobChangeFeedClientOptions {
36
37
  }
37
38
  /**
38
39
  * BlobChangeFeedClient.
39
- * @see https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-change-feed?tabs=azure-portal
40
+ * @see https://learn.microsoft.com/azure/storage/blobs/storage-blob-change-feed?tabs=azure-portal
40
41
  */
41
42
  export declare class BlobChangeFeedClient {
42
43
  /**
@@ -69,26 +70,36 @@ export declare class BlobChangeFeedClient {
69
70
  *
70
71
  * Example using DefaultAzureCredential from `@azure/identity`:
71
72
  *
72
- * ```js
73
- * const account = "<storage account name>";
73
+ * ```ts snippet:ReadmeSampleCreateClient_TokenCredential
74
+ * import { DefaultAzureCredential } from "@azure/identity";
75
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
74
76
  *
75
- * const defaultAzureCredential = new DefaultAzureCredential();
76
- *
77
- * const blobChangeFeedClient = new BlobChangeFeedClient(
77
+ * // Enter your storage account name and shared key
78
+ * const account = "<account>";
79
+ * const credential = new DefaultAzureCredential();
80
+ * const changeFeedClient = new BlobChangeFeedClient(
81
+ * // When using AnonymousCredential, following url should include a valid SAS or support public access
78
82
  * `https://${account}.blob.core.windows.net`,
79
- * defaultAzureCredential
83
+ * credential,
80
84
  * );
81
85
  * ```
82
86
  *
83
87
  * Example using an account name/key:
84
88
  *
85
- * ```js
86
- * const account = "<storage account name>"
87
- * const sharedKeyCredential = new StorageSharedKeyCredential(account, "<account key>");
88
- *
89
- * const blobChangeFeedClient = new BlobChangeFeedClient(
89
+ * ```ts snippet:ReadmeSampleCreateClient
90
+ * import { StorageSharedKeyCredential } from "@azure/storage-blob";
91
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
92
+ *
93
+ * // Enter your storage account name and shared key
94
+ * const account = "<account>";
95
+ * const accountKey = "<accountkey>";
96
+ * // Use StorageSharedKeyCredential with storage account and account key
97
+ * // StorageSharedKeyCredential is only available in Node.js runtime, not in browsers
98
+ * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
99
+ * const changeFeedClient = new BlobChangeFeedClient(
100
+ * // When using AnonymousCredential, following url should include a valid SAS or support public access
90
101
  * `https://${account}.blob.core.windows.net`,
91
- * sharedKeyCredential
102
+ * sharedKeyCredential,
92
103
  * );
93
104
  * ```
94
105
  */
@@ -113,63 +124,71 @@ export declare class BlobChangeFeedClient {
113
124
  *
114
125
  * Example using `for await` syntax:
115
126
  *
116
- * ```js
117
- * let i = 1;
118
- * for await (const event of blobChangeFeedClient.listChanges()) {
119
- * console.log(`Event ${i++}, type: ${event.eventType}`);
120
- * }
121
- * ```
127
+ * ```ts snippet:ReadmeSampleListChanges
128
+ * import { StorageSharedKeyCredential } from "@azure/storage-blob";
129
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
122
130
  *
123
- * Example using `iter.next()`:
131
+ * const account = "<account>";
132
+ * const accountKey = "<accountkey>";
133
+ * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
134
+ * const changeFeedClient = new BlobChangeFeedClient(
135
+ * `https://${account}.blob.core.windows.net`,
136
+ * sharedKeyCredential,
137
+ * );
124
138
  *
125
- * ```js
126
- * let i = 1;
127
- * const iter = blobChangeFeedClient.listChanges();
128
- * let eventItem = await iter.next();
129
- * while (!eventItem.done) {
130
- * console.log(`Event ${i++}, type: ${eventItem.eventType}`);
131
- * eventItem = await iter.next();
139
+ * // Use for await to iterate through the change feed
140
+ * for await (const event of changeFeedClient.listChanges()) {
141
+ * console.log(`Event: ${event.eventType}`);
142
+ * console.log(`Event time: ${event.eventTime}`);
143
+ * console.log(`Event data: ${JSON.stringify(event.data)}`);
132
144
  * }
133
- * ```
134
- *
135
- * Example using `byPage()`:
136
145
  *
137
- * ```js
138
- * // passing optional maxPageSize in the page settings
139
- * let i = 1;
140
- * for await (const eventPage of blobChangeFeedClient.listChanges().byPage({ maxPageSize: 20 })) {
141
- * if (eventPage.events) {
142
- * for (const event of eventPage.events) {
143
- * console.log(`Event ${i++}, type: ${event.eventType}`);
144
- * }
146
+ * // Use `byPage` to iterate through the change feed
147
+ * for await (const page of changeFeedClient.listChanges().byPage()) {
148
+ * console.log(`Page: ${JSON.stringify(page)}`);
149
+ * for (const event of page.events) {
150
+ * console.log(`Event: ${event.eventType}`);
151
+ * console.log(`Event time: ${event.eventTime}`);
152
+ * console.log(`Event data: ${JSON.stringify(event.data)}`);
145
153
  * }
146
154
  * }
147
155
  * ```
148
156
  *
149
157
  * Example using paging with a marker:
150
158
  *
151
- * ```js
152
- * let i = 1;
153
- * let iterator = blobChangeFeedClient.listChanges().byPage({ maxPageSize: 2 });
154
- * let eventPage = (await iterator.next()).value;
159
+ * ```ts snippet:ReadmeSampleListChanges_Continuation
160
+ * import { StorageSharedKeyCredential } from "@azure/storage-blob";
161
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
162
+ *
163
+ * const account = "<account>";
164
+ * const accountKey = "<accountkey>";
165
+ * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
166
+ * const changeFeedClient = new BlobChangeFeedClient(
167
+ * `https://${account}.blob.core.windows.net`,
168
+ * sharedKeyCredential,
169
+ * );
155
170
  *
156
- * if (eventPage.events) {
157
- * for (const container of eventPage.events) {
158
- * console.log(`Event ${i++}, type: ${event.eventType}`);
171
+ * let iterator = changeFeedClient.listChanges().byPage({ maxPageSize: 2 });
172
+ * let response = (await iterator.next()).value;
173
+ * // Prints 2 page ranges
174
+ * if (response.pageRange) {
175
+ * for (const pageRange of response.pageRange) {
176
+ * console.log(`Event: ${pageRange.eventType}`);
177
+ * console.log(`Event time: ${pageRange.eventTime}`);
178
+ * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);
159
179
  * }
160
180
  * }
161
- *
162
181
  * // Gets next marker
163
- * let marker = eventPage.continuationToken;
182
+ * let marker = response.continuationToken;
164
183
  * // Passing next marker as continuationToken
165
- * iterator = blobChangeFeedClient
166
- * .listChanges()
167
- * .byPage({ continuationToken: marker, maxPageSize: 10 });
168
- * eventPage = (await iterator.next()).value;
169
- *
170
- * if (eventPage.events) {
171
- * for (const container of eventPage.events) {
172
- * console.log(`Event ${i++}, type: ${event.eventType}`);
184
+ * iterator = changeFeedClient.listChanges().byPage({ continuationToken: marker, maxPageSize: 10 });
185
+ * response = (await iterator.next()).value;
186
+ * // Prints 10 page ranges
187
+ * if (response.pageRange) {
188
+ * for (const pageRange of response.pageRange) {
189
+ * console.log(`Event: ${pageRange.eventType}`);
190
+ * console.log(`Event time: ${pageRange.eventTime}`);
191
+ * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);
173
192
  * }
174
193
  * }
175
194
  * ```
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlobChangeFeedClient.d.ts","sourceRoot":"","sources":["../../src/BlobChangeFeedClient.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAqB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,0BAA0B,EAAgB,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAI3E,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;GAEG;AACH,qBAAa,uBAAuB;IAClC;;OAEG;IACI,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAErC;;OAEG;IACI,iBAAiB,EAAE,MAAM,CAAC;;CAMlC;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,UAAU,CAAC,EAAE,0BAA0B,GAAG,mBAAmB,GAAG,eAAe,EAC/E,eAAe,GAAE,sBAA2B,GAC3C,QAAQ,CAEV;AAmBD;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,uBAAuB,CAA8B;IAE7D;;;;;;;;;;;OAWG;WACW,oBAAoB,CAChC,gBAAgB,EAAE,MAAM,EAGxB,OAAO,CAAC,EAAE,sBAAsB,EAGhC,uBAAuB,CAAC,EAAE,2BAA2B,GACpD,oBAAoB;IAUvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;gBAED,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,0BAA0B,GAAG,mBAAmB,GAAG,eAAe,EAG/E,OAAO,CAAC,EAAE,sBAAsB,EAChC,uBAAuB,CAAC,EAAE,2BAA2B;IAGvD;;;;;;;;OAQG;gBACS,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;YA6B5B,SAAS;YAuBT,OAAO;IAoCtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+EG;IACI,WAAW,CAChB,OAAO,GAAE,gCAAqC,GAC7C,0BAA0B,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;CAuB5E"}
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.BlobChangeFeedClient = exports.BlobChangeFeedEventPage = void 0;
6
+ exports.newPipeline = newPipeline;
7
+ const storage_blob_1 = require("@azure/storage-blob");
8
+ const ChangeFeedFactory_js_1 = require("./ChangeFeedFactory.js");
9
+ const constants_js_1 = require("./utils/constants.js");
10
+ /**
11
+ * Contains paged response data for the {@link BlobChangeFeedClient.listChanges} operation.
12
+ */
13
+ class BlobChangeFeedEventPage {
14
+ /**
15
+ * Array of {@link BlobChangeFeedEvent}.
16
+ */
17
+ events;
18
+ /**
19
+ * The token that keeps track of where to continue the iterator.
20
+ */
21
+ continuationToken;
22
+ constructor() {
23
+ this.events = [];
24
+ this.continuationToken = "";
25
+ }
26
+ }
27
+ exports.BlobChangeFeedEventPage = BlobChangeFeedEventPage;
28
+ /**
29
+ * Creates a new Pipeline object with Credential provided.
30
+ *
31
+ * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.
32
+ * @param pipelineOptions - Optional. Options.
33
+ * @returns A new Pipeline object.
34
+ */
35
+ function newPipeline(credential, pipelineOptions = {}) {
36
+ return newPipeline(credential, appendUserAgentPrefix(pipelineOptions));
37
+ }
38
+ function appendUserAgentPrefix(options) {
39
+ if (!options) {
40
+ options = {};
41
+ }
42
+ if (options.userAgentOptions === undefined) {
43
+ options.userAgentOptions = {};
44
+ }
45
+ if (options.userAgentOptions.userAgentPrefix === undefined) {
46
+ options.userAgentOptions.userAgentPrefix = "";
47
+ }
48
+ else if (options.userAgentOptions.userAgentPrefix !== "") {
49
+ options.userAgentOptions.userAgentPrefix += " ";
50
+ }
51
+ options.userAgentOptions.userAgentPrefix += `changefeed-js/${constants_js_1.SDK_VERSION}`;
52
+ return options;
53
+ }
54
+ /**
55
+ * BlobChangeFeedClient.
56
+ * @see https://learn.microsoft.com/azure/storage/blobs/storage-blob-change-feed?tabs=azure-portal
57
+ */
58
+ class BlobChangeFeedClient {
59
+ /**
60
+ * blobServiceClient provided by `@azure/storage-blob` package.
61
+ */
62
+ blobServiceClient;
63
+ changeFeedFactory;
64
+ changeFeedClientOptions;
65
+ /**
66
+ *
67
+ * Creates an instance of BlobChangeFeedClient from connection string.
68
+ *
69
+ * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.
70
+ * [ Note - Account connection string can only be used in NODE.JS runtime. ]
71
+ * Account connection string example -
72
+ * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`
73
+ * SAS connection string example -
74
+ * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`
75
+ * @param options - Optional. Options to configure the HTTP pipeline.
76
+ */
77
+ static fromConnectionString(connectionString,
78
+ // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.
79
+ /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */
80
+ options,
81
+ // Static method to construct an object, the option is for the object not for the method.
82
+ /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */
83
+ changeFeedClientOptions) {
84
+ const blobServiceClient = storage_blob_1.BlobServiceClient.fromConnectionString(connectionString, options);
85
+ return new BlobChangeFeedClient(blobServiceClient.url, blobServiceClient.credential, appendUserAgentPrefix(options), changeFeedClientOptions);
86
+ }
87
+ constructor(urlOrClient, credentialOrPipeline,
88
+ // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.
89
+ /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */
90
+ options, changeFeedClientOptions) {
91
+ this.changeFeedClientOptions = changeFeedClientOptions || {};
92
+ this.changeFeedFactory = new ChangeFeedFactory_js_1.ChangeFeedFactory(this.changeFeedClientOptions.maximumTransferSize);
93
+ if (credentialOrPipeline instanceof storage_blob_1.Pipeline) {
94
+ this.blobServiceClient = new storage_blob_1.BlobServiceClient(urlOrClient, credentialOrPipeline);
95
+ }
96
+ else {
97
+ this.blobServiceClient = new storage_blob_1.BlobServiceClient(urlOrClient, credentialOrPipeline, appendUserAgentPrefix(options));
98
+ }
99
+ }
100
+ async *getChange(options = {}) {
101
+ const changeFeed = await this.changeFeedFactory.create(this.blobServiceClient, undefined, options);
102
+ while (changeFeed.hasNext()) {
103
+ const event = await changeFeed.getChange({
104
+ abortSignal: options.abortSignal,
105
+ tracingOptions: options.tracingOptions,
106
+ });
107
+ if (event) {
108
+ yield event;
109
+ }
110
+ else {
111
+ return;
112
+ }
113
+ }
114
+ }
115
+ // start in ChangeFeedListChangesOptions will be ignored when continuationToken is specified.
116
+ async *getPage(continuationToken, maxPageSize, options = {}) {
117
+ const changeFeed = await this.changeFeedFactory.create(this.blobServiceClient, continuationToken, options);
118
+ if (!maxPageSize || maxPageSize > constants_js_1.CHANGE_FEED_MAX_PAGE_SIZE) {
119
+ maxPageSize = constants_js_1.CHANGE_FEED_MAX_PAGE_SIZE;
120
+ }
121
+ while (changeFeed.hasNext()) {
122
+ const eventPage = new BlobChangeFeedEventPage();
123
+ while (changeFeed.hasNext() && eventPage.events.length < maxPageSize) {
124
+ const event = await changeFeed.getChange({
125
+ abortSignal: options.abortSignal,
126
+ tracingOptions: options.tracingOptions,
127
+ });
128
+ if (event) {
129
+ eventPage.events.push(event);
130
+ }
131
+ }
132
+ if (changeFeed.hasNext()) {
133
+ eventPage.continuationToken = JSON.stringify(changeFeed.getCursor());
134
+ }
135
+ if (eventPage.events.length > 0) {
136
+ yield eventPage;
137
+ }
138
+ else {
139
+ return;
140
+ }
141
+ }
142
+ }
143
+ /**
144
+ * Returns an async iterable iterator to list all the change feed events
145
+ * in the specified account.
146
+ *
147
+ * .byPage() returns an async iterable iterator to list the change feed events in pages.
148
+ *
149
+ * Example using `for await` syntax:
150
+ *
151
+ * ```ts snippet:ReadmeSampleListChanges
152
+ * import { StorageSharedKeyCredential } from "@azure/storage-blob";
153
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
154
+ *
155
+ * const account = "<account>";
156
+ * const accountKey = "<accountkey>";
157
+ * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
158
+ * const changeFeedClient = new BlobChangeFeedClient(
159
+ * `https://${account}.blob.core.windows.net`,
160
+ * sharedKeyCredential,
161
+ * );
162
+ *
163
+ * // Use for await to iterate through the change feed
164
+ * for await (const event of changeFeedClient.listChanges()) {
165
+ * console.log(`Event: ${event.eventType}`);
166
+ * console.log(`Event time: ${event.eventTime}`);
167
+ * console.log(`Event data: ${JSON.stringify(event.data)}`);
168
+ * }
169
+ *
170
+ * // Use `byPage` to iterate through the change feed
171
+ * for await (const page of changeFeedClient.listChanges().byPage()) {
172
+ * console.log(`Page: ${JSON.stringify(page)}`);
173
+ * for (const event of page.events) {
174
+ * console.log(`Event: ${event.eventType}`);
175
+ * console.log(`Event time: ${event.eventTime}`);
176
+ * console.log(`Event data: ${JSON.stringify(event.data)}`);
177
+ * }
178
+ * }
179
+ * ```
180
+ *
181
+ * Example using paging with a marker:
182
+ *
183
+ * ```ts snippet:ReadmeSampleListChanges_Continuation
184
+ * import { StorageSharedKeyCredential } from "@azure/storage-blob";
185
+ * import { BlobChangeFeedClient } from "@azure/storage-blob-changefeed";
186
+ *
187
+ * const account = "<account>";
188
+ * const accountKey = "<accountkey>";
189
+ * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);
190
+ * const changeFeedClient = new BlobChangeFeedClient(
191
+ * `https://${account}.blob.core.windows.net`,
192
+ * sharedKeyCredential,
193
+ * );
194
+ *
195
+ * let iterator = changeFeedClient.listChanges().byPage({ maxPageSize: 2 });
196
+ * let response = (await iterator.next()).value;
197
+ * // Prints 2 page ranges
198
+ * if (response.pageRange) {
199
+ * for (const pageRange of response.pageRange) {
200
+ * console.log(`Event: ${pageRange.eventType}`);
201
+ * console.log(`Event time: ${pageRange.eventTime}`);
202
+ * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);
203
+ * }
204
+ * }
205
+ * // Gets next marker
206
+ * let marker = response.continuationToken;
207
+ * // Passing next marker as continuationToken
208
+ * iterator = changeFeedClient.listChanges().byPage({ continuationToken: marker, maxPageSize: 10 });
209
+ * response = (await iterator.next()).value;
210
+ * // Prints 10 page ranges
211
+ * if (response.pageRange) {
212
+ * for (const pageRange of response.pageRange) {
213
+ * console.log(`Event: ${pageRange.eventType}`);
214
+ * console.log(`Event time: ${pageRange.eventTime}`);
215
+ * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);
216
+ * }
217
+ * }
218
+ * ```
219
+ *
220
+ * @param options - Options to list change feed events.
221
+ * @returns An asyncIterableIterator that supports paging.
222
+ */
223
+ listChanges(options = {}) {
224
+ const iter = this.getChange(options);
225
+ return {
226
+ /**
227
+ * The next method, part of the iteration protocol
228
+ */
229
+ async next() {
230
+ return iter.next();
231
+ },
232
+ /**
233
+ * The connection to the async iterator, part of the iteration protocol
234
+ */
235
+ [Symbol.asyncIterator]() {
236
+ return this;
237
+ },
238
+ /**
239
+ * Return an AsyncIterableIterator that works a page at a time
240
+ */
241
+ byPage: (settings = {}) => {
242
+ return this.getPage(settings.continuationToken, settings.maxPageSize, options);
243
+ },
244
+ };
245
+ }
246
+ }
247
+ exports.BlobChangeFeedClient = BlobChangeFeedClient;
248
+ //# sourceMappingURL=BlobChangeFeedClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlobChangeFeedClient.js","sourceRoot":"","sources":["../../src/BlobChangeFeedClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type {\n StoragePipelineOptions,\n StorageSharedKeyCredential,\n AnonymousCredential,\n} from \"@azure/storage-blob\";\nimport { BlobServiceClient, Pipeline } from \"@azure/storage-blob\";\nimport type { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport type { BlobChangeFeedEvent } from \"./models/BlobChangeFeedEvent.js\";\nimport { ChangeFeedFactory } from \"./ChangeFeedFactory.js\";\nimport type { ChangeFeed } from \"./ChangeFeed.js\";\nimport { CHANGE_FEED_MAX_PAGE_SIZE, SDK_VERSION } from \"./utils/constants.js\";\nimport type { BlobChangeFeedListChangesOptions } from \"./models/models.js\";\nimport type { TokenCredential } from \"@azure/core-auth\";\n\n/**\n * Contains paged response data for the {@link BlobChangeFeedClient.listChanges} operation.\n */\nexport class BlobChangeFeedEventPage {\n /**\n * Array of {@link BlobChangeFeedEvent}.\n */\n public events: BlobChangeFeedEvent[];\n\n /**\n * The token that keeps track of where to continue the iterator.\n */\n public continuationToken: string;\n\n constructor() {\n this.events = [];\n this.continuationToken = \"\";\n }\n}\n\n/**\n * Creates a new Pipeline object with Credential provided.\n *\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param pipelineOptions - Optional. Options.\n * @returns A new Pipeline object.\n */\nexport function newPipeline(\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n pipelineOptions: StoragePipelineOptions = {},\n): Pipeline {\n return newPipeline(credential, appendUserAgentPrefix(pipelineOptions));\n}\n\nfunction appendUserAgentPrefix(options?: StoragePipelineOptions): StoragePipelineOptions {\n if (!options) {\n options = {};\n }\n if (options.userAgentOptions === undefined) {\n options.userAgentOptions = {};\n }\n\n if (options.userAgentOptions.userAgentPrefix === undefined) {\n options.userAgentOptions.userAgentPrefix = \"\";\n } else if (options.userAgentOptions.userAgentPrefix !== \"\") {\n options.userAgentOptions.userAgentPrefix += \" \";\n }\n options.userAgentOptions.userAgentPrefix += `changefeed-js/${SDK_VERSION}`;\n return options;\n}\n\n/**\n * Blob Change Feed client options.\n */\nexport interface BlobChangeFeedClientOptions {\n /**\n * The maximum length of an transfer in bytes.\n */\n maximumTransferSize?: number;\n}\n\n/**\n * BlobChangeFeedClient.\n * @see https://learn.microsoft.com/azure/storage/blobs/storage-blob-change-feed?tabs=azure-portal\n */\nexport class BlobChangeFeedClient {\n /**\n * blobServiceClient provided by `@azure/storage-blob` package.\n */\n private blobServiceClient: BlobServiceClient;\n private changeFeedFactory: ChangeFeedFactory;\n private changeFeedClientOptions: BlobChangeFeedClientOptions;\n\n /**\n *\n * Creates an instance of BlobChangeFeedClient from connection string.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public static fromConnectionString(\n connectionString: string,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n // Static method to construct an object, the option is for the object not for the method.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n changeFeedClientOptions?: BlobChangeFeedClientOptions,\n ): BlobChangeFeedClient {\n const blobServiceClient = BlobServiceClient.fromConnectionString(connectionString, options);\n return new BlobChangeFeedClient(\n blobServiceClient.url,\n blobServiceClient.credential,\n appendUserAgentPrefix(options),\n changeFeedClientOptions,\n );\n }\n\n /**\n * Creates an instance of BlobChangeFeedClient.\n *\n * @param url - A Client string pointing to Azure Storage blob service, such as\n * \"https://myaccount.blob.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.blob.core.windows.net?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n *\n * Example using DefaultAzureCredential from `@azure/identity`:\n *\n * ```ts snippet:ReadmeSampleCreateClient_TokenCredential\n * import { DefaultAzureCredential } from \"@azure/identity\";\n * import { BlobChangeFeedClient } from \"@azure/storage-blob-changefeed\";\n *\n * // Enter your storage account name and shared key\n * const account = \"<account>\";\n * const credential = new DefaultAzureCredential();\n * const changeFeedClient = new BlobChangeFeedClient(\n * // When using AnonymousCredential, following url should include a valid SAS or support public access\n * `https://${account}.blob.core.windows.net`,\n * credential,\n * );\n * ```\n *\n * Example using an account name/key:\n *\n * ```ts snippet:ReadmeSampleCreateClient\n * import { StorageSharedKeyCredential } from \"@azure/storage-blob\";\n * import { BlobChangeFeedClient } from \"@azure/storage-blob-changefeed\";\n *\n * // Enter your storage account name and shared key\n * const account = \"<account>\";\n * const accountKey = \"<accountkey>\";\n * // Use StorageSharedKeyCredential with storage account and account key\n * // StorageSharedKeyCredential is only available in Node.js runtime, not in browsers\n * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);\n * const changeFeedClient = new BlobChangeFeedClient(\n * // When using AnonymousCredential, following url should include a valid SAS or support public access\n * `https://${account}.blob.core.windows.net`,\n * sharedKeyCredential,\n * );\n * ```\n */\n constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n changeFeedClientOptions?: BlobChangeFeedClientOptions,\n );\n\n /**\n * Creates an instance of BlobChangeFeedClient.\n *\n * @param url - A Client string pointing to Azure Storage blob service, such as\n * \"https://myaccount.blob.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.blob.core.windows.net?sasString\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: Pipeline);\n constructor(\n urlOrClient: string,\n credentialOrPipeline?:\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | Pipeline,\n // Legacy, no way to fix the eslint error without breaking. Disable the rule for this line.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: StoragePipelineOptions,\n changeFeedClientOptions?: BlobChangeFeedClientOptions,\n ) {\n this.changeFeedClientOptions = changeFeedClientOptions || {};\n this.changeFeedFactory = new ChangeFeedFactory(\n this.changeFeedClientOptions.maximumTransferSize,\n );\n\n if (credentialOrPipeline instanceof Pipeline) {\n this.blobServiceClient = new BlobServiceClient(urlOrClient, credentialOrPipeline);\n } else {\n this.blobServiceClient = new BlobServiceClient(\n urlOrClient,\n credentialOrPipeline,\n appendUserAgentPrefix(options),\n );\n }\n }\n\n private async *getChange(\n options: BlobChangeFeedListChangesOptions = {},\n ): AsyncIterableIterator<BlobChangeFeedEvent> {\n const changeFeed: ChangeFeed = await this.changeFeedFactory.create(\n this.blobServiceClient,\n undefined,\n options,\n );\n\n while (changeFeed.hasNext()) {\n const event = await changeFeed.getChange({\n abortSignal: options.abortSignal,\n tracingOptions: options.tracingOptions,\n });\n if (event) {\n yield event;\n } else {\n return;\n }\n }\n }\n\n // start in ChangeFeedListChangesOptions will be ignored when continuationToken is specified.\n private async *getPage(\n continuationToken?: string,\n maxPageSize?: number,\n options: BlobChangeFeedListChangesOptions = {},\n ): AsyncIterableIterator<BlobChangeFeedEventPage> {\n const changeFeed: ChangeFeed = await this.changeFeedFactory.create(\n this.blobServiceClient,\n continuationToken,\n options,\n );\n\n if (!maxPageSize || maxPageSize > CHANGE_FEED_MAX_PAGE_SIZE) {\n maxPageSize = CHANGE_FEED_MAX_PAGE_SIZE;\n }\n while (changeFeed.hasNext()) {\n const eventPage = new BlobChangeFeedEventPage();\n while (changeFeed.hasNext() && eventPage.events.length < maxPageSize) {\n const event = await changeFeed.getChange({\n abortSignal: options.abortSignal,\n tracingOptions: options.tracingOptions,\n });\n if (event) {\n eventPage.events.push(event);\n }\n }\n if (changeFeed.hasNext()) {\n eventPage.continuationToken = JSON.stringify(changeFeed.getCursor());\n }\n if (eventPage.events.length > 0) {\n yield eventPage;\n } else {\n return;\n }\n }\n }\n\n /**\n * Returns an async iterable iterator to list all the change feed events\n * in the specified account.\n *\n * .byPage() returns an async iterable iterator to list the change feed events in pages.\n *\n * Example using `for await` syntax:\n *\n * ```ts snippet:ReadmeSampleListChanges\n * import { StorageSharedKeyCredential } from \"@azure/storage-blob\";\n * import { BlobChangeFeedClient } from \"@azure/storage-blob-changefeed\";\n *\n * const account = \"<account>\";\n * const accountKey = \"<accountkey>\";\n * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);\n * const changeFeedClient = new BlobChangeFeedClient(\n * `https://${account}.blob.core.windows.net`,\n * sharedKeyCredential,\n * );\n *\n * // Use for await to iterate through the change feed\n * for await (const event of changeFeedClient.listChanges()) {\n * console.log(`Event: ${event.eventType}`);\n * console.log(`Event time: ${event.eventTime}`);\n * console.log(`Event data: ${JSON.stringify(event.data)}`);\n * }\n *\n * // Use `byPage` to iterate through the change feed\n * for await (const page of changeFeedClient.listChanges().byPage()) {\n * console.log(`Page: ${JSON.stringify(page)}`);\n * for (const event of page.events) {\n * console.log(`Event: ${event.eventType}`);\n * console.log(`Event time: ${event.eventTime}`);\n * console.log(`Event data: ${JSON.stringify(event.data)}`);\n * }\n * }\n * ```\n *\n * Example using paging with a marker:\n *\n * ```ts snippet:ReadmeSampleListChanges_Continuation\n * import { StorageSharedKeyCredential } from \"@azure/storage-blob\";\n * import { BlobChangeFeedClient } from \"@azure/storage-blob-changefeed\";\n *\n * const account = \"<account>\";\n * const accountKey = \"<accountkey>\";\n * const sharedKeyCredential = new StorageSharedKeyCredential(account, accountKey);\n * const changeFeedClient = new BlobChangeFeedClient(\n * `https://${account}.blob.core.windows.net`,\n * sharedKeyCredential,\n * );\n *\n * let iterator = changeFeedClient.listChanges().byPage({ maxPageSize: 2 });\n * let response = (await iterator.next()).value;\n * // Prints 2 page ranges\n * if (response.pageRange) {\n * for (const pageRange of response.pageRange) {\n * console.log(`Event: ${pageRange.eventType}`);\n * console.log(`Event time: ${pageRange.eventTime}`);\n * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);\n * }\n * }\n * // Gets next marker\n * let marker = response.continuationToken;\n * // Passing next marker as continuationToken\n * iterator = changeFeedClient.listChanges().byPage({ continuationToken: marker, maxPageSize: 10 });\n * response = (await iterator.next()).value;\n * // Prints 10 page ranges\n * if (response.pageRange) {\n * for (const pageRange of response.pageRange) {\n * console.log(`Event: ${pageRange.eventType}`);\n * console.log(`Event time: ${pageRange.eventTime}`);\n * console.log(`Event data: ${JSON.stringify(pageRange.data)}`);\n * }\n * }\n * ```\n *\n * @param options - Options to list change feed events.\n * @returns An asyncIterableIterator that supports paging.\n */\n public listChanges(\n options: BlobChangeFeedListChangesOptions = {},\n ): PagedAsyncIterableIterator<BlobChangeFeedEvent, BlobChangeFeedEventPage> {\n const iter = this.getChange(options);\n return {\n /**\n * The next method, part of the iteration protocol\n */\n async next() {\n return iter.next();\n },\n /**\n * The connection to the async iterator, part of the iteration protocol\n */\n [Symbol.asyncIterator]() {\n return this;\n },\n /**\n * Return an AsyncIterableIterator that works a page at a time\n */\n byPage: (settings: PageSettings = {}) => {\n return this.getPage(settings.continuationToken, settings.maxPageSize, options);\n },\n };\n }\n}\n"]}
@@ -1,37 +1,37 @@
1
- import { ContainerClient, CommonOptions } from "@azure/storage-blob";
2
- import { Segment } from "./Segment";
3
- import { SegmentFactory } from "./SegmentFactory";
4
- import { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent";
5
- import { ChangeFeedCursor } from "./models/ChangeFeedCursor";
6
- import { AbortSignalLike } from "@azure/core-http";
7
- /**
8
- * Options to configure {@link ChangeFeed.getChange} operation.
9
- */
10
- export interface ChangeFeedGetChangeOptions extends CommonOptions {
11
- /**
12
- * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.
13
- * For example, use the &commat;azure/abort-controller to create an `AbortSignal`.
14
- */
15
- abortSignal?: AbortSignalLike;
16
- }
17
- export declare class ChangeFeed {
18
- /**
19
- * BlobContainerClient for making List Blob requests and creating Segments.
20
- */
21
- private readonly containerClient?;
22
- private readonly segmentFactory?;
23
- private readonly years;
24
- private segments;
25
- private currentSegment?;
26
- private lastConsumable?;
27
- private startTime?;
28
- private endTime?;
29
- private end?;
30
- constructor();
31
- constructor(containerClient: ContainerClient, segmentFactory: SegmentFactory, years: number[], segments: string[], currentSegment: Segment, lastConsumable: Date, startTime?: Date, endTime?: Date);
32
- private advanceSegmentIfNecessary;
33
- hasNext(): boolean;
34
- getChange(options?: ChangeFeedGetChangeOptions): Promise<BlobChangeFeedEvent | undefined>;
35
- getCursor(): ChangeFeedCursor;
36
- }
37
- //# sourceMappingURL=ChangeFeed.d.ts.map
1
+ import type { ContainerClient, CommonOptions } from "@azure/storage-blob";
2
+ import type { Segment } from "./Segment.js";
3
+ import type { SegmentFactory } from "./SegmentFactory.js";
4
+ import type { BlobChangeFeedEvent } from "./models/BlobChangeFeedEvent.js";
5
+ import type { ChangeFeedCursor } from "./models/ChangeFeedCursor.js";
6
+ import type { AbortSignalLike } from "@azure/abort-controller";
7
+ /**
8
+ * Options to configure {@link ChangeFeed.getChange} operation.
9
+ */
10
+ export interface ChangeFeedGetChangeOptions extends CommonOptions {
11
+ /**
12
+ * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.
13
+ * For example, use the &commat;azure/abort-controller to create an `AbortSignal`.
14
+ */
15
+ abortSignal?: AbortSignalLike;
16
+ }
17
+ export declare class ChangeFeed {
18
+ /**
19
+ * BlobContainerClient for making List Blob requests and creating Segments.
20
+ */
21
+ private readonly containerClient?;
22
+ private readonly segmentFactory?;
23
+ private readonly years;
24
+ private segments;
25
+ private currentSegment?;
26
+ private lastConsumable?;
27
+ private startTime?;
28
+ private endTime?;
29
+ private end?;
30
+ constructor();
31
+ constructor(containerClient: ContainerClient, segmentFactory: SegmentFactory, years: number[], segments: string[], currentSegment: Segment, lastConsumable: Date, startTime?: Date, endTime?: Date);
32
+ private advanceSegmentIfNecessary;
33
+ hasNext(): boolean;
34
+ getChange(options?: ChangeFeedGetChangeOptions): Promise<BlobChangeFeedEvent | undefined>;
35
+ getCursor(): ChangeFeedCursor;
36
+ }
37
+ //# sourceMappingURL=ChangeFeed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChangeFeed.d.ts","sourceRoot":"","sources":["../../src/ChangeFeed.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAErE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,aAAa;IAC/D;;;OAGG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,qBAAa,UAAU;IACrB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;IAEnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAiB;IAEjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IAEjC,OAAO,CAAC,QAAQ,CAAW;IAE3B,OAAO,CAAC,cAAc,CAAC,CAAU;IAEjC,OAAO,CAAC,cAAc,CAAC,CAAO;IAE9B,OAAO,CAAC,SAAS,CAAC,CAAO;IAEzB,OAAO,CAAC,OAAO,CAAC,CAAO;IAEvB,OAAO,CAAC,GAAG,CAAC,CAAO;;gBAIjB,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EAAE,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,cAAc,EAAE,OAAO,EACvB,cAAc,EAAE,IAAI,EACpB,SAAS,CAAC,EAAE,IAAI,EAChB,OAAO,CAAC,EAAE,IAAI;YA0BF,yBAAyB;IA0DhC,OAAO,IAAI,OAAO;IAaZ,SAAS,CACpB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAiBpC,SAAS,IAAI,gBAAgB;CAYrC"}