fauxqs 1.0.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/s3/actions/deleteObjects.d.ts.map +1 -1
- package/dist/s3/actions/deleteObjects.js +11 -3
- package/dist/s3/actions/deleteObjects.js.map +1 -1
- package/dist/s3/actions/getObject.d.ts.map +1 -1
- package/dist/s3/actions/getObject.js +3 -0
- package/dist/s3/actions/getObject.js.map +1 -1
- package/dist/s3/actions/headObject.d.ts.map +1 -1
- package/dist/s3/actions/headObject.js +3 -0
- package/dist/s3/actions/headObject.js.map +1 -1
- package/dist/s3/actions/listObjects.d.ts.map +1 -1
- package/dist/s3/actions/listObjects.js +102 -10
- package/dist/s3/actions/listObjects.js.map +1 -1
- package/dist/s3/actions/putObject.d.ts.map +1 -1
- package/dist/s3/actions/putObject.js +38 -1
- package/dist/s3/actions/putObject.js.map +1 -1
- package/dist/s3/s3Store.d.ts +12 -2
- package/dist/s3/s3Store.d.ts.map +1 -1
- package/dist/s3/s3Store.js +48 -5
- package/dist/s3/s3Store.js.map +1 -1
- package/dist/s3/s3Types.d.ts +1 -0
- package/dist/s3/s3Types.d.ts.map +1 -1
- package/dist/sns/actions/publish.d.ts.map +1 -1
- package/dist/sns/actions/publish.js +3 -17
- package/dist/sns/actions/publish.js.map +1 -1
- package/dist/sns/actions/setSubscriptionAttributes.d.ts.map +1 -1
- package/dist/sns/actions/setSubscriptionAttributes.js +11 -0
- package/dist/sns/actions/setSubscriptionAttributes.js.map +1 -1
- package/dist/sns/filter.d.ts +5 -0
- package/dist/sns/filter.d.ts.map +1 -1
- package/dist/sns/filter.js +99 -15
- package/dist/sns/filter.js.map +1 -1
- package/dist/sns/snsStore.d.ts.map +1 -1
- package/dist/sns/snsStore.js +8 -0
- package/dist/sns/snsStore.js.map +1 -1
- package/dist/sqs/actions/createQueue.d.ts.map +1 -1
- package/dist/sqs/actions/createQueue.js +3 -1
- package/dist/sqs/actions/createQueue.js.map +1 -1
- package/dist/sqs/actions/receiveMessage.d.ts.map +1 -1
- package/dist/sqs/actions/receiveMessage.js +3 -0
- package/dist/sqs/actions/receiveMessage.js.map +1 -1
- package/dist/sqs/actions/sendMessageBatch.d.ts.map +1 -1
- package/dist/sqs/actions/sendMessageBatch.js +14 -2
- package/dist/sqs/actions/sendMessageBatch.js.map +1 -1
- package/dist/sqs/actions/setQueueAttributes.d.ts.map +1 -1
- package/dist/sqs/actions/setQueueAttributes.js +3 -1
- package/dist/sqs/actions/setQueueAttributes.js.map +1 -1
- package/dist/sqs/sqsTypes.d.ts +5 -0
- package/dist/sqs/sqsTypes.d.ts.map +1 -1
- package/dist/sqs/sqsTypes.js +21 -0
- package/dist/sqs/sqsTypes.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteObjects.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/deleteObjects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"deleteObjects.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/deleteObjects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAW7C,wBAAgB,aAAa,CAC3B,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACvD,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CA+BN"}
|
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
import { escapeXml } from "../../common/xml.js";
|
|
2
|
+
function unescapeXml(str) {
|
|
3
|
+
return str
|
|
4
|
+
.replace(/&/g, "&")
|
|
5
|
+
.replace(/</g, "<")
|
|
6
|
+
.replace(/>/g, ">")
|
|
7
|
+
.replace(/"/g, '"')
|
|
8
|
+
.replace(/'/g, "'");
|
|
9
|
+
}
|
|
2
10
|
export function deleteObjects(request, reply, store) {
|
|
3
11
|
const bucket = request.params.bucket;
|
|
4
12
|
const body = Buffer.isBuffer(request.body)
|
|
5
13
|
? request.body.toString("utf-8")
|
|
6
14
|
: request.body;
|
|
7
|
-
// Parse <Key> elements from XML body
|
|
15
|
+
// Parse <Key> elements from XML body with proper entity unescaping
|
|
8
16
|
const keys = [];
|
|
9
|
-
const keyRegex = /<Key>([
|
|
17
|
+
const keyRegex = /<Key>([\s\S]*?)<\/Key>/g;
|
|
10
18
|
let match;
|
|
11
19
|
while ((match = keyRegex.exec(body)) !== null) {
|
|
12
|
-
keys.push(match[1]);
|
|
20
|
+
keys.push(unescapeXml(match[1]));
|
|
13
21
|
}
|
|
14
22
|
const deleted = store.deleteObjects(bucket, keys);
|
|
15
23
|
const deletedXml = deleted
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteObjects.js","sourceRoot":"","sources":["../../../src/s3/actions/deleteObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,MAAM,UAAU,aAAa,CAC3B,OAAuD,EACvD,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QACxC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAChC,CAAC,CAAE,OAAO,CAAC,IAAe,CAAC;IAE7B,
|
|
1
|
+
{"version":3,"file":"deleteObjects.js","sourceRoot":"","sources":["../../../src/s3/actions/deleteObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,GAAG;SACP,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC;SACrB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;SACvB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,OAAuD,EACvD,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;QACxC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAChC,CAAC,CAAE,OAAO,CAAC,IAAe,CAAC;IAE7B,mEAAmE;IACnE,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,yBAAyB,CAAC;IAC3C,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAElD,MAAM,UAAU,GAAG,OAAO;SACvB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAAiB,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC;SAC/D,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElB,MAAM,GAAG,GAAG;QACV,wCAAwC;QACxC,gEAAgE;QAChE,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE;QACnC,iBAAiB;KAClB;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAChD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/getObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,SAAS,CACvB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"getObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/getObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,SAAS,CACvB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CAcN"}
|
|
@@ -6,6 +6,9 @@ export function getObject(request, reply, store) {
|
|
|
6
6
|
reply.header("content-length", obj.contentLength);
|
|
7
7
|
reply.header("etag", obj.etag);
|
|
8
8
|
reply.header("last-modified", obj.lastModified.toUTCString());
|
|
9
|
+
for (const [metaKey, metaValue] of Object.entries(obj.metadata)) {
|
|
10
|
+
reply.header(`x-amz-meta-${metaKey}`, metaValue);
|
|
11
|
+
}
|
|
9
12
|
reply.status(200).send(obj.body);
|
|
10
13
|
}
|
|
11
14
|
//# sourceMappingURL=getObject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getObject.js","sourceRoot":"","sources":["../../../src/s3/actions/getObject.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,SAAS,CACvB,OAAoE,EACpE,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"getObject.js","sourceRoot":"","sources":["../../../src/s3/actions/getObject.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,SAAS,CACvB,OAAoE,EACpE,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEzC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChE,KAAK,CAAC,MAAM,CAAC,cAAc,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/headObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,UAAU,CACxB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"headObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/headObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,UAAU,CACxB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CAcN"}
|
|
@@ -6,6 +6,9 @@ export function headObject(request, reply, store) {
|
|
|
6
6
|
reply.header("content-length", obj.contentLength);
|
|
7
7
|
reply.header("etag", obj.etag);
|
|
8
8
|
reply.header("last-modified", obj.lastModified.toUTCString());
|
|
9
|
+
for (const [metaKey, metaValue] of Object.entries(obj.metadata)) {
|
|
10
|
+
reply.header(`x-amz-meta-${metaKey}`, metaValue);
|
|
11
|
+
}
|
|
9
12
|
reply.status(200).send();
|
|
10
13
|
}
|
|
11
14
|
//# sourceMappingURL=headObject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headObject.js","sourceRoot":"","sources":["../../../src/s3/actions/headObject.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CACxB,OAAoE,EACpE,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE1C,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"headObject.js","sourceRoot":"","sources":["../../../src/s3/actions/headObject.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,UAAU,CACxB,OAAoE,EACpE,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE1C,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9D,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChE,KAAK,CAAC,MAAM,CAAC,cAAc,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listObjects.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/listObjects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,WAAW,CACzB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACvD,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,
|
|
1
|
+
{"version":3,"file":"listObjects.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/listObjects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,WAAW,CACzB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACvD,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CAeN"}
|
|
@@ -1,26 +1,118 @@
|
|
|
1
1
|
import { escapeXml } from "../../common/xml.js";
|
|
2
2
|
export function listObjects(request, reply, store) {
|
|
3
3
|
const bucket = request.params.bucket;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const query = (request.query ?? {});
|
|
5
|
+
const listType = query["list-type"];
|
|
6
|
+
const prefix = query["prefix"] ?? "";
|
|
7
|
+
const delimiter = query["delimiter"];
|
|
8
|
+
const maxKeysStr = query["max-keys"];
|
|
9
|
+
const maxKeys = maxKeysStr ? parseInt(maxKeysStr, 10) : 1000;
|
|
10
|
+
if (listType === "2") {
|
|
11
|
+
listObjectsV2(bucket, prefix, delimiter, maxKeys, query, reply, store);
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
listObjectsV1(bucket, prefix, delimiter, maxKeys, query, reply, store);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
function listObjectsV1(bucket, prefix, delimiter, maxKeys, query, reply, store) {
|
|
18
|
+
const marker = query["marker"] ?? "";
|
|
19
|
+
const { objects, commonPrefixes, isTruncated } = store.listObjects(bucket, {
|
|
20
|
+
prefix,
|
|
21
|
+
delimiter,
|
|
22
|
+
maxKeys,
|
|
23
|
+
marker,
|
|
24
|
+
});
|
|
25
|
+
const contentsXml = objects
|
|
6
26
|
.map((obj) => `<Contents>` +
|
|
7
27
|
`<Key>${escapeXml(obj.key)}</Key>` +
|
|
8
28
|
`<Size>${obj.contentLength}</Size>` +
|
|
9
29
|
`<ETag>${escapeXml(obj.etag)}</ETag>` +
|
|
10
30
|
`<LastModified>${obj.lastModified.toISOString()}</LastModified>` +
|
|
31
|
+
`<StorageClass>STANDARD</StorageClass>` +
|
|
11
32
|
`</Contents>`)
|
|
12
33
|
.join("\n ");
|
|
13
|
-
const
|
|
34
|
+
const commonPrefixesXml = commonPrefixes
|
|
35
|
+
.map((p) => `<CommonPrefixes><Prefix>${escapeXml(p)}</Prefix></CommonPrefixes>`)
|
|
36
|
+
.join("\n ");
|
|
37
|
+
const nextMarker = isTruncated && objects.length > 0 ? objects[objects.length - 1].key : "";
|
|
38
|
+
const parts = [
|
|
39
|
+
`<?xml version="1.0" encoding="UTF-8"?>`,
|
|
40
|
+
`<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">`,
|
|
41
|
+
` <Name>${escapeXml(bucket)}</Name>`,
|
|
42
|
+
` <Prefix>${escapeXml(prefix)}</Prefix>`,
|
|
43
|
+
` <Marker>${escapeXml(marker)}</Marker>`,
|
|
44
|
+
` <MaxKeys>${maxKeys}</MaxKeys>`,
|
|
45
|
+
` <IsTruncated>${isTruncated}</IsTruncated>`,
|
|
46
|
+
];
|
|
47
|
+
if (isTruncated && nextMarker) {
|
|
48
|
+
parts.push(` <NextMarker>${escapeXml(nextMarker)}</NextMarker>`);
|
|
49
|
+
}
|
|
50
|
+
if (delimiter) {
|
|
51
|
+
parts.push(` <Delimiter>${escapeXml(delimiter)}</Delimiter>`);
|
|
52
|
+
}
|
|
53
|
+
if (contentsXml)
|
|
54
|
+
parts.push(` ${contentsXml}`);
|
|
55
|
+
if (commonPrefixesXml)
|
|
56
|
+
parts.push(` ${commonPrefixesXml}`);
|
|
57
|
+
parts.push(`</ListBucketResult>`);
|
|
58
|
+
reply.header("content-type", "application/xml");
|
|
59
|
+
reply.status(200).send(parts.join("\n"));
|
|
60
|
+
}
|
|
61
|
+
function listObjectsV2(bucket, prefix, delimiter, maxKeys, query, reply, store) {
|
|
62
|
+
const startAfter = query["start-after"] ?? "";
|
|
63
|
+
const continuationToken = query["continuation-token"];
|
|
64
|
+
// Use continuation-token as the start-after if provided (it encodes the last key)
|
|
65
|
+
const effectiveStartAfter = continuationToken
|
|
66
|
+
? Buffer.from(continuationToken, "base64").toString("utf-8")
|
|
67
|
+
: startAfter;
|
|
68
|
+
const { objects, commonPrefixes, isTruncated } = store.listObjects(bucket, {
|
|
69
|
+
prefix,
|
|
70
|
+
delimiter,
|
|
71
|
+
maxKeys,
|
|
72
|
+
startAfter: effectiveStartAfter,
|
|
73
|
+
});
|
|
74
|
+
const keyCount = objects.length + commonPrefixes.length;
|
|
75
|
+
const contentsXml = objects
|
|
76
|
+
.map((obj) => `<Contents>` +
|
|
77
|
+
`<Key>${escapeXml(obj.key)}</Key>` +
|
|
78
|
+
`<Size>${obj.contentLength}</Size>` +
|
|
79
|
+
`<ETag>${escapeXml(obj.etag)}</ETag>` +
|
|
80
|
+
`<LastModified>${obj.lastModified.toISOString()}</LastModified>` +
|
|
81
|
+
`<StorageClass>STANDARD</StorageClass>` +
|
|
82
|
+
`</Contents>`)
|
|
83
|
+
.join("\n ");
|
|
84
|
+
const commonPrefixesXml = commonPrefixes
|
|
85
|
+
.map((p) => `<CommonPrefixes><Prefix>${escapeXml(p)}</Prefix></CommonPrefixes>`)
|
|
86
|
+
.join("\n ");
|
|
87
|
+
const parts = [
|
|
14
88
|
`<?xml version="1.0" encoding="UTF-8"?>`,
|
|
15
89
|
`<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">`,
|
|
16
90
|
` <Name>${escapeXml(bucket)}</Name>`,
|
|
17
|
-
` <
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
91
|
+
` <Prefix>${escapeXml(prefix)}</Prefix>`,
|
|
92
|
+
` <KeyCount>${keyCount}</KeyCount>`,
|
|
93
|
+
` <MaxKeys>${maxKeys}</MaxKeys>`,
|
|
94
|
+
` <IsTruncated>${isTruncated}</IsTruncated>`,
|
|
95
|
+
];
|
|
96
|
+
if (startAfter) {
|
|
97
|
+
parts.push(` <StartAfter>${escapeXml(startAfter)}</StartAfter>`);
|
|
98
|
+
}
|
|
99
|
+
if (continuationToken) {
|
|
100
|
+
parts.push(` <ContinuationToken>${escapeXml(continuationToken)}</ContinuationToken>`);
|
|
101
|
+
}
|
|
102
|
+
if (isTruncated && objects.length > 0) {
|
|
103
|
+
const lastKey = objects[objects.length - 1].key;
|
|
104
|
+
const nextToken = Buffer.from(lastKey, "utf-8").toString("base64");
|
|
105
|
+
parts.push(` <NextContinuationToken>${escapeXml(nextToken)}</NextContinuationToken>`);
|
|
106
|
+
}
|
|
107
|
+
if (delimiter) {
|
|
108
|
+
parts.push(` <Delimiter>${escapeXml(delimiter)}</Delimiter>`);
|
|
109
|
+
}
|
|
110
|
+
if (contentsXml)
|
|
111
|
+
parts.push(` ${contentsXml}`);
|
|
112
|
+
if (commonPrefixesXml)
|
|
113
|
+
parts.push(` ${commonPrefixesXml}`);
|
|
114
|
+
parts.push(`</ListBucketResult>`);
|
|
23
115
|
reply.header("content-type", "application/xml");
|
|
24
|
-
reply.status(200).send(
|
|
116
|
+
reply.status(200).send(parts.join("\n"));
|
|
25
117
|
}
|
|
26
118
|
//# sourceMappingURL=listObjects.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listObjects.js","sourceRoot":"","sources":["../../../src/s3/actions/listObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGhD,MAAM,UAAU,WAAW,CACzB,OAAuD,EACvD,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"listObjects.js","sourceRoot":"","sources":["../../../src/s3/actions/listObjects.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"putObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/putObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"putObject.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/putObject.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAwC7C,wBAAgB,SAAS,CACvB,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CAiDN"}
|
|
@@ -21,17 +21,54 @@ function decodeAwsChunked(buf) {
|
|
|
21
21
|
}
|
|
22
22
|
return Buffer.concat(chunks);
|
|
23
23
|
}
|
|
24
|
+
function extractMetadata(headers) {
|
|
25
|
+
const metadata = {};
|
|
26
|
+
for (const [key, value] of Object.entries(headers)) {
|
|
27
|
+
if (key.toLowerCase().startsWith("x-amz-meta-") && value) {
|
|
28
|
+
const metaKey = key.toLowerCase().slice("x-amz-meta-".length);
|
|
29
|
+
metadata[metaKey] = Array.isArray(value) ? value[0] : value;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return metadata;
|
|
33
|
+
}
|
|
24
34
|
export function putObject(request, reply, store) {
|
|
25
35
|
const bucket = request.params.bucket;
|
|
26
36
|
const key = request.params["*"];
|
|
27
37
|
const contentType = request.headers["content-type"] ?? "application/octet-stream";
|
|
38
|
+
const copySource = request.headers["x-amz-copy-source"];
|
|
39
|
+
if (copySource) {
|
|
40
|
+
// CopyObject: copy from source bucket/key
|
|
41
|
+
const decoded = decodeURIComponent(copySource).replace(/^\//, "");
|
|
42
|
+
const slashIdx = decoded.indexOf("/");
|
|
43
|
+
if (slashIdx === -1) {
|
|
44
|
+
reply.status(400).send();
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const srcBucket = decoded.substring(0, slashIdx);
|
|
48
|
+
const srcKey = decoded.substring(slashIdx + 1);
|
|
49
|
+
const srcObj = store.getObject(srcBucket, srcKey);
|
|
50
|
+
const metadata = extractMetadata(request.headers);
|
|
51
|
+
const hasMetadata = Object.keys(metadata).length > 0;
|
|
52
|
+
const obj = store.putObject(bucket, key, srcObj.body, srcObj.contentType, hasMetadata ? metadata : srcObj.metadata);
|
|
53
|
+
const xml = [
|
|
54
|
+
`<?xml version="1.0" encoding="UTF-8"?>`,
|
|
55
|
+
`<CopyObjectResult>`,
|
|
56
|
+
` <ETag>${obj.etag}</ETag>`,
|
|
57
|
+
` <LastModified>${obj.lastModified.toISOString()}</LastModified>`,
|
|
58
|
+
`</CopyObjectResult>`,
|
|
59
|
+
].join("\n");
|
|
60
|
+
reply.header("content-type", "application/xml");
|
|
61
|
+
reply.status(200).send(xml);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
28
64
|
let body = Buffer.isBuffer(request.body) ? request.body : Buffer.from(request.body);
|
|
29
65
|
// Decode aws-chunked encoding if present
|
|
30
66
|
const contentEncoding = request.headers["content-encoding"];
|
|
31
67
|
if (contentEncoding && contentEncoding.includes("aws-chunked")) {
|
|
32
68
|
body = decodeAwsChunked(body);
|
|
33
69
|
}
|
|
34
|
-
const
|
|
70
|
+
const metadata = extractMetadata(request.headers);
|
|
71
|
+
const obj = store.putObject(bucket, key, body, contentType, metadata);
|
|
35
72
|
reply.header("etag", obj.etag);
|
|
36
73
|
reply.status(200).send();
|
|
37
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"putObject.js","sourceRoot":"","sources":["../../../src/s3/actions/putObject.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAC3B,sCAAsC;QACtC,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,SAAS,KAAK,CAAC,CAAC;YAAE,MAAM;QAE5B,uFAAuF;QACvF,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAEvD,IAAI,SAAS,KAAK,CAAC;YAAE,MAAM,CAAC,cAAc;QAE1C,MAAM,SAAS,GAAG,SAAS,GAAG,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC;QAC5D,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,mBAAmB;IACzD,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,SAAS,CACvB,OAAoE,EACpE,KAAmB,EACnB,KAAc;IAEd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"putObject.js","sourceRoot":"","sources":["../../../src/s3/actions/putObject.ts"],"names":[],"mappings":"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"}
|
package/dist/s3/s3Store.d.ts
CHANGED
|
@@ -4,11 +4,21 @@ export declare class S3Store {
|
|
|
4
4
|
createBucket(name: string): void;
|
|
5
5
|
deleteBucket(name: string): void;
|
|
6
6
|
hasBucket(name: string): boolean;
|
|
7
|
-
putObject(bucket: string, key: string, body: Buffer, contentType?: string): S3Object;
|
|
7
|
+
putObject(bucket: string, key: string, body: Buffer, contentType?: string, metadata?: Record<string, string>): S3Object;
|
|
8
8
|
getObject(bucket: string, key: string): S3Object;
|
|
9
9
|
deleteObject(bucket: string, key: string): void;
|
|
10
10
|
headObject(bucket: string, key: string): S3Object;
|
|
11
|
-
listObjects(bucket: string
|
|
11
|
+
listObjects(bucket: string, options?: {
|
|
12
|
+
prefix?: string;
|
|
13
|
+
delimiter?: string;
|
|
14
|
+
maxKeys?: number;
|
|
15
|
+
startAfter?: string;
|
|
16
|
+
marker?: string;
|
|
17
|
+
}): {
|
|
18
|
+
objects: S3Object[];
|
|
19
|
+
commonPrefixes: string[];
|
|
20
|
+
isTruncated: boolean;
|
|
21
|
+
};
|
|
12
22
|
deleteObjects(bucket: string, keys: string[]): string[];
|
|
13
23
|
}
|
|
14
24
|
//# sourceMappingURL=s3Store.d.ts.map
|
package/dist/s3/s3Store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3Store.d.ts","sourceRoot":"","sources":["../../src/s3/s3Store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,qBAAa,OAAO;IAClB,OAAO,CAAC,OAAO,CAA4C;IAE3D,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMhC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWhC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ;
|
|
1
|
+
{"version":3,"file":"s3Store.d.ts","sourceRoot":"","sources":["../../src/s3/s3Store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,qBAAa,OAAO;IAClB,OAAO,CAAC,OAAO,CAA4C;IAE3D,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAMhC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWhC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIhC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ;IAqBvH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAchD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAQ/C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ;IAIjD,WAAW,CACT,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GACxG;QAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE;IAwD1E,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;CAQxD"}
|
package/dist/s3/s3Store.js
CHANGED
|
@@ -20,7 +20,7 @@ export class S3Store {
|
|
|
20
20
|
hasBucket(name) {
|
|
21
21
|
return this.buckets.has(name);
|
|
22
22
|
}
|
|
23
|
-
putObject(bucket, key, body, contentType) {
|
|
23
|
+
putObject(bucket, key, body, contentType, metadata) {
|
|
24
24
|
const objects = this.buckets.get(bucket);
|
|
25
25
|
if (!objects) {
|
|
26
26
|
throw new S3Error("NoSuchBucket", `The specified bucket does not exist: ${bucket}`, 404);
|
|
@@ -33,6 +33,7 @@ export class S3Store {
|
|
|
33
33
|
contentLength: body.length,
|
|
34
34
|
etag,
|
|
35
35
|
lastModified: new Date(),
|
|
36
|
+
metadata: metadata ?? {},
|
|
36
37
|
};
|
|
37
38
|
objects.set(key, obj);
|
|
38
39
|
return obj;
|
|
@@ -58,12 +59,54 @@ export class S3Store {
|
|
|
58
59
|
headObject(bucket, key) {
|
|
59
60
|
return this.getObject(bucket, key);
|
|
60
61
|
}
|
|
61
|
-
listObjects(bucket) {
|
|
62
|
-
const
|
|
63
|
-
if (!
|
|
62
|
+
listObjects(bucket, options) {
|
|
63
|
+
const objectsMap = this.buckets.get(bucket);
|
|
64
|
+
if (!objectsMap) {
|
|
64
65
|
throw new S3Error("NoSuchBucket", `The specified bucket does not exist: ${bucket}`, 404);
|
|
65
66
|
}
|
|
66
|
-
|
|
67
|
+
const prefix = options?.prefix ?? "";
|
|
68
|
+
const delimiter = options?.delimiter;
|
|
69
|
+
const maxKeys = options?.maxKeys ?? 1000;
|
|
70
|
+
const startAfter = options?.startAfter ?? options?.marker ?? "";
|
|
71
|
+
// Get all keys sorted lexicographically
|
|
72
|
+
const allObjects = Array.from(objectsMap.values())
|
|
73
|
+
.filter((obj) => obj.key.startsWith(prefix))
|
|
74
|
+
.sort((a, b) => a.key.localeCompare(b.key));
|
|
75
|
+
const result = [];
|
|
76
|
+
const commonPrefixSet = new Set();
|
|
77
|
+
let count = 0;
|
|
78
|
+
let isTruncated = false;
|
|
79
|
+
for (const obj of allObjects) {
|
|
80
|
+
if (startAfter && obj.key <= startAfter)
|
|
81
|
+
continue;
|
|
82
|
+
if (delimiter) {
|
|
83
|
+
const rest = obj.key.slice(prefix.length);
|
|
84
|
+
const delimIdx = rest.indexOf(delimiter);
|
|
85
|
+
if (delimIdx >= 0) {
|
|
86
|
+
const commonPrefix = prefix + rest.slice(0, delimIdx + delimiter.length);
|
|
87
|
+
if (!commonPrefixSet.has(commonPrefix)) {
|
|
88
|
+
if (count >= maxKeys) {
|
|
89
|
+
isTruncated = true;
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
commonPrefixSet.add(commonPrefix);
|
|
93
|
+
count++;
|
|
94
|
+
}
|
|
95
|
+
continue;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
if (count >= maxKeys) {
|
|
99
|
+
isTruncated = true;
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
result.push(obj);
|
|
103
|
+
count++;
|
|
104
|
+
}
|
|
105
|
+
return {
|
|
106
|
+
objects: result,
|
|
107
|
+
commonPrefixes: Array.from(commonPrefixSet).sort(),
|
|
108
|
+
isTruncated,
|
|
109
|
+
};
|
|
67
110
|
}
|
|
68
111
|
deleteObjects(bucket, keys) {
|
|
69
112
|
const deleted = [];
|
package/dist/s3/s3Store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3Store.js","sourceRoot":"","sources":["../../src/s3/s3Store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,MAAM,OAAO,OAAO;IACV,OAAO,GAAG,IAAI,GAAG,EAAiC,CAAC;IAE3D,YAAY,CAAC,IAAY;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,OAAO,CAAC,cAAc,EAAE,wCAAwC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QACzF,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,OAAO,CAAC,gBAAgB,EAAE,8CAA8C,EAAE,GAAG,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,SAAS,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,CAAC,MAAc,EAAE,GAAW,EAAE,IAAY,EAAE,WAAoB;
|
|
1
|
+
{"version":3,"file":"s3Store.js","sourceRoot":"","sources":["../../src/s3/s3Store.ts"],"names":[],"mappings":"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"}
|
package/dist/s3/s3Types.d.ts
CHANGED
package/dist/s3/s3Types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3Types.d.ts","sourceRoot":"","sources":["../../src/s3/s3Types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"s3Types.d.ts","sourceRoot":"","sources":["../../src/s3/s3Types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,IAAI,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/sns/actions/publish.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAMtD,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACjB,MAAM,
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/sns/actions/publish.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAMtD,wBAAgB,OAAO,CACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CAsIR;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACjB,MAAM,CA8HR"}
|
|
@@ -3,7 +3,7 @@ import { SnsError } from "../../common/errors.js";
|
|
|
3
3
|
import { snsSuccessResponse } from "../../common/xml.js";
|
|
4
4
|
import { SqsStore as SqsStoreClass } from "../../sqs/sqsStore.js";
|
|
5
5
|
import { SNS_MAX_MESSAGE_SIZE_BYTES } from "../../sqs/sqsTypes.js";
|
|
6
|
-
import { matchesFilterPolicy,
|
|
6
|
+
import { matchesFilterPolicy, matchesFilterPolicyOnBody } from "../filter.js";
|
|
7
7
|
export function publish(params, snsStore, sqsStore) {
|
|
8
8
|
const topicArn = params.TopicArn;
|
|
9
9
|
if (!topicArn) {
|
|
@@ -43,9 +43,6 @@ export function publish(params, snsStore, sqsStore) {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
// Pre-parse body for MessageBody-scoped filter policies (done once, not per subscription)
|
|
47
|
-
let parsedBodyAttrs;
|
|
48
|
-
let bodyAttrsParsed = false;
|
|
49
46
|
// Pre-build envelope template for non-raw subscriptions (stringify once, not per subscription)
|
|
50
47
|
const UNSUB_PLACEHOLDER = "__UNSUB_ARN_PLACEHOLDER__";
|
|
51
48
|
const envelopeTemplate = JSON.stringify({
|
|
@@ -74,11 +71,7 @@ export function publish(params, snsStore, sqsStore) {
|
|
|
74
71
|
const filterPolicy = JSON.parse(sub.attributes.FilterPolicy);
|
|
75
72
|
const scope = sub.attributes.FilterPolicyScope ?? "MessageAttributes";
|
|
76
73
|
if (scope === "MessageBody") {
|
|
77
|
-
if (!
|
|
78
|
-
parsedBodyAttrs = parseBodyAsAttributes(message);
|
|
79
|
-
bodyAttrsParsed = true;
|
|
80
|
-
}
|
|
81
|
-
if (!parsedBodyAttrs || !matchesFilterPolicy(filterPolicy, parsedBodyAttrs))
|
|
74
|
+
if (!matchesFilterPolicyOnBody(filterPolicy, message))
|
|
82
75
|
continue;
|
|
83
76
|
}
|
|
84
77
|
else {
|
|
@@ -156,9 +149,6 @@ export function publishBatch(params, snsStore, sqsStore) {
|
|
|
156
149
|
}
|
|
157
150
|
}
|
|
158
151
|
const messageId = randomUUID();
|
|
159
|
-
// Pre-parse body for MessageBody-scoped filter policies (done once per entry)
|
|
160
|
-
let parsedBodyAttrs;
|
|
161
|
-
let bodyAttrsParsed = false;
|
|
162
152
|
// Fan out each entry
|
|
163
153
|
for (const subArn of topic.subscriptionArns) {
|
|
164
154
|
const sub = snsStore.getSubscription(subArn);
|
|
@@ -170,11 +160,7 @@ export function publishBatch(params, snsStore, sqsStore) {
|
|
|
170
160
|
const filterPolicy = JSON.parse(sub.attributes.FilterPolicy);
|
|
171
161
|
const scope = sub.attributes.FilterPolicyScope ?? "MessageAttributes";
|
|
172
162
|
if (scope === "MessageBody") {
|
|
173
|
-
if (!
|
|
174
|
-
parsedBodyAttrs = parseBodyAsAttributes(entry.message);
|
|
175
|
-
bodyAttrsParsed = true;
|
|
176
|
-
}
|
|
177
|
-
if (!parsedBodyAttrs || !matchesFilterPolicy(filterPolicy, parsedBodyAttrs))
|
|
163
|
+
if (!matchesFilterPolicyOnBody(filterPolicy, entry.message))
|
|
178
164
|
continue;
|
|
179
165
|
}
|
|
180
166
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/sns/actions/publish.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,UAAU,OAAO,CACrB,MAA8B,EAC9B,QAAkB,EAClB,QAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,0BAA0B,EAAE,CAAC;QACpE,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,qEAAqE,0BAA0B,SAAS,CACzG,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAE/B,2BAA2B;IAC3B,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAEzD,sBAAsB;IACtB,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,KAAK,MAAM,CAAC;IAC1D,IAAI,cAAkC,CAAC;IACvC,IAAI,sBAA0C,CAAC;IAE/C,IAAI,WAAW,EAAE,CAAC;QAChB,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,8EAA8E,CAC/E,CAAC;QACJ,CAAC;QAED,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QACvD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,yBAAyB,KAAK,MAAM,EAAE,CAAC;gBAC1D,sBAAsB,GAAG,aAAa,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,kIAAkI,CACnI,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,0FAA0F;IAC1F,IAAI,eAAkE,CAAC;IACvE,IAAI,eAAe,GAAG,KAAK,CAAC;IAE5B,+FAA+F;IAC/F,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;QACtC,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,OAAO,IAAI,IAAI;QACxB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,gBAAgB,EAAE,GAAG;QACrB,SAAS,EAAE,SAAS;QACpB,cAAc,EACZ,0FAA0F;QAC5F,cAAc,EAAE,iBAAiB;QACjC,iBAAiB,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;KAC/D,CAAC,CAAC;IAEH,2BAA2B;IAC3B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS;YAAE,SAAS;QACrC,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK;YAAE,SAAS;QAErC,sBAAsB;QACtB,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;gBAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,iBAAiB,IAAI,mBAAmB,CAAC;gBAEtE,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;oBAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;wBACjD,eAAe,GAAG,IAAI,CAAC;oBACzB,CAAC;oBACD,IAAI,CAAC,eAAe,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,eAAe,CAAC;wBAAE,SAAS;gBACxF,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,iBAAiB,CAAC;wBAAE,SAAS;gBACtE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK;YAAE,SAAS;QAErB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB,KAAK,MAAM,CAAC;QAE3D,IAAI,OAAe,CAAC;QACpB,IAAI,aAAa,GAA0C,EAAE,CAAC;QAE9D,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,GAAG,OAAO,CAAC;YAClB,aAAa,GAAG,iBAAiB,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,kFAAkF;YAClF,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAChC,iBAAiB,EACjB,2EAA2E,GAAG,CAAC,GAAG,EAAE,CACrF,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CACxC,OAAO,EACP,aAAa,EACb,SAAS,EACT,cAAc,EACd,sBAAsB,CACvB,CAAC;QAEF,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,sBAAsB,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,KAAK,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;YACrE,IAAI,WAAW,CAAC,WAAW;gBAAE,SAAS;YACtC,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;YACnD,KAAK,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,kBAAkB,CAAC,SAAS,EAAE,cAAc,SAAS,cAAc,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,MAA8B,EAC9B,QAAkB,EAClB,QAAkB;IAElB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,iDAAiD;IACjD,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,KAAK,MAAM,CAAC;IAE1D,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,0BAA0B,EAAE,CAAC;YAC1E,SAAS,CAAC,IAAI,CACZ,eAAe,KAAK,CAAC,EAAE,+GAA+G,CACvI,CAAC;YACF,SAAS;QACX,CAAC;QAED,IAAI,cAAkC,CAAC;QACvC,IAAI,sBAA0C,CAAC;QAE/C,IAAI,WAAW,EAAE,CAAC;YAChB,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;YACtC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,SAAS,CAAC,IAAI,CACZ,eAAe,KAAK,CAAC,EAAE,wJAAwJ,CAChL,CAAC;gBACF,SAAS;YACX,CAAC;YAED,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,CAAC;YACtD,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,UAAU,CAAC,yBAAyB,KAAK,MAAM,EAAE,CAAC;oBAC1D,sBAAsB,GAAG,aAAa,CAAC,2BAA2B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpF,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CACZ,eAAe,KAAK,CAAC,EAAE,4MAA4M,CACpO,CAAC;oBACF,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;QAE/B,8EAA8E;QAC9E,IAAI,eAAkE,CAAC;QACvE,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,qBAAqB;QACrB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,KAAK;gBAAE,SAAS;YAE/D,sBAAsB;YACtB,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;oBAC7D,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,iBAAiB,IAAI,mBAAmB,CAAC;oBAEtE,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;wBAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;4BACrB,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BACvD,eAAe,GAAG,IAAI,CAAC;wBACzB,CAAC;wBACD,IAAI,CAAC,eAAe,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,eAAe,CAAC;4BAAE,SAAS;oBACxF,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAC;4BAAE,SAAS;oBAC5E,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,wCAAwC;gBAC1C,CAAC;YACH,CAAC;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,kBAAkB,KAAK,MAAM,CAAC;YAC3D,IAAI,OAAe,CAAC;YACpB,IAAI,aAAa,GAA0C,EAAE,CAAC;YAE9D,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBACxB,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;oBACvB,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,SAAS;oBACpB,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;oBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,gBAAgB,EAAE,GAAG;oBACrB,SAAS,EAAE,SAAS;oBACpB,cAAc,EACZ,0FAA0F;oBAC5F,cAAc,EAAE,2EAA2E,GAAG,CAAC,GAAG,EAAE;oBACpG,iBAAiB,EAAE,wBAAwB,CAAC,KAAK,CAAC,iBAAiB,CAAC;iBACrE,CAAC,CAAC;YACL,CAAC;YAED,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CACxC,OAAO,EACP,aAAa,EACb,SAAS,EACT,cAAc,EACd,sBAAsB,CACvB,CAAC;YAEF,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,sBAAsB,EAAE,CAAC;gBAC7C,MAAM,WAAW,GAAG,KAAK,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;gBACrE,IAAI,WAAW,CAAC,WAAW;oBAAE,SAAS;gBACtC,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;gBACnD,KAAK,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YACtE,CAAC;YAED,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QAED,aAAa,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,EAAE,mBAAmB,SAAS,uBAAuB,CAAC,CAAC;IACjG,CAAC;IAED,OAAO,kBAAkB,CACvB,cAAc,EACd,eAAe,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,wBAAwB,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAC3F,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAA8B;IAE9B,MAAM,MAAM,GAA0C,EAAE,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC9D,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,2BAA2B,GAAG,OAAO,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,GAAG,iBAAiB,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,MAAM,CAAC,2BAA2B,GAAG,oBAAoB,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,MAAM,CAAC,2BAA2B,GAAG,oBAAoB,CAAC,CAAC;QAE/E,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACtC,IAAI,WAAW,KAAK,SAAS;gBAAE,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;YACtE,IAAI,WAAW,KAAK,SAAS;gBAAE,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;QACxE,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAA8B;IAQvD,MAAM,OAAO,GAOR,EAAE,CAAC;IACR,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACxE,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,qCAAqC,GAAG,EAAE,CAAC;QAC1D,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC;QAC5C,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,MAAM,iBAAiB,CAAC,CAAC;QAC1D,MAAM,sBAAsB,GAAG,MAAM,CAAC,GAAG,MAAM,yBAAyB,CAAC,CAAC;QAE1E,0CAA0C;QAC1C,MAAM,iBAAiB,GAA0C,EAAE,CAAC;QACpE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QACtC,MAAM,UAAU,GAAG,GAAG,MAAM,2BAA2B,CAAC;QACxD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACjE,IAAI,SAAS,EAAE,CAAC;oBACd,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,UAAU,GAAG,OAAO,OAAO,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,UAAU,GAAG,OAAO,iBAAiB,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,UAAU,GAAG,OAAO,oBAAoB,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,UAAU,GAAG,OAAO,oBAAoB,CAAC,CAAC;YACxE,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;gBACrB,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;gBACjD,IAAI,WAAW,KAAK,SAAS;oBAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;gBACjF,IAAI,WAAW,KAAK,SAAS;oBAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;YACnF,CAAC;QACH,CAAC;QAED,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,wBAAwB,CAC/B,UAAiD;IAEjD,MAAM,MAAM,GAAoD,EAAE,CAAC;IACnE,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACrD,MAAM,CAAC,GAAG,CAAC,GAAG;YACZ,IAAI,EAAE,IAAI,CAAC,QAAQ;YACnB,KAAK,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE;SAClD,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/sns/actions/publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setSubscriptionAttributes.d.ts","sourceRoot":"","sources":["../../../src/sns/actions/setSubscriptionAttributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"setSubscriptionAttributes.d.ts","sourceRoot":"","sources":["../../../src/sns/actions/setSubscriptionAttributes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAW/C,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,QAAQ,GACjB,MAAM,CAyBR"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { SnsError } from "../../common/errors.js";
|
|
2
2
|
import { snsSuccessResponse } from "../../common/xml.js";
|
|
3
|
+
const VALID_SUBSCRIPTION_ATTRIBUTES = new Set([
|
|
4
|
+
"RawMessageDelivery",
|
|
5
|
+
"FilterPolicy",
|
|
6
|
+
"FilterPolicyScope",
|
|
7
|
+
"RedrivePolicy",
|
|
8
|
+
"DeliveryPolicy",
|
|
9
|
+
"SubscriptionRoleArn",
|
|
10
|
+
]);
|
|
3
11
|
export function setSubscriptionAttributes(params, snsStore) {
|
|
4
12
|
const subscriptionArn = params.SubscriptionArn;
|
|
5
13
|
if (!subscriptionArn) {
|
|
@@ -12,6 +20,9 @@ export function setSubscriptionAttributes(params, snsStore) {
|
|
|
12
20
|
const attributeName = params.AttributeName;
|
|
13
21
|
const attributeValue = params.AttributeValue ?? "";
|
|
14
22
|
if (attributeName) {
|
|
23
|
+
if (!VALID_SUBSCRIPTION_ATTRIBUTES.has(attributeName)) {
|
|
24
|
+
throw new SnsError("InvalidParameter", `Invalid parameter: AttributeName Reason: Invalid attribute name: ${attributeName}`);
|
|
25
|
+
}
|
|
15
26
|
subscription.attributes[attributeName] = attributeValue;
|
|
16
27
|
}
|
|
17
28
|
return snsSuccessResponse("SetSubscriptionAttributes", "");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setSubscriptionAttributes.js","sourceRoot":"","sources":["../../../src/sns/actions/setSubscriptionAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,UAAU,yBAAyB,CACvC,MAA8B,EAC9B,QAAkB;IAElB,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAC/C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,6BAA6B,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC/D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,6BAA6B,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAC3C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;IAEnD,IAAI,aAAa,EAAE,CAAC;QAClB,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,cAAc,CAAC;IAC1D,CAAC;IAED,OAAO,kBAAkB,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC"}
|
|
1
|
+
{"version":3,"file":"setSubscriptionAttributes.js","sourceRoot":"","sources":["../../../src/sns/actions/setSubscriptionAttributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGzD,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAC;IAC5C,oBAAoB;IACpB,cAAc;IACd,mBAAmB;IACnB,eAAe;IACf,gBAAgB;IAChB,qBAAqB;CACtB,CAAC,CAAC;AAEH,MAAM,UAAU,yBAAyB,CACvC,MAA8B,EAC9B,QAAkB;IAElB,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAC/C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,6BAA6B,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC/D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,6BAA6B,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAC3C,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;IAEnD,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,oEAAoE,aAAa,EAAE,CACpF,CAAC;QACJ,CAAC;QACD,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,cAAc,CAAC;IAC1D,CAAC;IAED,OAAO,kBAAkB,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC"}
|