@agentuity/storage 3.0.0-alpha.7 → 3.0.0-beta.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.
package/dist/bun.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bun.d.ts","sourceRoot":"","sources":["../src/bun.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EACX,YAAY,EAEZ,YAAY,EAMZ,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7D;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAmEjE"}
1
+ {"version":3,"file":"bun.d.ts","sourceRoot":"","sources":["../src/bun.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EACX,YAAY,EAEZ,YAAY,EAMZ,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7D;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAmFjE"}
package/dist/bun.js CHANGED
@@ -32,8 +32,17 @@ export function createS3Client(bucket) {
32
32
  });
33
33
  return {
34
34
  async list(opts) {
35
- // `Bun.S3Client.list` accepts `null` for "no filter".
36
- const out = (await client.list(opts ?? null));
35
+ // `Bun.S3Client.list` accepts `null` for "no filter". Translate
36
+ // our camelCase shape (continuationToken, maxKeys) to Bun's
37
+ // expected option keys.
38
+ const bunOpts = opts
39
+ ? {
40
+ prefix: opts.prefix,
41
+ maxKeys: opts.maxKeys,
42
+ continuationToken: opts.continuationToken,
43
+ }
44
+ : null;
45
+ const out = (await client.list(bunOpts));
37
46
  return {
38
47
  contents: (out.contents ?? []).map((o) => ({
39
48
  key: o.key,
@@ -42,6 +51,7 @@ export function createS3Client(bucket) {
42
51
  etag: o.etag,
43
52
  })),
44
53
  isTruncated: out.isTruncated ?? false,
54
+ nextContinuationToken: out.nextContinuationToken,
45
55
  };
46
56
  },
47
57
  async stat(key) {
@@ -57,6 +67,11 @@ export function createS3Client(bucket) {
57
67
  file(key) {
58
68
  const f = client.file(key);
59
69
  return {
70
+ // Bun's S3File exposes `type` as a getter that the underlying
71
+ // client populates as it sees fit. Forward it directly.
72
+ get type() {
73
+ return f.type;
74
+ },
60
75
  arrayBuffer: () => f.arrayBuffer(),
61
76
  text: () => f.text(),
62
77
  stream: () => f.stream(),
package/dist/bun.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bun.js","sourceRoot":"","sources":["../src/bun.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAc/B;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,MAAoB;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAClD,CAAC,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,WAAW,MAAM,CAAC,QAAQ,EAAE,CAAC;IAEhC,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC;QAC3B,QAAQ;QACR,WAAW,EAAE,MAAM,CAAC,UAAU;QAC9B,eAAe,EAAE,MAAM,CAAC,UAAU;QAClC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM;QAC/B,kBAAkB,EAAE,IAAI;KACxB,CAAC,CAAC;IAEH,OAAO;QACN,KAAK,CAAC,IAAI,CAAC,IAA2B;YACrC,sDAAsD;YACtD,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,IAAK,IAAY,CAAC,CAQpD,CAAC;YACF,OAAO;gBACN,QAAQ,EAAE,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC1C,GAAG,EAAE,CAAC,CAAC,GAAG;oBACV,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;oBACjB,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC;oBAChD,IAAI,EAAE,CAAC,CAAC,IAAI;iBACZ,CAAC,CAAC;gBACH,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,KAAK;aACrC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,GAAW;YACrB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO;gBACN,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC;gBACnB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,YAAY,EAAE,GAAG,CAAC,YAAY;gBAC9B,iEAAiE;gBACjE,IAAI,EAAG,GAAW,CAAC,IAAI,IAAK,GAAW,CAAC,IAAI;aAC5C,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAW;YACf,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,OAAO;gBACN,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE;gBAClC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;gBACpB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,EAAgC;aACtD,CAAC;QACH,CAAC;QAED,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,IAAY,EAAE,IAAqB;YAC3D,gEAAgE;YAChE,+DAA+D;YAC/D,8DAA8D;YAC9D,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAW,EAAE,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,GAAW;YACvB,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;KACD,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAgC;IAC3D,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"bun.js","sourceRoot":"","sources":["../src/bun.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAKH,OAAO,KAAK,EACX,YAAY,EAEZ,YAAY,EAMZ,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B7D,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CA2IjE"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAKH,OAAO,KAAK,EACX,YAAY,EAEZ,YAAY,EAMZ,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B7D,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAsJjE"}
package/dist/node.js CHANGED
@@ -82,6 +82,7 @@ export function createS3Client(bucket) {
82
82
  Bucket: state.bucketLabel,
83
83
  Prefix: opts?.prefix,
84
84
  MaxKeys: opts?.maxKeys,
85
+ ContinuationToken: opts?.continuationToken,
85
86
  }));
86
87
  return {
87
88
  contents: (out.Contents ?? []).map((o) => ({
@@ -91,6 +92,7 @@ export function createS3Client(bucket) {
91
92
  etag: o.ETag,
92
93
  })),
93
94
  isTruncated: out.IsTruncated ?? false,
95
+ nextContinuationToken: out.NextContinuationToken,
94
96
  };
95
97
  },
96
98
  async stat(key) {
@@ -105,11 +107,20 @@ export function createS3Client(bucket) {
105
107
  };
106
108
  },
107
109
  file(key) {
110
+ // Mutable holder for the most recently observed Content-Type.
111
+ // Populated by the first arrayBuffer/text/stream call; matches
112
+ // the contract documented on S3FileLike.type.
113
+ const meta = {};
108
114
  return {
115
+ get type() {
116
+ return meta.type;
117
+ },
109
118
  async arrayBuffer() {
110
119
  const sdk = await loadSdk();
111
120
  const client = await getClient();
112
121
  const out = await client.send(new sdk.GetObjectCommand({ Bucket: state.bucketLabel, Key: key }));
122
+ if (out.ContentType)
123
+ meta.type = out.ContentType;
113
124
  return readBodyAsArrayBuffer(out.Body);
114
125
  },
115
126
  async text() {
@@ -130,6 +141,8 @@ export function createS3Client(bucket) {
130
141
  Bucket: state.bucketLabel,
131
142
  Key: key,
132
143
  }));
144
+ if (out.ContentType)
145
+ meta.type = out.ContentType;
133
146
  inner = bodyToWebStream(out.Body);
134
147
  reader = inner.getReader();
135
148
  }
package/dist/node.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -27,6 +27,12 @@ export interface S3ListOptions {
27
27
  prefix?: string;
28
28
  /** Maximum number of objects to return in this response. */
29
29
  maxKeys?: number;
30
+ /**
31
+ * Pagination token. If the previous `list()` call returned an
32
+ * `S3ListResult` with `isTruncated: true`, pass its
33
+ * `nextContinuationToken` here to fetch the next page.
34
+ */
35
+ continuationToken?: string;
30
36
  }
31
37
  /** A single object entry in a list result. */
32
38
  export interface S3Object {
@@ -43,6 +49,11 @@ export interface S3Object {
43
49
  export interface S3ListResult {
44
50
  contents: S3Object[];
45
51
  isTruncated: boolean;
52
+ /**
53
+ * Token to pass as `continuationToken` on the next `list()` call to
54
+ * fetch the next page. Undefined when `isTruncated` is `false`.
55
+ */
56
+ nextContinuationToken?: string;
46
57
  }
47
58
  /** Result of a `stat()` (HEAD) call. */
48
59
  export interface S3StatResult {
@@ -67,6 +78,15 @@ export interface S3WriteOptions {
67
78
  export type S3Body = string | Uint8Array | ArrayBuffer | Blob | ReadableStream<Uint8Array>;
68
79
  /** A handle to an object on the server. Returned by `client.file(key)`. */
69
80
  export interface S3FileLike {
81
+ /**
82
+ * Content-Type of the object, when known.
83
+ *
84
+ * Bun's S3File populates this lazily via the underlying client; the
85
+ * Node backend captures it from the most recent `arrayBuffer()`,
86
+ * `text()`, or `stream()` call. May be `undefined` until one of
87
+ * those methods has been called at least once.
88
+ */
89
+ readonly type: string | undefined;
70
90
  /** Read the entire object into memory as an `ArrayBuffer`. */
71
91
  arrayBuffer(): Promise<ArrayBuffer>;
72
92
  /** Read the entire object as UTF-8 text. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uCAAuC;AACvC,MAAM,WAAW,YAAY;IAC5B;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,4BAA4B;AAC5B,MAAM,WAAW,aAAa;IAC7B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,8CAA8C;AAC9C,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC5B,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;CACrB;AAED,wCAAwC;AACxC,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,6BAA6B;AAC7B,MAAM,WAAW,cAAc;IAC9B,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;AAE3F,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IAC1B,8DAA8D;IAC9D,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACpC,4CAA4C;IAC5C,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,sDAAsD;IACtD,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC5B;;;OAGG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACzD,kCAAkC;IAClC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACzC,qDAAqD;IACrD,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAC9B;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzE,wEAAwE;IACxE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,uCAAuC;AACvC,MAAM,WAAW,YAAY;IAC5B;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,4BAA4B;AAC5B,MAAM,WAAW,aAAa;IAC7B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,8CAA8C;AAC9C,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC5B,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wCAAwC;AACxC,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,6BAA6B;AAC7B,MAAM,WAAW,cAAc;IAC9B,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;GAMG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;AAE3F,2EAA2E;AAC3E,MAAM,WAAW,UAAU;IAC1B;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,8DAA8D;IAC9D,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACpC,4CAA4C;IAC5C,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,sDAAsD;IACtD,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC5B;;;OAGG;IACH,IAAI,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACzD,kCAAkC;IAClC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACzC,qDAAqD;IACrD,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAC9B;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzE,wEAAwE;IACxE,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentuity/storage",
3
- "version": "3.0.0-alpha.7",
3
+ "version": "3.0.0-beta.1",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Agentuity employees and contributors",
6
6
  "description": "Dual-runtime S3 client for Agentuity storage buckets. Bun backend uses Bun.S3Client; Node backend uses @aws-sdk/client-s3.",
@@ -52,7 +52,6 @@
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/bun": "latest",
55
- "bun-types": "latest",
56
55
  "typescript": "^5.9.0"
57
56
  },
58
57
  "publishConfig": {
package/src/bun.ts CHANGED
@@ -48,8 +48,17 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
48
48
 
49
49
  return {
50
50
  async list(opts?: S3ListOptions | null): Promise<S3ListResult> {
51
- // `Bun.S3Client.list` accepts `null` for "no filter".
52
- const out = (await client.list(opts ?? (null as any))) as {
51
+ // `Bun.S3Client.list` accepts `null` for "no filter". Translate
52
+ // our camelCase shape (continuationToken, maxKeys) to Bun's
53
+ // expected option keys.
54
+ const bunOpts = opts
55
+ ? {
56
+ prefix: opts.prefix,
57
+ maxKeys: opts.maxKeys,
58
+ continuationToken: opts.continuationToken,
59
+ }
60
+ : (null as any);
61
+ const out = (await client.list(bunOpts)) as {
53
62
  contents?: Array<{
54
63
  key: string;
55
64
  size?: number;
@@ -57,6 +66,7 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
57
66
  etag?: string;
58
67
  }>;
59
68
  isTruncated?: boolean;
69
+ nextContinuationToken?: string;
60
70
  };
61
71
  return {
62
72
  contents: (out.contents ?? []).map((o) => ({
@@ -66,6 +76,7 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
66
76
  etag: o.etag,
67
77
  })),
68
78
  isTruncated: out.isTruncated ?? false,
79
+ nextContinuationToken: out.nextContinuationToken,
69
80
  };
70
81
  },
71
82
 
@@ -83,6 +94,11 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
83
94
  file(key: string): S3FileLike {
84
95
  const f = client.file(key);
85
96
  return {
97
+ // Bun's S3File exposes `type` as a getter that the underlying
98
+ // client populates as it sees fit. Forward it directly.
99
+ get type(): string | undefined {
100
+ return (f as { type?: string }).type;
101
+ },
86
102
  arrayBuffer: () => f.arrayBuffer(),
87
103
  text: () => f.text(),
88
104
  stream: () => f.stream() as ReadableStream<Uint8Array>,
package/src/node.ts CHANGED
@@ -117,6 +117,7 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
117
117
  Bucket: state.bucketLabel,
118
118
  Prefix: opts?.prefix,
119
119
  MaxKeys: opts?.maxKeys,
120
+ ContinuationToken: opts?.continuationToken,
120
121
  })
121
122
  );
122
123
  return {
@@ -127,6 +128,7 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
127
128
  etag: o.ETag,
128
129
  })),
129
130
  isTruncated: out.IsTruncated ?? false,
131
+ nextContinuationToken: out.NextContinuationToken,
130
132
  };
131
133
  },
132
134
 
@@ -145,13 +147,21 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
145
147
  },
146
148
 
147
149
  file(key: string): S3FileLike {
150
+ // Mutable holder for the most recently observed Content-Type.
151
+ // Populated by the first arrayBuffer/text/stream call; matches
152
+ // the contract documented on S3FileLike.type.
153
+ const meta: { type?: string } = {};
148
154
  return {
155
+ get type(): string | undefined {
156
+ return meta.type;
157
+ },
149
158
  async arrayBuffer(): Promise<ArrayBuffer> {
150
159
  const sdk = await loadSdk();
151
160
  const client = await getClient();
152
161
  const out = await client.send(
153
162
  new sdk.GetObjectCommand({ Bucket: state.bucketLabel, Key: key })
154
163
  );
164
+ if (out.ContentType) meta.type = out.ContentType;
155
165
  return readBodyAsArrayBuffer(out.Body);
156
166
  },
157
167
  async text(): Promise<string> {
@@ -174,6 +184,7 @@ export function createS3Client(bucket: BucketConfig): S3ClientLike {
174
184
  Key: key,
175
185
  })
176
186
  );
187
+ if (out.ContentType) meta.type = out.ContentType;
177
188
  inner = bodyToWebStream(out.Body);
178
189
  reader = inner.getReader() as ReadableStreamDefaultReader<Uint8Array>;
179
190
  }
package/src/types.ts CHANGED
@@ -29,6 +29,12 @@ export interface S3ListOptions {
29
29
  prefix?: string;
30
30
  /** Maximum number of objects to return in this response. */
31
31
  maxKeys?: number;
32
+ /**
33
+ * Pagination token. If the previous `list()` call returned an
34
+ * `S3ListResult` with `isTruncated: true`, pass its
35
+ * `nextContinuationToken` here to fetch the next page.
36
+ */
37
+ continuationToken?: string;
32
38
  }
33
39
 
34
40
  /** A single object entry in a list result. */
@@ -47,6 +53,11 @@ export interface S3Object {
47
53
  export interface S3ListResult {
48
54
  contents: S3Object[];
49
55
  isTruncated: boolean;
56
+ /**
57
+ * Token to pass as `continuationToken` on the next `list()` call to
58
+ * fetch the next page. Undefined when `isTruncated` is `false`.
59
+ */
60
+ nextContinuationToken?: string;
50
61
  }
51
62
 
52
63
  /** Result of a `stat()` (HEAD) call. */
@@ -75,6 +86,15 @@ export type S3Body = string | Uint8Array | ArrayBuffer | Blob | ReadableStream<U
75
86
 
76
87
  /** A handle to an object on the server. Returned by `client.file(key)`. */
77
88
  export interface S3FileLike {
89
+ /**
90
+ * Content-Type of the object, when known.
91
+ *
92
+ * Bun's S3File populates this lazily via the underlying client; the
93
+ * Node backend captures it from the most recent `arrayBuffer()`,
94
+ * `text()`, or `stream()` call. May be `undefined` until one of
95
+ * those methods has been called at least once.
96
+ */
97
+ readonly type: string | undefined;
78
98
  /** Read the entire object into memory as an `ArrayBuffer`. */
79
99
  arrayBuffer(): Promise<ArrayBuffer>;
80
100
  /** Read the entire object as UTF-8 text. */