@exabugs/dynamodb-client 1.0.1 → 1.0.2

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 CHANGED
@@ -7,6 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.0.2] - 2025-12-31
11
+
12
+ ### Changed
13
+
14
+ - **BREAKING**: フィルター演算子を `$` プレフィックス必須に統一
15
+ - `FilterOperator` 型を `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$nin`, `$starts`, `$ends`, `$contains`, `$exists` に変更
16
+ - すべてのサーバー側フィルター処理で `$` プレフィックスを標準とする
17
+ - `$` なしの演算子はエラーとして扱う(明確なエラーメッセージ)
18
+ - MongoDB互換性を完全に保証
19
+
20
+ ### Fixed
21
+
22
+ - **サーバーサイドフィルター処理**: `$` プレフィックス付き演算子を正しく処理
23
+ - `find` 操作で `{ id: { $in: [...] } }` 形式のフィルターが正常に動作
24
+ - react-admin統合からのフィルターが正常に動作
25
+ - 一貫性のある演算子処理(モンキーパッチなし)
26
+
10
27
  ## [1.0.1] - 2025-12-31
11
28
 
12
29
  ### Fixed
@@ -1,5 +1,5 @@
1
- // @exabugs/dynamodb-client v1.0.1
2
- // Built: 2025-12-31T00:03:34.539Z
1
+ // @exabugs/dynamodb-client v1.0.2
2
+ // Built: 2025-12-31T00:36:11.060Z
3
3
  "use strict";
4
4
  var __create = Object.create;
5
5
  var __defProp = Object.defineProperty;
@@ -29683,7 +29683,7 @@ __name(normalizeSort, "normalizeSort");
29683
29683
  function parseFilterField(fieldKey) {
29684
29684
  const parts = fieldKey.split(":");
29685
29685
  if (parts.length === 1) {
29686
- return { field: parts[0], operator: "eq", type: "string" };
29686
+ return { field: parts[0], operator: "$eq", type: "string" };
29687
29687
  }
29688
29688
  if (parts.length === 2) {
29689
29689
  const operator = parts[1];
@@ -29708,18 +29708,18 @@ function parseFilterField(fieldKey) {
29708
29708
  __name(parseFilterField, "parseFilterField");
29709
29709
  function isValidOperator(operator) {
29710
29710
  return [
29711
- "eq",
29712
- "ne",
29713
- "lt",
29714
- "lte",
29715
- "gt",
29716
- "gte",
29717
- "in",
29718
- "nin",
29719
- "starts",
29720
- "ends",
29721
- "contains",
29722
- "exists"
29711
+ "$eq",
29712
+ "$ne",
29713
+ "$lt",
29714
+ "$lte",
29715
+ "$gt",
29716
+ "$gte",
29717
+ "$in",
29718
+ "$nin",
29719
+ "$starts",
29720
+ "$ends",
29721
+ "$contains",
29722
+ "$exists"
29723
29723
  ].includes(operator);
29724
29724
  }
29725
29725
  __name(isValidOperator, "isValidOperator");
@@ -29788,29 +29788,29 @@ function matchesAllFilters(record, parsedFilters) {
29788
29788
  const recordValue = record[field];
29789
29789
  const filterValue = filter.value;
29790
29790
  switch (operator) {
29791
- case "eq":
29791
+ case "$eq":
29792
29792
  return recordValue === filterValue;
29793
- case "ne":
29793
+ case "$ne":
29794
29794
  return recordValue !== filterValue;
29795
- case "gt":
29795
+ case "$gt":
29796
29796
  return recordValue != null && recordValue > filterValue;
29797
- case "gte":
29797
+ case "$gte":
29798
29798
  return recordValue != null && recordValue >= filterValue;
29799
- case "lt":
29799
+ case "$lt":
29800
29800
  return recordValue != null && recordValue < filterValue;
29801
- case "lte":
29801
+ case "$lte":
29802
29802
  return recordValue != null && recordValue <= filterValue;
29803
- case "in":
29803
+ case "$in":
29804
29804
  return Array.isArray(filterValue) && filterValue.includes(recordValue);
29805
- case "nin":
29805
+ case "$nin":
29806
29806
  return Array.isArray(filterValue) && !filterValue.includes(recordValue);
29807
- case "starts":
29807
+ case "$starts":
29808
29808
  return typeof recordValue === "string" && typeof filterValue === "string" && recordValue.startsWith(filterValue);
29809
- case "ends":
29809
+ case "$ends":
29810
29810
  return typeof recordValue === "string" && typeof filterValue === "string" && recordValue.endsWith(filterValue);
29811
- case "contains":
29811
+ case "$contains":
29812
29812
  return typeof recordValue === "string" && typeof filterValue === "string" && recordValue.includes(filterValue);
29813
- case "exists":
29813
+ case "$exists":
29814
29814
  return filterValue ? recordValue !== void 0 && recordValue !== null : recordValue === void 0 || recordValue === null;
29815
29815
  default:
29816
29816
  return true;