@s2-dev/streamstore 0.17.6 → 0.18.1

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 (176) hide show
  1. package/README.md +69 -1
  2. package/dist/cjs/accessTokens.d.ts +3 -2
  3. package/dist/cjs/accessTokens.d.ts.map +1 -1
  4. package/dist/cjs/accessTokens.js +22 -37
  5. package/dist/cjs/accessTokens.js.map +1 -1
  6. package/dist/cjs/basin.d.ts +4 -3
  7. package/dist/cjs/basin.d.ts.map +1 -1
  8. package/dist/cjs/basin.js +16 -6
  9. package/dist/cjs/basin.js.map +1 -1
  10. package/dist/cjs/basins.d.ts +10 -10
  11. package/dist/cjs/basins.d.ts.map +1 -1
  12. package/dist/cjs/basins.js +36 -64
  13. package/dist/cjs/basins.js.map +1 -1
  14. package/dist/cjs/batch-transform.d.ts +1 -1
  15. package/dist/cjs/batch-transform.d.ts.map +1 -1
  16. package/dist/cjs/batch-transform.js +36 -5
  17. package/dist/cjs/batch-transform.js.map +1 -1
  18. package/dist/cjs/common.d.ts +42 -0
  19. package/dist/cjs/common.d.ts.map +1 -1
  20. package/dist/cjs/error.d.ts +40 -2
  21. package/dist/cjs/error.d.ts.map +1 -1
  22. package/dist/cjs/error.js +268 -2
  23. package/dist/cjs/error.js.map +1 -1
  24. package/dist/cjs/generated/client/types.gen.d.ts +7 -0
  25. package/dist/cjs/generated/client/types.gen.d.ts.map +1 -1
  26. package/dist/cjs/generated/client/utils.gen.d.ts +1 -0
  27. package/dist/cjs/generated/client/utils.gen.d.ts.map +1 -1
  28. package/dist/cjs/generated/client/utils.gen.js.map +1 -1
  29. package/dist/cjs/generated/core/types.gen.d.ts +2 -0
  30. package/dist/cjs/generated/core/types.gen.d.ts.map +1 -1
  31. package/dist/cjs/index.d.ts +46 -3
  32. package/dist/cjs/index.d.ts.map +1 -1
  33. package/dist/cjs/index.js +28 -2
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/lib/result.d.ts +57 -0
  36. package/dist/cjs/lib/result.d.ts.map +1 -0
  37. package/dist/cjs/lib/result.js +43 -0
  38. package/dist/cjs/lib/result.js.map +1 -0
  39. package/dist/cjs/lib/retry.d.ts +151 -0
  40. package/dist/cjs/lib/retry.d.ts.map +1 -0
  41. package/dist/cjs/lib/retry.js +839 -0
  42. package/dist/cjs/lib/retry.js.map +1 -0
  43. package/dist/cjs/lib/stream/factory.d.ts +0 -1
  44. package/dist/cjs/lib/stream/factory.d.ts.map +1 -1
  45. package/dist/cjs/lib/stream/factory.js +0 -1
  46. package/dist/cjs/lib/stream/factory.js.map +1 -1
  47. package/dist/cjs/lib/stream/runtime.d.ts +14 -0
  48. package/dist/cjs/lib/stream/runtime.d.ts.map +1 -1
  49. package/dist/cjs/lib/stream/runtime.js +18 -3
  50. package/dist/cjs/lib/stream/runtime.js.map +1 -1
  51. package/dist/cjs/lib/stream/transport/fetch/index.d.ts +24 -32
  52. package/dist/cjs/lib/stream/transport/fetch/index.d.ts.map +1 -1
  53. package/dist/cjs/lib/stream/transport/fetch/index.js +260 -187
  54. package/dist/cjs/lib/stream/transport/fetch/index.js.map +1 -1
  55. package/dist/cjs/lib/stream/transport/fetch/shared.d.ts +1 -2
  56. package/dist/cjs/lib/stream/transport/fetch/shared.d.ts.map +1 -1
  57. package/dist/cjs/lib/stream/transport/fetch/shared.js +49 -72
  58. package/dist/cjs/lib/stream/transport/fetch/shared.js.map +1 -1
  59. package/dist/cjs/lib/stream/transport/s2s/index.d.ts +0 -1
  60. package/dist/cjs/lib/stream/transport/s2s/index.d.ts.map +1 -1
  61. package/dist/cjs/lib/stream/transport/s2s/index.js +312 -352
  62. package/dist/cjs/lib/stream/transport/s2s/index.js.map +1 -1
  63. package/dist/cjs/lib/stream/types.d.ts +102 -8
  64. package/dist/cjs/lib/stream/types.d.ts.map +1 -1
  65. package/dist/cjs/metrics.d.ts +3 -2
  66. package/dist/cjs/metrics.d.ts.map +1 -1
  67. package/dist/cjs/metrics.js +24 -39
  68. package/dist/cjs/metrics.js.map +1 -1
  69. package/dist/cjs/s2.d.ts +1 -0
  70. package/dist/cjs/s2.d.ts.map +1 -1
  71. package/dist/cjs/s2.js +20 -3
  72. package/dist/cjs/s2.js.map +1 -1
  73. package/dist/cjs/stream.d.ts +5 -3
  74. package/dist/cjs/stream.d.ts.map +1 -1
  75. package/dist/cjs/stream.js +29 -18
  76. package/dist/cjs/stream.js.map +1 -1
  77. package/dist/cjs/streams.d.ts +10 -10
  78. package/dist/cjs/streams.d.ts.map +1 -1
  79. package/dist/cjs/streams.js +36 -64
  80. package/dist/cjs/streams.js.map +1 -1
  81. package/dist/cjs/utils.d.ts +3 -3
  82. package/dist/cjs/utils.d.ts.map +1 -1
  83. package/dist/cjs/utils.js +3 -3
  84. package/dist/cjs/utils.js.map +1 -1
  85. package/dist/cjs/version.d.ts +8 -0
  86. package/dist/cjs/version.d.ts.map +1 -0
  87. package/dist/cjs/version.js +11 -0
  88. package/dist/cjs/version.js.map +1 -0
  89. package/dist/esm/accessTokens.d.ts +3 -2
  90. package/dist/esm/accessTokens.d.ts.map +1 -1
  91. package/dist/esm/accessTokens.js +23 -38
  92. package/dist/esm/accessTokens.js.map +1 -1
  93. package/dist/esm/basin.d.ts +4 -3
  94. package/dist/esm/basin.d.ts.map +1 -1
  95. package/dist/esm/basin.js +16 -6
  96. package/dist/esm/basin.js.map +1 -1
  97. package/dist/esm/basins.d.ts +10 -10
  98. package/dist/esm/basins.d.ts.map +1 -1
  99. package/dist/esm/basins.js +37 -65
  100. package/dist/esm/basins.js.map +1 -1
  101. package/dist/esm/batch-transform.d.ts +1 -1
  102. package/dist/esm/batch-transform.d.ts.map +1 -1
  103. package/dist/esm/batch-transform.js +37 -6
  104. package/dist/esm/batch-transform.js.map +1 -1
  105. package/dist/esm/common.d.ts +42 -0
  106. package/dist/esm/common.d.ts.map +1 -1
  107. package/dist/esm/error.d.ts +40 -2
  108. package/dist/esm/error.d.ts.map +1 -1
  109. package/dist/esm/error.js +260 -2
  110. package/dist/esm/error.js.map +1 -1
  111. package/dist/esm/generated/client/types.gen.d.ts +7 -0
  112. package/dist/esm/generated/client/types.gen.d.ts.map +1 -1
  113. package/dist/esm/generated/client/utils.gen.d.ts +1 -0
  114. package/dist/esm/generated/client/utils.gen.d.ts.map +1 -1
  115. package/dist/esm/generated/client/utils.gen.js.map +1 -1
  116. package/dist/esm/generated/core/types.gen.d.ts +2 -0
  117. package/dist/esm/generated/core/types.gen.d.ts.map +1 -1
  118. package/dist/esm/index.d.ts +46 -3
  119. package/dist/esm/index.d.ts.map +1 -1
  120. package/dist/esm/index.js +23 -1
  121. package/dist/esm/index.js.map +1 -1
  122. package/dist/esm/lib/result.d.ts +57 -0
  123. package/dist/esm/lib/result.d.ts.map +1 -0
  124. package/dist/esm/lib/result.js +37 -0
  125. package/dist/esm/lib/result.js.map +1 -0
  126. package/dist/esm/lib/retry.d.ts +151 -0
  127. package/dist/esm/lib/retry.d.ts.map +1 -0
  128. package/dist/esm/lib/retry.js +830 -0
  129. package/dist/esm/lib/retry.js.map +1 -0
  130. package/dist/esm/lib/stream/factory.d.ts +0 -1
  131. package/dist/esm/lib/stream/factory.d.ts.map +1 -1
  132. package/dist/esm/lib/stream/factory.js +0 -1
  133. package/dist/esm/lib/stream/factory.js.map +1 -1
  134. package/dist/esm/lib/stream/runtime.d.ts +14 -0
  135. package/dist/esm/lib/stream/runtime.d.ts.map +1 -1
  136. package/dist/esm/lib/stream/runtime.js +23 -3
  137. package/dist/esm/lib/stream/runtime.js.map +1 -1
  138. package/dist/esm/lib/stream/transport/fetch/index.d.ts +24 -32
  139. package/dist/esm/lib/stream/transport/fetch/index.d.ts.map +1 -1
  140. package/dist/esm/lib/stream/transport/fetch/index.js +260 -187
  141. package/dist/esm/lib/stream/transport/fetch/index.js.map +1 -1
  142. package/dist/esm/lib/stream/transport/fetch/shared.d.ts +1 -2
  143. package/dist/esm/lib/stream/transport/fetch/shared.d.ts.map +1 -1
  144. package/dist/esm/lib/stream/transport/fetch/shared.js +51 -74
  145. package/dist/esm/lib/stream/transport/fetch/shared.js.map +1 -1
  146. package/dist/esm/lib/stream/transport/s2s/index.d.ts +0 -1
  147. package/dist/esm/lib/stream/transport/s2s/index.d.ts.map +1 -1
  148. package/dist/esm/lib/stream/transport/s2s/index.js +313 -353
  149. package/dist/esm/lib/stream/transport/s2s/index.js.map +1 -1
  150. package/dist/esm/lib/stream/types.d.ts +102 -8
  151. package/dist/esm/lib/stream/types.d.ts.map +1 -1
  152. package/dist/esm/metrics.d.ts +3 -2
  153. package/dist/esm/metrics.d.ts.map +1 -1
  154. package/dist/esm/metrics.js +25 -40
  155. package/dist/esm/metrics.js.map +1 -1
  156. package/dist/esm/s2.d.ts +1 -0
  157. package/dist/esm/s2.d.ts.map +1 -1
  158. package/dist/esm/s2.js +20 -3
  159. package/dist/esm/s2.js.map +1 -1
  160. package/dist/esm/stream.d.ts +5 -3
  161. package/dist/esm/stream.d.ts.map +1 -1
  162. package/dist/esm/stream.js +30 -19
  163. package/dist/esm/stream.js.map +1 -1
  164. package/dist/esm/streams.d.ts +10 -10
  165. package/dist/esm/streams.d.ts.map +1 -1
  166. package/dist/esm/streams.js +37 -65
  167. package/dist/esm/streams.js.map +1 -1
  168. package/dist/esm/utils.d.ts +3 -3
  169. package/dist/esm/utils.d.ts.map +1 -1
  170. package/dist/esm/utils.js +2 -2
  171. package/dist/esm/utils.js.map +1 -1
  172. package/dist/esm/version.d.ts +8 -0
  173. package/dist/esm/version.d.ts.map +1 -0
  174. package/dist/esm/version.js +8 -0
  175. package/dist/esm/version.js.map +1 -0
  176. package/package.json +7 -4
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AAErC,mDAAiE;AACjE,wDAAiE;AACjE,sEAGgD;AAahD,MAAa,QAAQ;IACH,MAAM,CAAS;IACf,eAAe,CAAkB;IAC1C,UAAU,CAAoB;IAEtB,IAAI,CAAS;IAE7B,YAAY,IAAY,EAAE,MAAc,EAAE,eAAgC;QACzE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACxC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACzB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtB,IAAI,CAAC,UAAU,GAAG,MAAM,IAAA,mCAAsB,EAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CAAC,OAA0B;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAA,oBAAS,EAAC;YAChC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE;gBACL,MAAM,EAAE,IAAI,CAAC,IAAI;aACjB;YACD,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,IAAI,CAChB,IAAuB,EACvB,OAA0B;QAE1B,OAAO,MAAM,IAAA,sBAAU,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IACD;;;;;;;;;;;;;OAaG;IACI,KAAK,CAAC,MAAM,CAClB,OAAsC,EACtC,IAAkC,EAClC,OAA0B;QAE1B,OAAO,MAAM,IAAA,wBAAY,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IACD;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CACvB,IAAuB,EACvB,OAA0B;QAE1B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,OAAO,MAAM,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IACD;;;;;;;OAOG;IACI,KAAK,CAAC,aAAa,CACzB,cAAqC,EACrC,cAAiC;QAEjC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,OAAO,MAAM,SAAS,CAAC,iBAAiB,CACvC,IAAI,CAAC,IAAI,EACT,cAAc,EACd,cAAc,CACd,CAAC;IACH,CAAC;CACD;AAnHD,4BAmHC"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/stream.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { DataToObject, S2RequestOptions } from "./common.js";
1
+ import type { DataToObject, RetryConfig, S2RequestOptions } from "./common.js";
2
2
  import type { Client } from "./generated/client/types.gen.js";
3
- import { type CreateStreamData, type DeleteStreamData, type GetStreamConfigData, type ListStreamsData, type ReconfigureStreamData } from "./generated/index.js";
3
+ import { type CreateStreamData, type CreateStreamResponse, type DeleteStreamData, type GetStreamConfigData, type ListStreamsData, type ListStreamsResponse, type ReconfigureStreamData, type ReconfigureStreamResponse, type StreamConfig } from "./generated/index.js";
4
4
  export interface ListStreamsArgs extends DataToObject<ListStreamsData> {
5
5
  }
6
6
  export interface CreateStreamArgs extends DataToObject<CreateStreamData> {
@@ -13,7 +13,8 @@ export interface ReconfigureStreamArgs extends DataToObject<ReconfigureStreamDat
13
13
  }
14
14
  export declare class S2Streams {
15
15
  private readonly client;
16
- constructor(client: Client);
16
+ private readonly retryConfig?;
17
+ constructor(client: Client, retryConfig?: RetryConfig);
17
18
  /**
18
19
  * List streams in the basin.
19
20
  *
@@ -21,32 +22,31 @@ export declare class S2Streams {
21
22
  * @param args.start_after Name to start after (for pagination)
22
23
  * @param args.limit Max results (up to 1000)
23
24
  */
24
- list(args?: ListStreamsArgs, options?: S2RequestOptions): Promise<import("./generated/types.gen.js").ListStreamsResponse>;
25
+ list(args?: ListStreamsArgs, options?: S2RequestOptions): Promise<ListStreamsResponse>;
25
26
  /**
26
27
  * Create a stream.
27
28
  *
28
29
  * @param args.stream Stream name (1-512 bytes, unique within the basin)
29
30
  * @param args.config Stream configuration (retention, storage class, timestamping, delete-on-empty)
30
31
  */
31
- create(args: CreateStreamArgs, options?: S2RequestOptions): Promise<import("./generated/types.gen.js").StreamInfo>;
32
+ create(args: CreateStreamArgs, options?: S2RequestOptions): Promise<CreateStreamResponse>;
32
33
  /**
33
34
  * Get stream configuration.
34
35
  *
35
36
  * @param args.stream Stream name
36
37
  */
37
- getConfig(args: GetStreamConfigArgs, options?: S2RequestOptions): Promise<import("./generated/types.gen.js").StreamConfig>;
38
+ getConfig(args: GetStreamConfigArgs, options?: S2RequestOptions): Promise<StreamConfig>;
38
39
  /**
39
40
  * Delete a stream.
40
41
  *
41
42
  * @param args.stream Stream name
42
43
  */
43
- delete(args: DeleteStreamArgs, options?: S2RequestOptions): Promise<unknown>;
44
+ delete(args: DeleteStreamArgs, options?: S2RequestOptions): Promise<void>;
44
45
  /**
45
46
  * Reconfigure a stream.
46
47
  *
47
- * @param args.stream Stream name
48
- * @param args.body Configuration fields to change
48
+ * @param args Configuration for the stream to reconfigure (including stream name and fields to change)
49
49
  */
50
- reconfigure(args: ReconfigureStreamArgs, options?: S2RequestOptions): Promise<import("./generated/types.gen.js").StreamConfig>;
50
+ reconfigure(args: ReconfigureStreamArgs, options?: S2RequestOptions): Promise<ReconfigureStreamResponse>;
51
51
  }
52
52
  //# sourceMappingURL=streams.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/streams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACN,KAAK,gBAAgB,EAErB,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EAExB,KAAK,eAAe,EAEpB,KAAK,qBAAqB,EAE1B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,eAAgB,SAAQ,YAAY,CAAC,eAAe,CAAC;CAAG;AACzE,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;CAAG;AAC3E,MAAM,WAAW,mBAChB,SAAQ,YAAY,CAAC,mBAAmB,CAAC;CAAG;AAC7C,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;CAAG;AAC3E,MAAM,WAAW,qBAChB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;CAAG;AAE/C,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBACpB,MAAM,EAAE,MAAM;IAI1B;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkBpE;;;;;OAKG;IACU,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkBtE;;;;OAIG;IACU,SAAS,CACrB,IAAI,EAAE,mBAAmB,EACzB,OAAO,CAAC,EAAE,gBAAgB;IAmB3B;;;;OAIG;IACU,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkBtE;;;;;OAKG;IACU,WAAW,CACvB,IAAI,EAAE,qBAAqB,EAC3B,OAAO,CAAC,EAAE,gBAAgB;CAmB3B"}
1
+ {"version":3,"file":"streams.d.ts","sourceRoot":"","sources":["../../src/streams.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAEzB,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EAExB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EAExB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAE9B,KAAK,YAAY,EACjB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,eAAgB,SAAQ,YAAY,CAAC,eAAe,CAAC;CAAG;AACzE,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;CAAG;AAC3E,MAAM,WAAW,mBAChB,SAAQ,YAAY,CAAC,mBAAmB,CAAC;CAAG;AAC7C,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,gBAAgB,CAAC;CAAG;AAC3E,MAAM,WAAW,qBAChB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;CAAG;AAE/C,qBAAa,SAAS;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAc;gBAE/B,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW;IAKrD;;;;;;OAMG;IACU,IAAI,CAChB,IAAI,CAAC,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,mBAAmB,CAAC;IAY/B;;;;;OAKG;IACU,MAAM,CAClB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAYhC;;;;OAIG;IACU,SAAS,CACrB,IAAI,EAAE,mBAAmB,EACzB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,YAAY,CAAC;IAYxB;;;;OAIG;IACU,MAAM,CAClB,IAAI,EAAE,gBAAgB,EACtB,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,IAAI,CAAC;IAYhB;;;;OAIG;IACU,WAAW,CACvB,IAAI,EAAE,qBAAqB,EAC3B,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,yBAAyB,CAAC;CAYrC"}
@@ -3,10 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.S2Streams = void 0;
4
4
  const error_js_1 = require("./error.js");
5
5
  const index_js_1 = require("./generated/index.js");
6
+ const retry_js_1 = require("./lib/retry.js");
6
7
  class S2Streams {
7
8
  client;
8
- constructor(client) {
9
+ retryConfig;
10
+ constructor(client, retryConfig) {
9
11
  this.client = client;
12
+ this.retryConfig = retryConfig;
10
13
  }
11
14
  /**
12
15
  * List streams in the basin.
@@ -16,19 +19,13 @@ class S2Streams {
16
19
  * @param args.limit Max results (up to 1000)
17
20
  */
18
21
  async list(args, options) {
19
- const response = await (0, index_js_1.listStreams)({
20
- client: this.client,
21
- query: args,
22
- ...options,
22
+ return await (0, retry_js_1.withRetries)(this.retryConfig, async () => {
23
+ return await (0, error_js_1.withS2Data)(() => (0, index_js_1.listStreams)({
24
+ client: this.client,
25
+ query: args,
26
+ ...options,
27
+ }));
23
28
  });
24
- if (response.error) {
25
- throw new error_js_1.S2Error({
26
- message: response.error.message,
27
- code: response.error.code ?? undefined,
28
- status: response.response.status,
29
- });
30
- }
31
- return response.data;
32
29
  }
33
30
  /**
34
31
  * Create a stream.
@@ -37,19 +34,13 @@ class S2Streams {
37
34
  * @param args.config Stream configuration (retention, storage class, timestamping, delete-on-empty)
38
35
  */
39
36
  async create(args, options) {
40
- const response = await (0, index_js_1.createStream)({
41
- client: this.client,
42
- body: args,
43
- ...options,
37
+ return await (0, retry_js_1.withRetries)(this.retryConfig, async () => {
38
+ return await (0, error_js_1.withS2Data)(() => (0, index_js_1.createStream)({
39
+ client: this.client,
40
+ body: args,
41
+ ...options,
42
+ }));
44
43
  });
45
- if (response.error) {
46
- throw new error_js_1.S2Error({
47
- message: response.error.message,
48
- code: response.error.code ?? undefined,
49
- status: response.response.status,
50
- });
51
- }
52
- return response.data;
53
44
  }
54
45
  /**
55
46
  * Get stream configuration.
@@ -57,19 +48,13 @@ class S2Streams {
57
48
  * @param args.stream Stream name
58
49
  */
59
50
  async getConfig(args, options) {
60
- const response = await (0, index_js_1.getStreamConfig)({
61
- client: this.client,
62
- path: args,
63
- ...options,
51
+ return await (0, retry_js_1.withRetries)(this.retryConfig, async () => {
52
+ return await (0, error_js_1.withS2Data)(() => (0, index_js_1.getStreamConfig)({
53
+ client: this.client,
54
+ path: args,
55
+ ...options,
56
+ }));
64
57
  });
65
- if (response.error) {
66
- throw new error_js_1.S2Error({
67
- message: response.error.message,
68
- code: response.error.code ?? undefined,
69
- status: response.response.status,
70
- });
71
- }
72
- return response.data;
73
58
  }
74
59
  /**
75
60
  * Delete a stream.
@@ -77,41 +62,28 @@ class S2Streams {
77
62
  * @param args.stream Stream name
78
63
  */
79
64
  async delete(args, options) {
80
- const response = await (0, index_js_1.deleteStream)({
81
- client: this.client,
82
- path: args,
83
- ...options,
65
+ await (0, retry_js_1.withRetries)(this.retryConfig, async () => {
66
+ return await (0, error_js_1.withS2Data)(() => (0, index_js_1.deleteStream)({
67
+ client: this.client,
68
+ path: args,
69
+ ...options,
70
+ }));
84
71
  });
85
- if (response.error) {
86
- throw new error_js_1.S2Error({
87
- message: response.error.message,
88
- code: response.error.code ?? undefined,
89
- status: response.response.status,
90
- });
91
- }
92
- return response.data;
93
72
  }
94
73
  /**
95
74
  * Reconfigure a stream.
96
75
  *
97
- * @param args.stream Stream name
98
- * @param args.body Configuration fields to change
76
+ * @param args Configuration for the stream to reconfigure (including stream name and fields to change)
99
77
  */
100
78
  async reconfigure(args, options) {
101
- const response = await (0, index_js_1.reconfigureStream)({
102
- client: this.client,
103
- path: args,
104
- body: args,
105
- ...options,
79
+ return await (0, retry_js_1.withRetries)(this.retryConfig, async () => {
80
+ return await (0, error_js_1.withS2Data)(() => (0, index_js_1.reconfigureStream)({
81
+ client: this.client,
82
+ path: args,
83
+ body: args,
84
+ ...options,
85
+ }));
106
86
  });
107
- if (response.error) {
108
- throw new error_js_1.S2Error({
109
- message: response.error.message,
110
- code: response.error.code ?? undefined,
111
- status: response.response.status,
112
- });
113
- }
114
- return response.data;
115
87
  }
116
88
  }
117
89
  exports.S2Streams = S2Streams;
@@ -1 +1 @@
1
- {"version":3,"file":"streams.js","sourceRoot":"","sources":["../../src/streams.ts"],"names":[],"mappings":";;;AACA,yCAAqC;AAErC,mDAW8B;AAU9B,MAAa,SAAS;IACJ,MAAM,CAAS;IAChC,YAAY,MAAc;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,IAAsB,EAAE,OAA0B;QACnE,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAW,EAAC;YAClC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI;YACX,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAAC,IAAsB,EAAE,OAA0B;QACrE,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAY,EAAC;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACrB,IAAyB,EACzB,OAA0B;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAA,0BAAe,EAAC;YACtC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CAAC,IAAsB,EAAE,OAA0B;QACrE,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAY,EAAC;YACnC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CACvB,IAA2B,EAC3B,OAA0B;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAA,4BAAiB,EAAC;YACxC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,kBAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;CACD;AAnID,8BAmIC"}
1
+ {"version":3,"file":"streams.js","sourceRoot":"","sources":["../../src/streams.ts"],"names":[],"mappings":";;;AACA,yCAAwC;AAExC,mDAe8B;AAC9B,6CAA6C;AAU7C,MAAa,SAAS;IACJ,MAAM,CAAS;IACf,WAAW,CAAe;IAE3C,YAAY,MAAc,EAAE,WAAyB;QACpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAChB,IAAsB,EACtB,OAA0B;QAE1B,OAAO,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,IAAA,qBAAU,EAAC,GAAG,EAAE,CAC5B,IAAA,sBAAW,EAAC;gBACX,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,IAAI;gBACX,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,MAAM,CAClB,IAAsB,EACtB,OAA0B;QAE1B,OAAO,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,IAAA,qBAAU,EAAC,GAAG,EAAE,CAC5B,IAAA,uBAAY,EAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACrB,IAAyB,EACzB,OAA0B;QAE1B,OAAO,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,IAAA,qBAAU,EAAC,GAAG,EAAE,CAC5B,IAAA,0BAAe,EAAC;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CAClB,IAAsB,EACtB,OAA0B;QAE1B,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YAC9C,OAAO,MAAM,IAAA,qBAAU,EAAC,GAAG,EAAE,CAC5B,IAAA,uBAAY,EAAC;gBACZ,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CACvB,IAA2B,EAC3B,OAA0B;QAE1B,OAAO,MAAM,IAAA,sBAAW,EAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,IAAA,qBAAU,EAAC,GAAG,EAAE,CAC5B,IAAA,4BAAiB,EAAC;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAhHD,8BAgHC"}
@@ -1,4 +1,4 @@
1
- import type { AppendHeaders, AppendRecord as AppendRecordType } from "./lib/stream/types.js";
1
+ import type { AppendHeaders, AppendRecord as AppendRecordType, ReadRecord } from "./lib/stream/types.js";
2
2
  export type AppendRecord = AppendRecordType;
3
3
  declare function appendRecordMake(body?: string, headers?: AppendHeaders<"string">, timestamp?: number): AppendRecord;
4
4
  declare function appendRecordMake(body?: Uint8Array, headers?: AppendHeaders<"bytes">, timestamp?: number): AppendRecord;
@@ -28,7 +28,7 @@ export declare const AppendRecord: {
28
28
  */
29
29
  export declare function utf8ByteLength(str: string): number;
30
30
  /**
31
- * Calculate the metered size in bytes of an AppendRecord.
31
+ * Calculate the metered size in bytes of a record (append or read).
32
32
  * This includes the body and headers, but not metadata like timestamp.
33
33
  *
34
34
  * This function calculates how many bytes the record will occupy
@@ -40,7 +40,7 @@ export declare function utf8ByteLength(str: string): number;
40
40
  * @param record The record to measure
41
41
  * @returns The size in bytes
42
42
  */
43
- export declare function meteredSizeBytes(record: AppendRecord): number;
43
+ export declare function meteredBytes<Format extends "string" | "bytes">(record: AppendRecord | ReadRecord<Format>): number;
44
44
  export declare function computeAppendRecordFormat(record: AppendRecord): "string" | "bytes";
45
45
  export {};
46
46
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,YAAY,IAAI,gBAAgB,EAChC,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,iBAAS,gBAAgB,CACxB,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,EACjC,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAChB,iBAAS,gBAAgB,CACxB,IAAI,CAAC,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,EAChC,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAahB,iBAAS,mBAAmB,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAChB,iBAAS,mBAAmB,CAC3B,OAAO,EAAE,UAAU,EACnB,IAAI,CAAC,EAAE,UAAU,EACjB,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAgBhB;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY;;;oCAID,MAAM,cAAc,MAAM,KAAG,YAAY;4BAGjD,MAAM,GAAG,MAAM,cAAc,MAAM,KAAG,YAAY;CAWxD,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiClD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAgC7D;AAED,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,YAAY,GAClB,QAAQ,GAAG,OAAO,CAiBpB"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,YAAY,IAAI,gBAAgB,EAChC,UAAU,EACV,MAAM,uBAAuB,CAAC;AAE/B,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAE5C,iBAAS,gBAAgB,CACxB,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,EACjC,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAChB,iBAAS,gBAAgB,CACxB,IAAI,CAAC,EAAE,UAAU,EACjB,OAAO,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,EAChC,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAahB,iBAAS,mBAAmB,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAChB,iBAAS,mBAAmB,CAC3B,OAAO,EAAE,UAAU,EACnB,IAAI,CAAC,EAAE,UAAU,EACjB,SAAS,CAAC,EAAE,MAAM,GAChB,YAAY,CAAC;AAgBhB;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY;;;oCAID,MAAM,cAAc,MAAM,KAAG,YAAY;4BAGjD,MAAM,GAAG,MAAM,cAAc,MAAM,KAAG,YAAY;CAWxD,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiClD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,MAAM,SAAS,QAAQ,GAAG,OAAO,EAC7D,MAAM,EAAE,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,GACvC,MAAM,CAgCR;AAED,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,YAAY,GAClB,QAAQ,GAAG,OAAO,CAiBpB"}
package/dist/cjs/utils.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AppendRecord = void 0;
4
4
  exports.utf8ByteLength = utf8ByteLength;
5
- exports.meteredSizeBytes = meteredSizeBytes;
5
+ exports.meteredBytes = meteredBytes;
6
6
  exports.computeAppendRecordFormat = computeAppendRecordFormat;
7
7
  function appendRecordMake(body, headers, timestamp) {
8
8
  return {
@@ -92,7 +92,7 @@ function utf8ByteLength(str) {
92
92
  return bytes;
93
93
  }
94
94
  /**
95
- * Calculate the metered size in bytes of an AppendRecord.
95
+ * Calculate the metered size in bytes of a record (append or read).
96
96
  * This includes the body and headers, but not metadata like timestamp.
97
97
  *
98
98
  * This function calculates how many bytes the record will occupy
@@ -104,7 +104,7 @@ function utf8ByteLength(str) {
104
104
  * @param record The record to measure
105
105
  * @returns The size in bytes
106
106
  */
107
- function meteredSizeBytes(record) {
107
+ function meteredBytes(record) {
108
108
  // Calculate header size based on actual data types
109
109
  let numHeaders = 0;
110
110
  let headersSize = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Library version.
3
+ *
4
+ * This file is auto-generated from package.json by scripts/generate-version.ts.
5
+ * Do not edit manually.
6
+ */
7
+ export declare const VERSION = "0.18.1";
8
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,OAAO,WAAW,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VERSION = void 0;
4
+ /**
5
+ * Library version.
6
+ *
7
+ * This file is auto-generated from package.json by scripts/generate-version.ts.
8
+ * Do not edit manually.
9
+ */
10
+ exports.VERSION = "0.18.1";
11
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,OAAO,GAAG,QAAQ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { DataToObject, S2RequestOptions } from "./common.js";
1
+ import type { DataToObject, RetryConfig, S2RequestOptions } from "./common.js";
2
2
  import type { Client } from "./generated/client/types.gen.js";
3
3
  import { type IssueAccessTokenData, type ListAccessTokensData, type RevokeAccessTokenData } from "./generated/index.js";
4
4
  export interface ListAccessTokensArgs extends DataToObject<ListAccessTokensData> {
@@ -9,7 +9,8 @@ export interface RevokeAccessTokenArgs extends DataToObject<RevokeAccessTokenDat
9
9
  }
10
10
  export declare class S2AccessTokens {
11
11
  readonly client: Client;
12
- constructor(client: Client);
12
+ private readonly retryConfig?;
13
+ constructor(client: Client, retryConfig?: RetryConfig);
13
14
  /**
14
15
  * List access tokens.
15
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"accessTokens.d.ts","sourceRoot":"","sources":["../../src/accessTokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAElE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACN,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAEzB,KAAK,qBAAqB,EAE1B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,oBAChB,SAAQ,YAAY,CAAC,oBAAoB,CAAC;CAAG;AAC9C,MAAM,WAAW,oBAChB,SAAQ,YAAY,CAAC,oBAAoB,CAAC;CAAG;AAC9C,MAAM,WAAW,qBAChB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;CAAG;AAE/C,qBAAa,cAAc;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,MAAM,EAAE,MAAM;IAI1B;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkBzE;;;;;;;OAOG;IACU,KAAK,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAkBzE;;;;OAIG;IACU,MAAM,CAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAiB3E"}
1
+ {"version":3,"file":"accessTokens.d.ts","sourceRoot":"","sources":["../../src/accessTokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EACN,KAAK,oBAAoB,EAEzB,KAAK,oBAAoB,EAEzB,KAAK,qBAAqB,EAE1B,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,oBAChB,SAAQ,YAAY,CAAC,oBAAoB,CAAC;CAAG;AAC9C,MAAM,WAAW,oBAChB,SAAQ,YAAY,CAAC,oBAAoB,CAAC;CAAG;AAC9C,MAAM,WAAW,qBAChB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;CAAG;AAE/C,qBAAa,cAAc;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAc;gBAE/B,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW;IAKrD;;;;;;OAMG;IACU,IAAI,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAYzE;;;;;;;OAOG;IACU,KAAK,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAYzE;;;;OAIG;IACU,MAAM,CAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAE,gBAAgB;CAW3E"}
@@ -1,9 +1,12 @@
1
- import { S2Error } from "./error.js";
1
+ import { S2Error, withS2Data } from "./error.js";
2
2
  import { issueAccessToken, listAccessTokens, revokeAccessToken, } from "./generated/index.js";
3
+ import { withRetries } from "./lib/retry.js";
3
4
  export class S2AccessTokens {
4
5
  client;
5
- constructor(client) {
6
+ retryConfig;
7
+ constructor(client, retryConfig) {
6
8
  this.client = client;
9
+ this.retryConfig = retryConfig;
7
10
  }
8
11
  /**
9
12
  * List access tokens.
@@ -13,19 +16,13 @@ export class S2AccessTokens {
13
16
  * @param args.limit Max results (up to 1000)
14
17
  */
15
18
  async list(args, options) {
16
- const response = await listAccessTokens({
17
- client: this.client,
18
- query: args,
19
- ...options,
19
+ return await withRetries(this.retryConfig, async () => {
20
+ return await withS2Data(() => listAccessTokens({
21
+ client: this.client,
22
+ query: args,
23
+ ...options,
24
+ }));
20
25
  });
21
- if (response.error) {
22
- throw new S2Error({
23
- message: response.error.message,
24
- code: response.error.code ?? undefined,
25
- status: response.response.status,
26
- });
27
- }
28
- return response.data;
29
26
  }
30
27
  /**
31
28
  * Issue a new access token.
@@ -36,19 +33,13 @@ export class S2AccessTokens {
36
33
  * @param args.expires_at Expiration in ISO 8601; defaults to requestor's token expiry
37
34
  */
38
35
  async issue(args, options) {
39
- const response = await issueAccessToken({
40
- client: this.client,
41
- body: args,
42
- ...options,
36
+ return await withRetries(this.retryConfig, async () => {
37
+ return await withS2Data(() => issueAccessToken({
38
+ client: this.client,
39
+ body: args,
40
+ ...options,
41
+ }));
43
42
  });
44
- if (response.error) {
45
- throw new S2Error({
46
- message: response.error.message,
47
- code: response.error.code ?? undefined,
48
- status: response.response.status,
49
- });
50
- }
51
- return response.data;
52
43
  }
53
44
  /**
54
45
  * Revoke an access token by ID.
@@ -56,19 +47,13 @@ export class S2AccessTokens {
56
47
  * @param args.id Token ID to revoke
57
48
  */
58
49
  async revoke(args, options) {
59
- const response = await revokeAccessToken({
60
- client: this.client,
61
- path: args,
62
- ...options,
50
+ return await withRetries(this.retryConfig, async () => {
51
+ return await withS2Data(() => revokeAccessToken({
52
+ client: this.client,
53
+ path: args,
54
+ ...options,
55
+ }));
63
56
  });
64
- if (response.error) {
65
- throw new S2Error({
66
- message: response.error.message,
67
- code: response.error.code ?? undefined,
68
- status: response.response.status,
69
- });
70
- }
71
- return response.data;
72
57
  }
73
58
  }
74
59
  //# sourceMappingURL=accessTokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"accessTokens.js","sourceRoot":"","sources":["../../src/accessTokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAEN,gBAAgB,EAEhB,gBAAgB,EAEhB,iBAAiB,GACjB,MAAM,sBAAsB,CAAC;AAS9B,MAAM,OAAO,cAAc;IACjB,MAAM,CAAS;IAExB,YAAY,MAAc;QACzB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,IAA2B,EAAE,OAA0B;QACxE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI;YACX,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,OAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,KAAK,CAAC,IAA0B,EAAE,OAA0B;QACxE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,OAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CAAC,IAA2B,EAAE,OAA0B;QAC1E,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC;YACxC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;YACV,GAAG,OAAO;SACV,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,OAAO,CAAC;gBACjB,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO;gBAC/B,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS;gBACtC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;aAChC,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC;IACtB,CAAC;CACD"}
1
+ {"version":3,"file":"accessTokens.js","sourceRoot":"","sources":["../../src/accessTokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAEN,gBAAgB,EAEhB,gBAAgB,EAEhB,iBAAiB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAS7C,MAAM,OAAO,cAAc;IACjB,MAAM,CAAS;IACP,WAAW,CAAe;IAE3C,YAAY,MAAc,EAAE,WAAyB;QACpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,IAA2B,EAAE,OAA0B;QACxE,OAAO,MAAM,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,CAC5B,gBAAgB,CAAC;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,KAAK,EAAE,IAAI;gBACX,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,KAAK,CAAC,IAA0B,EAAE,OAA0B;QACxE,OAAO,MAAM,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,CAC5B,gBAAgB,CAAC;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM,CAAC,IAA2B,EAAE,OAA0B;QAC1E,OAAO,MAAM,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;YACrD,OAAO,MAAM,UAAU,CAAC,GAAG,EAAE,CAC5B,iBAAiB,CAAC;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI;gBACV,GAAG,OAAO;aACV,CAAC,CACF,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
@@ -1,3 +1,4 @@
1
+ import type { RetryConfig } from "./common.js";
1
2
  import * as Redacted from "./lib/redacted.js";
2
3
  import type { SessionTransports } from "./lib/stream/types.js";
3
4
  import { S2Stream } from "./stream.js";
@@ -5,6 +6,7 @@ import { S2Streams } from "./streams.js";
5
6
  export declare class S2Basin {
6
7
  private readonly client;
7
8
  private readonly transportConfig;
9
+ private readonly retryConfig?;
8
10
  readonly name: string;
9
11
  readonly streams: S2Streams;
10
12
  /**
@@ -12,14 +14,13 @@ export declare class S2Basin {
12
14
  *
13
15
  * Use this to work with streams inside a single basin.
14
16
  * @param name Basin name
15
- * @param accessToken Redacted access token from the parent `S2` client
16
- * @param baseUrl Base URL for the basin (e.g. `https://my-basin.b.aws.s2.dev/v1`)
17
- * @param includeBasinHeader Include the `S2-Basin` header with the request
17
+ * @param options Configuration for the basin-scoped client
18
18
  */
19
19
  constructor(name: string, options: {
20
20
  accessToken: Redacted.Redacted;
21
21
  baseUrl: string;
22
22
  includeBasinHeader: boolean;
23
+ retryConfig?: RetryConfig;
23
24
  });
24
25
  /**
25
26
  * Create a stream-scoped helper bound to `this` basin.
@@ -1 +1 @@
1
- {"version":3,"file":"basin.d.ts","sourceRoot":"","sources":["../../src/basin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,qBAAa,OAAO;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,OAAO,EAAE,SAAS,CAAC;IAEnC;;;;;;;;OAQG;gBAEF,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QACR,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAC/B,OAAO,EAAE,MAAM,CAAC;QAChB,kBAAkB,EAAE,OAAO,CAAC;KAC5B;IAiBF;;;OAGG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa;CAMnD;AAED,MAAM,WAAW,aAAa;IAC7B,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACnC"}
1
+ {"version":3,"file":"basin.d.ts","sourceRoot":"","sources":["../../src/basin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAK9C,OAAO,KAAK,EAAE,iBAAiB,EAAmB,MAAM,uBAAuB,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,qBAAa,OAAO;IACnB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAc;IAC3C,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,OAAO,EAAE,SAAS,CAAC;IAEnC;;;;;;OAMG;gBAEF,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;QACR,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC;QAC/B,OAAO,EAAE,MAAM,CAAC;QAChB,kBAAkB,EAAE,OAAO,CAAC;QAC5B,WAAW,CAAC,EAAE,WAAW,CAAC;KAC1B;IA4BF;;;OAGG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa;CAWnD;AAED,MAAM,WAAW,aAAa;IAC7B,cAAc,CAAC,EAAE,iBAAiB,CAAC;CACnC"}
package/dist/esm/basin.js CHANGED
@@ -1,10 +1,12 @@
1
1
  import { createClient, createConfig } from "./generated/client/index.js";
2
2
  import * as Redacted from "./lib/redacted.js";
3
+ import { canSetUserAgentHeader, DEFAULT_USER_AGENT, } from "./lib/stream/runtime.js";
3
4
  import { S2Stream } from "./stream.js";
4
5
  import { S2Streams } from "./streams.js";
5
6
  export class S2Basin {
6
7
  client;
7
8
  transportConfig;
9
+ retryConfig;
8
10
  name;
9
11
  streams;
10
12
  /**
@@ -12,22 +14,30 @@ export class S2Basin {
12
14
  *
13
15
  * Use this to work with streams inside a single basin.
14
16
  * @param name Basin name
15
- * @param accessToken Redacted access token from the parent `S2` client
16
- * @param baseUrl Base URL for the basin (e.g. `https://my-basin.b.aws.s2.dev/v1`)
17
- * @param includeBasinHeader Include the `S2-Basin` header with the request
17
+ * @param options Configuration for the basin-scoped client
18
18
  */
19
19
  constructor(name, options) {
20
20
  this.name = name;
21
+ this.retryConfig = options.retryConfig;
21
22
  this.transportConfig = {
22
23
  baseUrl: options.baseUrl,
23
24
  accessToken: options.accessToken,
25
+ basinName: options.includeBasinHeader ? name : undefined,
26
+ retry: options.retryConfig,
24
27
  };
28
+ const headers = {};
29
+ if (options.includeBasinHeader) {
30
+ headers["s2-basin"] = name;
31
+ }
32
+ if (canSetUserAgentHeader()) {
33
+ headers["user-agent"] = DEFAULT_USER_AGENT;
34
+ }
25
35
  this.client = createClient(createConfig({
26
36
  baseUrl: options.baseUrl,
27
37
  auth: () => Redacted.value(this.transportConfig.accessToken),
28
- headers: options.includeBasinHeader ? { "s2-basin": name } : {},
38
+ headers: headers,
29
39
  }));
30
- this.streams = new S2Streams(this.client);
40
+ this.streams = new S2Streams(this.client, this.retryConfig);
31
41
  }
32
42
  /**
33
43
  * Create a stream-scoped helper bound to `this` basin.
@@ -37,7 +47,7 @@ export class S2Basin {
37
47
  return new S2Stream(name, this.client, {
38
48
  ...this.transportConfig,
39
49
  forceTransport: options?.forceTransport,
40
- });
50
+ }, this.retryConfig);
41
51
  }
42
52
  }
43
53
  //# sourceMappingURL=basin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"basin.js","sourceRoot":"","sources":["../../src/basin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,OAAO,OAAO;IACF,MAAM,CAAS;IACf,eAAe,CAAkB;IAClC,IAAI,CAAS;IACb,OAAO,CAAY;IAEnC;;;;;;;;OAQG;IACH,YACC,IAAY,EACZ,OAIC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW;SAChC,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,YAAY,CACzB,YAAY,CAAC;YACZ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC;YAC5D,OAAO,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;SAC/D,CAAC,CACF,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,IAAY,EAAE,OAAuB;QAClD,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE;YACtC,GAAG,IAAI,CAAC,eAAe;YACvB,cAAc,EAAE,OAAO,EAAE,cAAc;SACvC,CAAC,CAAC;IACJ,CAAC;CACD"}
1
+ {"version":3,"file":"basin.js","sourceRoot":"","sources":["../../src/basin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EACN,qBAAqB,EACrB,kBAAkB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,OAAO,OAAO;IACF,MAAM,CAAS;IACf,eAAe,CAAkB;IACjC,WAAW,CAAe;IAC3B,IAAI,CAAS;IACb,OAAO,CAAY;IAEnC;;;;;;OAMG;IACH,YACC,IAAY,EACZ,OAKC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACxD,KAAK,EAAE,OAAO,CAAC,WAAW;SAC1B,CAAC;QACF,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAChC,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,IAAI,qBAAqB,EAAE,EAAE,CAAC;YAC7B,OAAO,CAAC,YAAY,CAAC,GAAG,kBAAkB,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,YAAY,CACzB,YAAY,CAAC;YACZ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC;YAC5D,OAAO,EAAE,OAAO;SAChB,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,IAAY,EAAE,OAAuB;QAClD,OAAO,IAAI,QAAQ,CAClB,IAAI,EACJ,IAAI,CAAC,MAAM,EACX;YACC,GAAG,IAAI,CAAC,eAAe;YACvB,cAAc,EAAE,OAAO,EAAE,cAAc;SACvC,EACD,IAAI,CAAC,WAAW,CAChB,CAAC;IACH,CAAC;CACD"}