@exabugs/dynamodb-client 1.0.2 → 1.0.3
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/CHANGELOG.md +18 -0
- package/dist/server/handler.cjs +9 -16
- package/dist/server/handler.cjs.map +2 -2
- package/dist/server/operations/find/idQuery.d.ts +0 -5
- package/dist/server/operations/find/idQuery.d.ts.map +1 -1
- package/dist/server/operations/find/idQuery.js +3 -3
- package/dist/server/operations/find/idQuery.js.map +1 -1
- package/dist/server/operations/find/shadowQuery.d.ts +0 -5
- package/dist/server/operations/find/shadowQuery.d.ts.map +1 -1
- package/dist/server/operations/find/shadowQuery.js +9 -9
- package/dist/server/operations/find/shadowQuery.js.map +1 -1
- package/dist/server/operations/find/types.d.ts +1 -8
- package/dist/server/operations/find/types.d.ts.map +1 -1
- package/dist/server/operations/find/types.js +0 -3
- package/dist/server/operations/find/types.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.0.3] - 2025-12-31
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **型安全性の向上**: `ParsedFilterField`の型定義を修正
|
|
15
|
+
- `find/types.ts`の重複した型定義を削除し、`filter.ts`からインポート
|
|
16
|
+
- `operator`フィールドを`string`型から`FilterOperator`型に変更
|
|
17
|
+
- TypeScriptコンパイラが`$`プレフィックスなしの演算子を検出できるように修正
|
|
18
|
+
|
|
19
|
+
- **ID最適化クエリ**: `$eq`演算子の比較を修正
|
|
20
|
+
- `idQuery.ts`で演算子比較が`'eq'`(`$`なし)になっていた問題を修正
|
|
21
|
+
- `getOne`操作で単一レコードが正しく取得できるように修正
|
|
22
|
+
- react-admin詳細画面が正常に動作するように修正
|
|
23
|
+
|
|
24
|
+
- **シャドウクエリ**: `$`プレフィックス付き演算子に統一
|
|
25
|
+
- `shadowQuery.ts`のswitch文で`'eq'`, `'gt'`, `'gte'`, `'lt'`, `'lte'`を`'$eq'`, `'$gt'`, `'$gte'`, `'$lt'`, `'$lte'`に修正
|
|
26
|
+
- すべてのクエリ最適化で一貫して`$`プレフィックス付き演算子を使用
|
|
27
|
+
|
|
10
28
|
## [1.0.2] - 2025-12-31
|
|
11
29
|
|
|
12
30
|
### Changed
|
package/dist/server/handler.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
// @exabugs/dynamodb-client v1.0.
|
|
2
|
-
// Built: 2025-12-
|
|
1
|
+
// @exabugs/dynamodb-client v1.0.3
|
|
2
|
+
// Built: 2025-12-31T01:03:53.388Z
|
|
3
3
|
"use strict";
|
|
4
4
|
var __create = Object.create;
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
@@ -29885,17 +29885,10 @@ async function executeIdQuery(resource, normalizedParams, requestId) {
|
|
|
29885
29885
|
hasFilters: parsedFilters.length > 0
|
|
29886
29886
|
});
|
|
29887
29887
|
const idFilter = parsedFilters.find((f4) => f4.parsed.field === "id");
|
|
29888
|
-
if (idFilter && idFilter.parsed.operator === "eq") {
|
|
29888
|
+
if (idFilter && idFilter.parsed.operator === "$eq") {
|
|
29889
29889
|
return await executeSpecificIdQuery(resource, String(idFilter.value), requestId);
|
|
29890
29890
|
}
|
|
29891
|
-
return await executeAllRecordsQuery(
|
|
29892
|
-
resource,
|
|
29893
|
-
sort,
|
|
29894
|
-
perPage,
|
|
29895
|
-
nextToken,
|
|
29896
|
-
parsedFilters,
|
|
29897
|
-
requestId
|
|
29898
|
-
);
|
|
29891
|
+
return await executeAllRecordsQuery(resource, sort, perPage, nextToken, parsedFilters, requestId);
|
|
29899
29892
|
}
|
|
29900
29893
|
__name(executeIdQuery, "executeIdQuery");
|
|
29901
29894
|
async function executeSpecificIdQuery(resource, targetId, requestId) {
|
|
@@ -30121,7 +30114,7 @@ function buildKeyCondition(resource, sortField, optimizableFilter) {
|
|
|
30121
30114
|
const encodedValue = encodeValueForShadowSK(value, type);
|
|
30122
30115
|
const skValue = `${sortField}#${encodedValue}`;
|
|
30123
30116
|
switch (operator) {
|
|
30124
|
-
case "eq":
|
|
30117
|
+
case "$eq":
|
|
30125
30118
|
return {
|
|
30126
30119
|
keyConditionExpression: "PK = :pk AND begins_with(SK, :skValue)",
|
|
30127
30120
|
expressionAttributeValues: {
|
|
@@ -30129,7 +30122,7 @@ function buildKeyCondition(resource, sortField, optimizableFilter) {
|
|
|
30129
30122
|
":skValue": `${skValue}#id#`
|
|
30130
30123
|
}
|
|
30131
30124
|
};
|
|
30132
|
-
case "gt":
|
|
30125
|
+
case "$gt":
|
|
30133
30126
|
return {
|
|
30134
30127
|
keyConditionExpression: "PK = :pk AND SK > :skValue",
|
|
30135
30128
|
expressionAttributeValues: {
|
|
@@ -30137,7 +30130,7 @@ function buildKeyCondition(resource, sortField, optimizableFilter) {
|
|
|
30137
30130
|
":skValue": `${skValue}#id#~`
|
|
30138
30131
|
}
|
|
30139
30132
|
};
|
|
30140
|
-
case "gte":
|
|
30133
|
+
case "$gte":
|
|
30141
30134
|
return {
|
|
30142
30135
|
keyConditionExpression: "PK = :pk AND SK >= :skValue",
|
|
30143
30136
|
expressionAttributeValues: {
|
|
@@ -30145,7 +30138,7 @@ function buildKeyCondition(resource, sortField, optimizableFilter) {
|
|
|
30145
30138
|
":skValue": `${skValue}#id#`
|
|
30146
30139
|
}
|
|
30147
30140
|
};
|
|
30148
|
-
case "lt":
|
|
30141
|
+
case "$lt":
|
|
30149
30142
|
return {
|
|
30150
30143
|
keyConditionExpression: "PK = :pk AND begins_with(SK, :skPrefix) AND SK < :skValue",
|
|
30151
30144
|
expressionAttributeValues: {
|
|
@@ -30154,7 +30147,7 @@ function buildKeyCondition(resource, sortField, optimizableFilter) {
|
|
|
30154
30147
|
":skValue": `${skValue}#id#`
|
|
30155
30148
|
}
|
|
30156
30149
|
};
|
|
30157
|
-
case "lte":
|
|
30150
|
+
case "$lte":
|
|
30158
30151
|
return {
|
|
30159
30152
|
keyConditionExpression: "PK = :pk AND begins_with(SK, :skPrefix) AND SK <= :skValue",
|
|
30160
30153
|
expressionAttributeValues: {
|