@farukada/aws-langgraph-dynamodb-ts 0.0.11 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/README.md +353 -242
  2. package/dist/checkpointer/actions/delete-thread.d.ts +3 -3
  3. package/dist/checkpointer/actions/delete-thread.d.ts.map +1 -1
  4. package/dist/checkpointer/actions/delete-thread.js +95 -52
  5. package/dist/checkpointer/actions/delete-thread.js.map +1 -1
  6. package/dist/checkpointer/actions/get-tuple.d.ts +8 -1
  7. package/dist/checkpointer/actions/get-tuple.d.ts.map +1 -1
  8. package/dist/checkpointer/actions/get-tuple.js +72 -20
  9. package/dist/checkpointer/actions/get-tuple.js.map +1 -1
  10. package/dist/checkpointer/actions/put-writes.d.ts.map +1 -1
  11. package/dist/checkpointer/actions/put-writes.js +27 -22
  12. package/dist/checkpointer/actions/put-writes.js.map +1 -1
  13. package/dist/checkpointer/actions/put.d.ts +6 -2
  14. package/dist/checkpointer/actions/put.d.ts.map +1 -1
  15. package/dist/checkpointer/actions/put.js +80 -19
  16. package/dist/checkpointer/actions/put.js.map +1 -1
  17. package/dist/checkpointer/index.d.ts +43 -2
  18. package/dist/checkpointer/index.d.ts.map +1 -1
  19. package/dist/checkpointer/index.js +226 -11
  20. package/dist/checkpointer/index.js.map +1 -1
  21. package/dist/checkpointer/types/index.d.ts +66 -4
  22. package/dist/checkpointer/types/index.d.ts.map +1 -1
  23. package/dist/checkpointer/types/index.js +10 -0
  24. package/dist/checkpointer/types/index.js.map +1 -1
  25. package/dist/checkpointer/utils/deserialization.d.ts +8 -3
  26. package/dist/checkpointer/utils/deserialization.d.ts.map +1 -1
  27. package/dist/checkpointer/utils/deserialization.js +23 -5
  28. package/dist/checkpointer/utils/deserialization.js.map +1 -1
  29. package/dist/checkpointer/utils/validation.d.ts +1 -1
  30. package/dist/checkpointer/utils/validation.js +1 -1
  31. package/dist/checkpointer/utils/validation.js.map +1 -1
  32. package/dist/factory.d.ts +8 -6
  33. package/dist/factory.d.ts.map +1 -1
  34. package/dist/factory.js +16 -4
  35. package/dist/factory.js.map +1 -1
  36. package/dist/history/actions/add-message.d.ts +2 -1
  37. package/dist/history/actions/add-message.d.ts.map +1 -1
  38. package/dist/history/actions/add-message.js +22 -18
  39. package/dist/history/actions/add-message.js.map +1 -1
  40. package/dist/history/actions/add-messages.d.ts +3 -2
  41. package/dist/history/actions/add-messages.d.ts.map +1 -1
  42. package/dist/history/actions/add-messages.js +30 -20
  43. package/dist/history/actions/add-messages.js.map +1 -1
  44. package/dist/history/actions/clear.d.ts +4 -3
  45. package/dist/history/actions/clear.d.ts.map +1 -1
  46. package/dist/history/actions/clear.js +47 -12
  47. package/dist/history/actions/clear.js.map +1 -1
  48. package/dist/history/actions/get-messages.d.ts +2 -1
  49. package/dist/history/actions/get-messages.d.ts.map +1 -1
  50. package/dist/history/actions/get-messages.js +41 -15
  51. package/dist/history/actions/get-messages.js.map +1 -1
  52. package/dist/history/actions/list-sessions.d.ts +11 -0
  53. package/dist/history/actions/list-sessions.d.ts.map +1 -1
  54. package/dist/history/actions/list-sessions.js +23 -3
  55. package/dist/history/actions/list-sessions.js.map +1 -1
  56. package/dist/history/index.d.ts +8 -0
  57. package/dist/history/index.d.ts.map +1 -1
  58. package/dist/history/index.js +22 -2
  59. package/dist/history/index.js.map +1 -1
  60. package/dist/history/types/index.d.ts +27 -5
  61. package/dist/history/types/index.d.ts.map +1 -1
  62. package/dist/history/types/index.js +1 -0
  63. package/dist/history/types/index.js.map +1 -1
  64. package/dist/history/utils/title-generator.js.map +1 -1
  65. package/dist/history/utils/update-expression-builder.d.ts +45 -21
  66. package/dist/history/utils/update-expression-builder.d.ts.map +1 -1
  67. package/dist/history/utils/update-expression-builder.js +105 -38
  68. package/dist/history/utils/update-expression-builder.js.map +1 -1
  69. package/dist/history/utils/validation.d.ts +8 -0
  70. package/dist/history/utils/validation.d.ts.map +1 -1
  71. package/dist/history/utils/validation.js +22 -0
  72. package/dist/history/utils/validation.js.map +1 -1
  73. package/dist/index.d.ts +2 -0
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +5 -1
  76. package/dist/index.js.map +1 -1
  77. package/dist/shared/utils/batch-write.d.ts +36 -0
  78. package/dist/shared/utils/batch-write.d.ts.map +1 -0
  79. package/dist/shared/utils/batch-write.js +62 -0
  80. package/dist/shared/utils/batch-write.js.map +1 -0
  81. package/dist/shared/utils/compressor.d.ts +48 -0
  82. package/dist/shared/utils/compressor.d.ts.map +1 -0
  83. package/dist/shared/utils/compressor.js +68 -0
  84. package/dist/shared/utils/compressor.js.map +1 -0
  85. package/dist/shared/utils/constants.d.ts +2 -0
  86. package/dist/shared/utils/constants.d.ts.map +1 -1
  87. package/dist/shared/utils/constants.js +3 -7
  88. package/dist/shared/utils/constants.js.map +1 -1
  89. package/dist/shared/utils/index.d.ts +4 -0
  90. package/dist/shared/utils/index.d.ts.map +1 -1
  91. package/dist/shared/utils/index.js +4 -0
  92. package/dist/shared/utils/index.js.map +1 -1
  93. package/dist/shared/utils/logger.d.ts +48 -0
  94. package/dist/shared/utils/logger.d.ts.map +1 -0
  95. package/dist/shared/utils/logger.js +62 -0
  96. package/dist/shared/utils/logger.js.map +1 -0
  97. package/dist/shared/utils/retry.d.ts +1 -1
  98. package/dist/shared/utils/retry.d.ts.map +1 -1
  99. package/dist/shared/utils/retry.js +13 -6
  100. package/dist/shared/utils/retry.js.map +1 -1
  101. package/dist/shared/utils/s3-offloader.d.ts +146 -0
  102. package/dist/shared/utils/s3-offloader.d.ts.map +1 -0
  103. package/dist/shared/utils/s3-offloader.js +271 -0
  104. package/dist/shared/utils/s3-offloader.js.map +1 -0
  105. package/dist/shared/utils/ttl.d.ts +8 -1
  106. package/dist/shared/utils/ttl.d.ts.map +1 -1
  107. package/dist/shared/utils/ttl.js +12 -8
  108. package/dist/shared/utils/ttl.js.map +1 -1
  109. package/dist/store/actions/get-operation.js +2 -2
  110. package/dist/store/actions/get-operation.js.map +1 -1
  111. package/dist/store/actions/put-operation.d.ts.map +1 -1
  112. package/dist/store/actions/put-operation.js +2 -1
  113. package/dist/store/actions/put-operation.js.map +1 -1
  114. package/dist/store/actions/search-operation.d.ts +6 -0
  115. package/dist/store/actions/search-operation.d.ts.map +1 -1
  116. package/dist/store/actions/search-operation.js +41 -21
  117. package/dist/store/actions/search-operation.js.map +1 -1
  118. package/dist/store/index.d.ts +10 -2
  119. package/dist/store/index.d.ts.map +1 -1
  120. package/dist/store/index.js +28 -5
  121. package/dist/store/index.js.map +1 -1
  122. package/dist/store/types/index.d.ts +7 -5
  123. package/dist/store/types/index.d.ts.map +1 -1
  124. package/dist/store/utils/index.d.ts +0 -1
  125. package/dist/store/utils/index.d.ts.map +1 -1
  126. package/dist/store/utils/index.js +0 -1
  127. package/dist/store/utils/index.js.map +1 -1
  128. package/dist/store/utils/validation.js +1 -1
  129. package/dist/store/utils/validation.js.map +1 -1
  130. package/package.json +43 -26
  131. package/dist/store/utils/result.d.ts +0 -42
  132. package/dist/store/utils/result.d.ts.map +0 -1
  133. package/dist/store/utils/result.js +0 -51
  134. package/dist/store/utils/result.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farukada/aws-langgraph-dynamodb-ts",
3
- "version": "0.0.11",
3
+ "version": "0.1.1",
4
4
  "license": "MIT",
5
5
  "description": "AWS DynamoDB implementation for LangGraph Memory Store and Checkpoint Saver in TypeScript",
6
6
  "keywords": [
@@ -21,8 +21,17 @@
21
21
  "url": "https://github.com/farukada/aws-langgraph-dynamodb-ts/issues"
22
22
  },
23
23
  "main": "dist/index.js",
24
+ "types": "dist/index.d.ts",
25
+ "exports": {
26
+ ".": {
27
+ "types": "./dist/index.d.ts",
28
+ "import": "./dist/index.js",
29
+ "require": "./dist/index.js",
30
+ "default": "./dist/index.js"
31
+ }
32
+ },
24
33
  "engines": {
25
- "node": ">=20.0.0",
34
+ "node": ">=22.0.0",
26
35
  "npm": ">=10.0.0"
27
36
  },
28
37
  "scripts": {
@@ -32,47 +41,55 @@
32
41
  "test": "jest",
33
42
  "docs": "typedoc",
34
43
  "docs:watch": "typedoc --watch",
35
- "unused": "ts-prune | findstr /V \"src\\\\index.ts\"",
44
+ "unused": "knip",
36
45
  "depcheck": "depcheck .",
37
46
  "cpd": "jscpd ./src --threshold 2 --min-lines 3 --reporters console --silent --format typescript,javascript",
38
47
  "cpd:full": "jscpd ./src --threshold 2 --min-lines 3 --reporters console --verbose --format typescript,javascript",
39
48
  "cpd:test": "jscpd ./test --threshold 2 --min-lines 3 --reporters console --verbose --format typescript,javascript"
40
49
  },
41
50
  "dependencies": {
42
- "@aws-sdk/client-dynamodb": "^3.918.0",
43
- "@aws-sdk/lib-dynamodb": "^3.918.0",
44
- "@langchain/aws": "^1.0.0",
45
- "@langchain/core": "^1.0.2",
46
- "@langchain/langgraph": "^1.0.1",
47
- "@langchain/langgraph-checkpoint": "^1.0.0",
48
- "jsonpath-plus": "^10.3.0"
51
+ "@aws-sdk/client-dynamodb": "^3.1014.0",
52
+ "@aws-sdk/lib-dynamodb": "^3.1014.0",
53
+ "@langchain/aws": "^1.3.3",
54
+ "@langchain/core": "^1.1.35",
55
+ "@langchain/langgraph": "^1.2.5",
56
+ "@langchain/langgraph-checkpoint": "^1.0.1",
57
+ "jsonpath-plus": "^10.4.0"
58
+ },
59
+ "peerDependencies": {
60
+ "@aws-sdk/client-s3": "^3.900.0"
61
+ },
62
+ "peerDependenciesMeta": {
63
+ "@aws-sdk/client-s3": {
64
+ "optional": true
65
+ }
49
66
  },
50
67
  "devDependencies": {
51
- "@eslint/js": "^9.38.0",
68
+ "@aws-sdk/client-s3": "^3.1014.0",
69
+ "@eslint/js": "^10.0.1",
52
70
  "@types/jest": "^30.0.0",
53
- "@types/jsonpath-plus": "^5.0.5",
54
71
  "aws-sdk-client-mock": "^4.1.0",
55
72
  "depcheck": "^1.4.7",
56
- "eslint": "^9.38.0",
73
+ "eslint": "^10.1.0",
57
74
  "eslint-config-prettier": "^10.1.8",
58
- "eslint-plugin-import": "^2.32.0",
59
75
  "eslint-plugin-no-instanceof": "^1.0.1",
60
- "eslint-plugin-prettier": "^5.5.4",
61
- "eslint-plugin-unused-imports": "^4.3.0",
62
- "globals": "^16.4.0",
63
- "jest": "^30.2.0",
76
+ "eslint-plugin-perfectionist": "^5.7.0",
77
+ "eslint-plugin-prettier": "^5.5.5",
78
+ "eslint-plugin-unused-imports": "^4.4.1",
79
+ "globals": "^17.4.0",
80
+ "jest": "^30.3.0",
64
81
  "jest-sonar": "^0.2.16",
65
82
  "jiti": "^2.6.1",
66
- "jscpd": "^4.0.5",
67
- "prettier": "^3.6.2",
68
- "ts-jest": "^29.4.5",
83
+ "jscpd": "^4.0.8",
84
+ "knip": "^6.0.1",
85
+ "prettier": "^3.8.1",
86
+ "ts-jest": "^29.4.6",
69
87
  "ts-loader": "^9.5.4",
70
88
  "ts-node": "^10.9.2",
71
- "ts-prune": "^0.10.3",
72
- "typedoc": "^0.28.14",
73
- "typedoc-plugin-markdown": "^4.9.0",
74
- "typescript": "^5.5.3",
75
- "typescript-eslint": "^8.46.2"
89
+ "typedoc": "^0.28.17",
90
+ "typedoc-plugin-markdown": "^4.11.0",
91
+ "typescript": "^5.9.3",
92
+ "typescript-eslint": "^8.57.1"
76
93
  },
77
94
  "prettier": {
78
95
  "semi": true,
@@ -1,42 +0,0 @@
1
- /**
2
- * Result type for better error handling
3
- * Allows functions to return either a success value or an error
4
- */
5
- export type Result<T, E = Error> = {
6
- success: true;
7
- data: T;
8
- } | {
9
- success: false;
10
- error: E;
11
- };
12
- /**
13
- * Create a successful result
14
- */
15
- export declare function Ok<T>(data: T): Result<T, never>;
16
- /**
17
- * Create an error result
18
- */
19
- export declare function Err<E = Error>(error: E): Result<never, E>;
20
- /**
21
- * Check if a result is successful
22
- */
23
- export declare function isOk<T, E>(result: Result<T, E>): result is {
24
- success: true;
25
- data: T;
26
- };
27
- /**
28
- * Check if a result is an error
29
- */
30
- export declare function isErr<T, E>(result: Result<T, E>): result is {
31
- success: false;
32
- error: E;
33
- };
34
- /**
35
- * Unwrap a result or throw if it's an error
36
- */
37
- export declare function unwrap<T, E>(result: Result<T, E>): T;
38
- /**
39
- * Unwrap a result or return a default value if it's an error
40
- */
41
- export declare function unwrapOr<T, E>(result: Result<T, E>, defaultValue: T): T;
42
- //# sourceMappingURL=result.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../../src/store/utils/result.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE7F;;GAEG;AACH,wBAAgB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAE/C;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAEzD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAErF;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,IAAI;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAExF;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAKpD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,CAKvE"}
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Ok = Ok;
4
- exports.Err = Err;
5
- exports.isOk = isOk;
6
- exports.isErr = isErr;
7
- exports.unwrap = unwrap;
8
- exports.unwrapOr = unwrapOr;
9
- /**
10
- * Create a successful result
11
- */
12
- function Ok(data) {
13
- return { success: true, data };
14
- }
15
- /**
16
- * Create an error result
17
- */
18
- function Err(error) {
19
- return { success: false, error };
20
- }
21
- /**
22
- * Check if a result is successful
23
- */
24
- function isOk(result) {
25
- return result.success === true;
26
- }
27
- /**
28
- * Check if a result is an error
29
- */
30
- function isErr(result) {
31
- return result.success === false;
32
- }
33
- /**
34
- * Unwrap a result or throw if it's an error
35
- */
36
- function unwrap(result) {
37
- if (isOk(result)) {
38
- return result.data;
39
- }
40
- throw result.error;
41
- }
42
- /**
43
- * Unwrap a result or return a default value if it's an error
44
- */
45
- function unwrapOr(result, defaultValue) {
46
- if (isOk(result)) {
47
- return result.data;
48
- }
49
- return defaultValue;
50
- }
51
- //# sourceMappingURL=result.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/store/utils/result.ts"],"names":[],"mappings":";;AASA,gBAEC;AAKD,kBAEC;AAKD,oBAEC;AAKD,sBAEC;AAKD,wBAKC;AAKD,4BAKC;AA9CD;;GAEG;AACH,SAAgB,EAAE,CAAI,IAAO;IAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAgB,GAAG,CAAY,KAAQ;IACrC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAO,MAAoB;IAC7C,OAAO,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAO,MAAoB;IAC9C,OAAO,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAgB,MAAM,CAAO,MAAoB;IAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IACD,MAAM,MAAM,CAAC,KAAK,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAO,MAAoB,EAAE,YAAe;IAClE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC"}