quidproquo-actionprocessor-awslambda 0.1.12 → 0.1.14

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 (103) hide show
  1. package/lib/commonjs/getActionProcessor/core/event/dynamo/index.d.ts +1 -0
  2. package/lib/commonjs/getActionProcessor/core/event/dynamo/index.js +18 -0
  3. package/lib/commonjs/getActionProcessor/core/event/dynamo/index.js.map +1 -0
  4. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.d.ts +2 -0
  5. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.js +25 -0
  6. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.js.map +1 -0
  7. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.d.ts +2 -0
  8. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.js +88 -0
  9. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.js.map +1 -0
  10. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.d.ts +2 -0
  11. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.js +27 -0
  12. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.js.map +1 -0
  13. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.d.ts +2 -0
  14. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.js +30 -0
  15. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.js.map +1 -0
  16. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.d.ts +2 -0
  17. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.js +34 -0
  18. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.js.map +1 -0
  19. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/index.d.ts +2 -0
  20. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/index.js +22 -0
  21. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/index.js.map +1 -0
  22. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/types.d.ts +11 -0
  23. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/types.js +14 -0
  24. package/lib/commonjs/getActionProcessor/core/event/dynamo/streamEvent/types.js.map +1 -0
  25. package/lib/commonjs/getActionProcessor/core/event/index.d.ts +1 -0
  26. package/lib/commonjs/getActionProcessor/core/event/index.js +1 -0
  27. package/lib/commonjs/getActionProcessor/core/event/index.js.map +1 -1
  28. package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js +1 -1
  29. package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js.map +1 -1
  30. package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.d.ts +2 -0
  31. package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.js +58 -0
  32. package/lib/commonjs/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.js.map +1 -0
  33. package/lib/commonjs/getActionProcessor/core/keyValueStore/index.js +2 -1
  34. package/lib/commonjs/getActionProcessor/core/keyValueStore/index.js.map +1 -1
  35. package/lib/commonjs/getLambdaEntries.js +1 -0
  36. package/lib/commonjs/getLambdaEntries.js.map +1 -1
  37. package/lib/commonjs/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.d.ts +3 -0
  38. package/lib/commonjs/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.js +10 -0
  39. package/lib/commonjs/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.js.map +1 -0
  40. package/lib/commonjs/lambdaHandlers/index.d.ts +1 -0
  41. package/lib/commonjs/lambdaHandlers/index.js +1 -0
  42. package/lib/commonjs/lambdaHandlers/index.js.map +1 -1
  43. package/lib/commonjs/lambdas/dynamoStreamEvent_kvsStreamEvent.d.ts +1 -0
  44. package/lib/commonjs/lambdas/dynamoStreamEvent_kvsStreamEvent.js +8 -0
  45. package/lib/commonjs/lambdas/dynamoStreamEvent_kvsStreamEvent.js.map +1 -0
  46. package/lib/commonjs/lambdas/index.d.ts +1 -0
  47. package/lib/commonjs/lambdas/index.js +16 -0
  48. package/lib/commonjs/lambdas/index.js.map +1 -1
  49. package/lib/commonjs/logic/dynamo/query.d.ts +1 -1
  50. package/lib/commonjs/logic/dynamo/query.js +5 -1
  51. package/lib/commonjs/logic/dynamo/query.js.map +1 -1
  52. package/lib/esm/getActionProcessor/core/event/dynamo/index.d.ts +1 -0
  53. package/lib/esm/getActionProcessor/core/event/dynamo/index.js +2 -0
  54. package/lib/esm/getActionProcessor/core/event/dynamo/index.js.map +1 -0
  55. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.d.ts +2 -0
  56. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.js +10 -0
  57. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventAutoRespondActionProcessor.js.map +1 -0
  58. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.d.ts +2 -0
  59. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.js +71 -0
  60. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetRecordsActionProcessor.js.map +1 -0
  61. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.d.ts +2 -0
  62. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.js +12 -0
  63. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventGetStorySessionActionProcessor.js.map +1 -0
  64. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.d.ts +2 -0
  65. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.js +15 -0
  66. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventMatchStoryActionProcessor.js.map +1 -0
  67. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.d.ts +2 -0
  68. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.js +19 -0
  69. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/getEventTransformResponseResultActionProcessor.js.map +1 -0
  70. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/index.d.ts +2 -0
  71. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/index.js +13 -0
  72. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/index.js.map +1 -0
  73. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/types.d.ts +11 -0
  74. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/types.js +11 -0
  75. package/lib/esm/getActionProcessor/core/event/dynamo/streamEvent/types.js.map +1 -0
  76. package/lib/esm/getActionProcessor/core/event/index.d.ts +1 -0
  77. package/lib/esm/getActionProcessor/core/event/index.js +1 -0
  78. package/lib/esm/getActionProcessor/core/event/index.js.map +1 -1
  79. package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js +1 -1
  80. package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreQueryActionProcessor.js.map +1 -1
  81. package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.d.ts +2 -0
  82. package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.js +42 -0
  83. package/lib/esm/getActionProcessor/core/keyValueStore/getKeyValueStoreScanAllScopesActionProcessor.js.map +1 -0
  84. package/lib/esm/getActionProcessor/core/keyValueStore/index.js +2 -0
  85. package/lib/esm/getActionProcessor/core/keyValueStore/index.js.map +1 -1
  86. package/lib/esm/getLambdaEntries.js +1 -0
  87. package/lib/esm/getLambdaEntries.js.map +1 -1
  88. package/lib/esm/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.d.ts +3 -0
  89. package/lib/esm/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.js +6 -0
  90. package/lib/esm/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.js.map +1 -0
  91. package/lib/esm/lambdaHandlers/index.d.ts +1 -0
  92. package/lib/esm/lambdaHandlers/index.js +1 -0
  93. package/lib/esm/lambdaHandlers/index.js.map +1 -1
  94. package/lib/esm/lambdas/dynamoStreamEvent_kvsStreamEvent.d.ts +1 -0
  95. package/lib/esm/lambdas/dynamoStreamEvent_kvsStreamEvent.js +5 -0
  96. package/lib/esm/lambdas/dynamoStreamEvent_kvsStreamEvent.js.map +1 -0
  97. package/lib/esm/lambdas/index.d.ts +1 -0
  98. package/lib/esm/lambdas/index.js +1 -1
  99. package/lib/esm/lambdas/index.js.map +1 -1
  100. package/lib/esm/logic/dynamo/query.d.ts +1 -1
  101. package/lib/esm/logic/dynamo/query.js +5 -1
  102. package/lib/esm/logic/dynamo/query.js.map +1 -1
  103. package/package.json +7 -7
@@ -0,0 +1,3 @@
1
+ import { DynamicModuleLoader, QPQConfig } from 'quidproquo-core';
2
+ import { DynamoDBStreamEvent } from 'aws-lambda';
3
+ export declare const getDynamoStreamEvent_kvsStreamEvent: (dynamicModuleLoader: DynamicModuleLoader, qpqConfig: QPQConfig) => (event: DynamoDBStreamEvent, context: import("aws-lambda").Context) => Promise<any>;
@@ -0,0 +1,6 @@
1
+ import { QpqRuntimeType } from 'quidproquo-core';
2
+ import { getDynamoKvsStreamEventProcessor } from '../getActionProcessor';
3
+ import { getBlankStorySession } from './helpers/getBlankStorySession';
4
+ import { getQpqLambdaRuntimeForEvent } from './helpers/getQpqLambdaRuntimeForEvent';
5
+ export const getDynamoStreamEvent_kvsStreamEvent = (dynamicModuleLoader, qpqConfig) => getQpqLambdaRuntimeForEvent(QpqRuntimeType.KVS_STREAM_EVENT, getBlankStorySession, getDynamoKvsStreamEventProcessor, dynamicModuleLoader, qpqConfig);
6
+ //# sourceMappingURL=getDynamoStreamEvent_kvsStreamEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDynamoStreamEvent_kvsStreamEvent.js","sourceRoot":"","sources":["../../../src/lambdaHandlers/getDynamoStreamEvent_kvsStreamEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjF,OAAO,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAEpF,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,mBAAwC,EAAE,SAAoB,EAAE,EAAE,CACpH,2BAA2B,CACzB,cAAc,CAAC,gBAAgB,EAC/B,oBAAoB,EACpB,gCAAgC,EAChC,mBAAmB,EACnB,SAAS,CACV,CAAC","sourcesContent":["import { DynamicModuleLoader, QPQConfig, QpqRuntimeType } from 'quidproquo-core';\n\nimport { DynamoDBStreamEvent } from 'aws-lambda';\n\nimport { getDynamoKvsStreamEventProcessor } from '../getActionProcessor';\nimport { getBlankStorySession } from './helpers/getBlankStorySession';\nimport { getQpqLambdaRuntimeForEvent } from './helpers/getQpqLambdaRuntimeForEvent';\n\nexport const getDynamoStreamEvent_kvsStreamEvent = (dynamicModuleLoader: DynamicModuleLoader, qpqConfig: QPQConfig) =>\n getQpqLambdaRuntimeForEvent<DynamoDBStreamEvent>(\n QpqRuntimeType.KVS_STREAM_EVENT,\n getBlankStorySession,\n getDynamoKvsStreamEventProcessor,\n dynamicModuleLoader,\n qpqConfig,\n );\n"]}
@@ -1,3 +1,4 @@
1
+ export * from './getDynamoStreamEvent_kvsStreamEvent';
1
2
  export * from './getAnyExecuteServiceFunctionEvent_serviceFunction';
2
3
  export * from './getApiGatewayEventHandler';
3
4
  export * from './getApiGatewayEventHandler_redirect';
@@ -1,3 +1,4 @@
1
+ export * from './getDynamoStreamEvent_kvsStreamEvent';
1
2
  export * from './getAnyExecuteServiceFunctionEvent_serviceFunction';
2
3
  export * from './getApiGatewayEventHandler';
3
4
  export * from './getApiGatewayEventHandler_redirect';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambdaHandlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qDAAqD,CAAC;AACpE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sCAAsC,CAAC;AACrD,cAAc,yDAAyD,CAAC;AACxE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oDAAoD,CAAC;AACnE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,oDAAoD,CAAC;AACnE,cAAc,oDAAoD,CAAC;AACnE,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC","sourcesContent":["export * from './getAnyExecuteServiceFunctionEvent_serviceFunction';\nexport * from './getApiGatewayEventHandler';\nexport * from './getApiGatewayEventHandler_redirect';\nexport * from './getApiGatwayEventWebsocketWithIdentity_websocketEvent';\nexport * from './getCloudFrontRequestEvent_originRequest';\nexport * from './getCloudFrontRequestEvent_viewerRequest';\nexport * from './getCustomMessageTriggerEvent_createAuthChallenge';\nexport * from './getCustomMessageTriggerEvent_customMessage';\nexport * from './getCustomMessageTriggerEvent_defineAuthChallenge';\nexport * from './getCustomMessageTriggerEvent_verifyAuthChallenge';\nexport * from './getEventBridgeEvent_recurringSchedule';\nexport * from './getEventBridgeEvent_stackDeploy';\nexport * from './getS3Event_fileEvent';\nexport * from './getSqsEvent_queueEvent';\nexport * from './helpers';\nexport * from './types';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambdaHandlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,uCAAuC,CAAC;AACtD,cAAc,qDAAqD,CAAC;AACpE,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sCAAsC,CAAC;AACrD,cAAc,yDAAyD,CAAC;AACxE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,oDAAoD,CAAC;AACnE,cAAc,8CAA8C,CAAC;AAC7D,cAAc,oDAAoD,CAAC;AACnE,cAAc,oDAAoD,CAAC;AACnE,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC","sourcesContent":["export * from './getDynamoStreamEvent_kvsStreamEvent';\nexport * from './getAnyExecuteServiceFunctionEvent_serviceFunction';\nexport * from './getApiGatewayEventHandler';\nexport * from './getApiGatewayEventHandler_redirect';\nexport * from './getApiGatwayEventWebsocketWithIdentity_websocketEvent';\nexport * from './getCloudFrontRequestEvent_originRequest';\nexport * from './getCloudFrontRequestEvent_viewerRequest';\nexport * from './getCustomMessageTriggerEvent_createAuthChallenge';\nexport * from './getCustomMessageTriggerEvent_customMessage';\nexport * from './getCustomMessageTriggerEvent_defineAuthChallenge';\nexport * from './getCustomMessageTriggerEvent_verifyAuthChallenge';\nexport * from './getEventBridgeEvent_recurringSchedule';\nexport * from './getEventBridgeEvent_stackDeploy';\nexport * from './getS3Event_fileEvent';\nexport * from './getSqsEvent_queueEvent';\nexport * from './helpers';\nexport * from './types';\n"]}
@@ -0,0 +1 @@
1
+ export declare const dynamoStreamEvent_kvsStreamEvent: (event: import("aws-lambda").DynamoDBStreamEvent, context: import("aws-lambda").Context) => Promise<any>;
@@ -0,0 +1,5 @@
1
+ import { getDynamoStreamEvent_kvsStreamEvent } from '../lambdaHandlers';
2
+ import { dynamicModuleLoader } from './dynamicModuleLoader';
3
+ import { getQpqConfig } from './lambda-utils';
4
+ export const dynamoStreamEvent_kvsStreamEvent = getDynamoStreamEvent_kvsStreamEvent(dynamicModuleLoader, getQpqConfig());
5
+ //# sourceMappingURL=dynamoStreamEvent_kvsStreamEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamoStreamEvent_kvsStreamEvent.js","sourceRoot":"","sources":["../../../src/lambdas/dynamoStreamEvent_kvsStreamEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,gCAAgC,GAAG,mCAAmC,CAAC,mBAAmB,EAAE,YAAY,EAAE,CAAC,CAAC","sourcesContent":["import { getDynamoStreamEvent_kvsStreamEvent } from '../lambdaHandlers';\nimport { dynamicModuleLoader } from './dynamicModuleLoader';\nimport { getQpqConfig } from './lambda-utils';\n\nexport const dynamoStreamEvent_kvsStreamEvent = getDynamoStreamEvent_kvsStreamEvent(dynamicModuleLoader, getQpqConfig());\n"]}
@@ -0,0 +1 @@
1
+ export * from './dynamoStreamEvent_kvsStreamEvent';
@@ -1,4 +1,4 @@
1
- "use strict";
1
+ export * from './dynamoStreamEvent_kvsStreamEvent';
2
2
  // Deliberately empty. The files in this folder are bundler ENTRY POINTS, not
3
3
  // library code: each one imports the 'quidproquo-dynamic-loader' virtual module
4
4
  // that only exists inside a deploy bundle (see getLambdaEntries.ts). Re-exporting
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambdas/index.ts"],"names":[],"mappings":";AAAA,6EAA6E;AAC7E,gFAAgF;AAChF,kFAAkF;AAClF,gFAAgF","sourcesContent":["// Deliberately empty. The files in this folder are bundler ENTRY POINTS, not\n// library code: each one imports the 'quidproquo-dynamic-loader' virtual module\n// that only exists inside a deploy bundle (see getLambdaEntries.ts). Re-exporting\n// them here would drag that unresolvable import into the package's own surface.\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lambdas/index.ts"],"names":[],"mappings":"AAAA,cAAc,oCAAoC,CAAC;AACnD,6EAA6E;AAC7E,gFAAgF;AAChF,kFAAkF;AAClF,gFAAgF","sourcesContent":["export * from './dynamoStreamEvent_kvsStreamEvent';\n// Deliberately empty. The files in this folder are bundler ENTRY POINTS, not\n// library code: each one imports the 'quidproquo-dynamic-loader' virtual module\n// that only exists inside a deploy bundle (see getLambdaEntries.ts). Re-exporting\n// them here would drag that unresolvable import into the package's own surface.\n"]}
@@ -1,2 +1,2 @@
1
1
  import { KvsQueryOperation, QpqPagedData } from 'quidproquo-core';
2
- export declare function query<Item>(tableName: string, region: string, keyExpression: KvsQueryOperation, filterExpression?: KvsQueryOperation, pageKey?: string, indexName?: string, limit?: number, sortAscending?: boolean): Promise<QpqPagedData<Item>>;
2
+ export declare function query<Item>(tableName: string, region: string, keyExpression: KvsQueryOperation, filterExpression?: KvsQueryOperation, pageKey?: string, indexName?: string, limit?: number, sortAscending?: boolean, consistentRead?: boolean): Promise<QpqPagedData<Item>>;
@@ -4,7 +4,7 @@ import { itemsToQpqPagedData } from './utils/itemsToQpqPagedData';
4
4
  import { stringToLastEvaluatedKey } from './utils/stringToLastEvaluatedKey';
5
5
  import { convertDynamoMapToObject } from './convertDynamoMapToObject';
6
6
  import { buildDynamoQueryExpression, buildExpressionAttributeNames, buildExpressionAttributeValues } from './qpqDynamoOrm';
7
- export async function query(tableName, region, keyExpression, filterExpression, pageKey, indexName, limit, sortAscending) {
7
+ export async function query(tableName, region, keyExpression, filterExpression, pageKey, indexName, limit, sortAscending, consistentRead) {
8
8
  const dynamoDBClient = createAwsClient(DynamoDBClient, { region });
9
9
  const params = {
10
10
  TableName: tableName,
@@ -15,6 +15,10 @@ export async function query(tableName, region, keyExpression, filterExpression,
15
15
  IndexName: indexName,
16
16
  Limit: limit,
17
17
  ScanIndexForward: sortAscending,
18
+ // Only set when asked. A strongly consistent read costs twice the RCU and cannot be served from a
19
+ // global secondary index, so it must stay opt-in — but without it a caller cannot read back what it
20
+ // just wrote, which some callers genuinely need.
21
+ ConsistentRead: consistentRead,
18
22
  };
19
23
  if (pageKey) {
20
24
  params.ExclusiveStartKey = stringToLastEvaluatedKey(pageKey);
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/logic/dynamo/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAqB,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAE3H,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,SAAiB,EACjB,MAAc,EACd,aAAgC,EAChC,gBAAoC,EACpC,OAAgB,EAChB,SAAkB,EAClB,KAAc,EACd,aAAuB;IAEvB,MAAM,cAAc,GAAG,eAAe,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnE,MAAM,MAAM,GAAsB;QAChC,SAAS,EAAE,SAAS;QACpB,sBAAsB,EAAE,0BAA0B,CAAC,aAAa,CAAC;QACjE,gBAAgB,EAAE,gBAAgB,IAAI,0BAA0B,CAAC,gBAAgB,CAAC;QAClF,yBAAyB,EAAE,8BAA8B,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAC5F,wBAAwB,EAAE,6BAA6B,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAC1F,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,KAAK;QACZ,gBAAgB,EAAE,aAAa;KAChC,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAW,CAAC;IAEzF,OAAO,mBAAmB,CAAO,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACjE,CAAC","sourcesContent":["import { KvsQueryOperation, QpqPagedData } from 'quidproquo-core';\n\nimport { DynamoDBClient, QueryCommand, QueryCommandInput } from '@aws-sdk/client-dynamodb';\n\nimport { createAwsClient } from '../createAwsClient';\nimport { itemsToQpqPagedData } from './utils/itemsToQpqPagedData';\nimport { stringToLastEvaluatedKey } from './utils/stringToLastEvaluatedKey';\nimport { convertDynamoMapToObject } from './convertDynamoMapToObject';\nimport { buildDynamoQueryExpression, buildExpressionAttributeNames, buildExpressionAttributeValues } from './qpqDynamoOrm';\n\nexport async function query<Item>(\n tableName: string,\n region: string,\n keyExpression: KvsQueryOperation,\n filterExpression?: KvsQueryOperation,\n pageKey?: string,\n indexName?: string,\n limit?: number,\n sortAscending?: boolean,\n): Promise<QpqPagedData<Item>> {\n const dynamoDBClient = createAwsClient(DynamoDBClient, { region });\n\n const params: QueryCommandInput = {\n TableName: tableName,\n KeyConditionExpression: buildDynamoQueryExpression(keyExpression),\n FilterExpression: filterExpression && buildDynamoQueryExpression(filterExpression),\n ExpressionAttributeValues: buildExpressionAttributeValues([keyExpression, filterExpression]),\n ExpressionAttributeNames: buildExpressionAttributeNames([keyExpression, filterExpression]),\n IndexName: indexName,\n Limit: limit,\n ScanIndexForward: sortAscending,\n };\n\n if (pageKey) {\n params.ExclusiveStartKey = stringToLastEvaluatedKey(pageKey);\n }\n\n const data = await dynamoDBClient.send(new QueryCommand(params));\n\n const items = (data.Items || []).map((item) => convertDynamoMapToObject(item)) as Item[];\n\n return itemsToQpqPagedData<Item>(items, data.LastEvaluatedKey);\n}\n"]}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/logic/dynamo/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAqB,MAAM,0BAA0B,CAAC;AAE3F,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAE3H,MAAM,CAAC,KAAK,UAAU,KAAK,CACzB,SAAiB,EACjB,MAAc,EACd,aAAgC,EAChC,gBAAoC,EACpC,OAAgB,EAChB,SAAkB,EAClB,KAAc,EACd,aAAuB,EACvB,cAAwB;IAExB,MAAM,cAAc,GAAG,eAAe,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnE,MAAM,MAAM,GAAsB;QAChC,SAAS,EAAE,SAAS;QACpB,sBAAsB,EAAE,0BAA0B,CAAC,aAAa,CAAC;QACjE,gBAAgB,EAAE,gBAAgB,IAAI,0BAA0B,CAAC,gBAAgB,CAAC;QAClF,yBAAyB,EAAE,8BAA8B,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAC5F,wBAAwB,EAAE,6BAA6B,CAAC,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAC1F,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,KAAK;QACZ,gBAAgB,EAAE,aAAa;QAC/B,kGAAkG;QAClG,oGAAoG;QACpG,iDAAiD;QACjD,cAAc,EAAE,cAAc;KAC/B,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,iBAAiB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAW,CAAC;IAEzF,OAAO,mBAAmB,CAAO,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACjE,CAAC","sourcesContent":["import { KvsQueryOperation, QpqPagedData } from 'quidproquo-core';\n\nimport { DynamoDBClient, QueryCommand, QueryCommandInput } from '@aws-sdk/client-dynamodb';\n\nimport { createAwsClient } from '../createAwsClient';\nimport { itemsToQpqPagedData } from './utils/itemsToQpqPagedData';\nimport { stringToLastEvaluatedKey } from './utils/stringToLastEvaluatedKey';\nimport { convertDynamoMapToObject } from './convertDynamoMapToObject';\nimport { buildDynamoQueryExpression, buildExpressionAttributeNames, buildExpressionAttributeValues } from './qpqDynamoOrm';\n\nexport async function query<Item>(\n tableName: string,\n region: string,\n keyExpression: KvsQueryOperation,\n filterExpression?: KvsQueryOperation,\n pageKey?: string,\n indexName?: string,\n limit?: number,\n sortAscending?: boolean,\n consistentRead?: boolean,\n): Promise<QpqPagedData<Item>> {\n const dynamoDBClient = createAwsClient(DynamoDBClient, { region });\n\n const params: QueryCommandInput = {\n TableName: tableName,\n KeyConditionExpression: buildDynamoQueryExpression(keyExpression),\n FilterExpression: filterExpression && buildDynamoQueryExpression(filterExpression),\n ExpressionAttributeValues: buildExpressionAttributeValues([keyExpression, filterExpression]),\n ExpressionAttributeNames: buildExpressionAttributeNames([keyExpression, filterExpression]),\n IndexName: indexName,\n Limit: limit,\n ScanIndexForward: sortAscending,\n // Only set when asked. A strongly consistent read costs twice the RCU and cannot be served from a\n // global secondary index, so it must stay opt-in — but without it a caller cannot read back what it\n // just wrote, which some callers genuinely need.\n ConsistentRead: consistentRead,\n };\n\n if (pageKey) {\n params.ExclusiveStartKey = stringToLastEvaluatedKey(pageKey);\n }\n\n const data = await dynamoDBClient.send(new QueryCommand(params));\n\n const items = (data.Items || []).map((item) => convertDynamoMapToObject(item)) as Item[];\n\n return itemsToQpqPagedData<Item>(items, data.LastEvaluatedKey);\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "quidproquo-actionprocessor-awslambda",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "",
5
5
  "main": "./lib/commonjs/index.js",
6
6
  "module": "./lib/esm/index.js",
@@ -63,11 +63,11 @@
63
63
  "lodash": "^4.17.21",
64
64
  "node-cache": "^5.1.2",
65
65
  "node-match-path": "^0.6.3",
66
- "quidproquo-actionprocessor-js": "0.1.12",
67
- "quidproquo-actionprocessor-node": "0.1.12",
68
- "quidproquo-config-aws": "0.1.12",
69
- "quidproquo-core": "0.1.12",
70
- "quidproquo-webserver": "0.1.12"
66
+ "quidproquo-actionprocessor-js": "0.1.14",
67
+ "quidproquo-actionprocessor-node": "0.1.14",
68
+ "quidproquo-config-aws": "0.1.14",
69
+ "quidproquo-core": "0.1.14",
70
+ "quidproquo-webserver": "0.1.14"
71
71
  },
72
72
  "devDependencies": {
73
73
  "@types/busboy": "^1.5.0",
@@ -75,7 +75,7 @@
75
75
  "@types/lodash": "^4.14.194",
76
76
  "@types/node": "^22.13.13",
77
77
  "esbuild": "^0.25.8",
78
- "quidproquo-tsconfig": "0.1.12",
78
+ "quidproquo-tsconfig": "0.1.14",
79
79
  "typescript": "^5.8.2"
80
80
  }
81
81
  }