@effect-dynamodb/geo 1.38.0 → 1.40.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.
@@ -72,10 +72,10 @@ export interface GeoEntity<A, P> {
72
72
  readonly recordSchema: Schema.Codec<any>;
73
73
  };
74
74
  /**
75
- * The entity's composite key-form normaliser — search must compose GSI keys
76
- * exactly as `put` wrote them (#111).
75
+ * The key form of a DOMAIN record — search must compose GSI keys exactly as
76
+ * `put` wrote them (#111), from the key form of the values `put` stores.
77
77
  */
78
- readonly _keyForm: (record: Record<string, unknown>) => Record<string, unknown>;
78
+ readonly _domainKeyForm: (record: Record<string, unknown>) => Record<string, unknown>;
79
79
  readonly put: (input: A) => P;
80
80
  }
81
81
  export interface GeoIndex<A, P> {
@@ -1 +1 @@
1
- {"version":3,"file":"GeoIndex.d.ts","sourceRoot":"","sources":["../src/GeoIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC1D,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,KAAK,EACL,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EAChB,MAAM,iBAAiB,CAAA;AAGxB,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAA;AACjC,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAA;AAMtC;;;;GAIG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAClD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IACjE,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,QAAQ,CAAC,aAAa,EAAE;QACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;QACjB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QAClB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;KAC5B,CAAA;CACF;AAED,4EAA4E;AAC5E,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAA;AAE3E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAA;IAC1B;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED,+DAA+D;AAC/D,MAAM,WAAW,SAAS,CAAC,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;IACzE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;IAC7D,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;IAC9D;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC/E,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;CAC9B;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC,EAAE,CAAC;IAC5B,yDAAyD;IACzD,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,MAAM,EAAE,CACf,OAAO,EAAE,aAAa,KACnB,MAAM,CAAC,MAAM,CAChB,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtB,iBAAiB,GAAG,eAAe,EACnC,YAAY,GAAG,KAAK,CAAC,WAAW,CACjC,CAAA;IACD,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,IAAI,GACf,CAAC,EACD,CAAC,EACD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,MAAM,CACnE,MAAM,EACN,WAAW,CAAC,eAAe,CAC5B,EACD,QAAQ;IACR,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;KAAE,CAAA;IACjE,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAA;IACvC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,WAAW,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5C,KAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CAqDhB,CAAA;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,CAAC,KACL,MAAM,CAAC,MAAM,CAChB,CAAC,EACC,iBAAiB,GACjB,eAAe,GACf,yBAAyB,GACzB,mBAAmB,GACnB,sBAAsB,GACtB,mBAAmB,EACrB,KAAK,CACN,CAAA;IACD,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,CACf,OAAO,EAAE,aAAa,KACnB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,GAAG,eAAe,EAAE,KAAK,CAAC,CAAA;IACtF,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAChC,oDAAoD;IACpD,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,KAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;CAChC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,CAAC,EACvB,UAAU,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KACvB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG,KAAK,CAAC,WAAW,CAuBtE,CAAA"}
1
+ {"version":3,"file":"GeoIndex.d.ts","sourceRoot":"","sources":["../src/GeoIndex.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC1D,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,KAAK,EACL,mBAAmB,EACnB,yBAAyB,EACzB,eAAe,EAChB,MAAM,iBAAiB,CAAA;AAGxB,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE5C,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAA;AACjC,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAA;AAMtC;;;;GAIG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAClD,QAAQ,CAAC,IAAI,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IACjE,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;IACvE,QAAQ,CAAC,aAAa,EAAE;QACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;QACjB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;QAClB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;KAC5B,CAAA;CACF;AAED,4EAA4E;AAC5E,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,SAAS,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAA;AAE3E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAA;IAC1B;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACtE,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED,+DAA+D;AAC/D,MAAM,WAAW,SAAS,CAAC,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAA;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;IACzE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;IAC7D,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;KAAE,CAAA;IAC9D;;;OAGG;IACH,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrF,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;CAC9B;AAED,MAAM,WAAW,QAAQ,CAAC,CAAC,EAAE,CAAC;IAC5B,yDAAyD;IACzD,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,MAAM,EAAE,CACf,OAAO,EAAE,aAAa,KACnB,MAAM,CAAC,MAAM,CAChB,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtB,iBAAiB,GAAG,eAAe,EACnC,YAAY,GAAG,KAAK,CAAC,WAAW,CACjC,CAAA;IACD,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,IAAI,GACf,CAAC,EACD,CAAC,EACD,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,MAAM,CACnE,MAAM,EACN,WAAW,CAAC,eAAe,CAC5B,EACD,QAAQ;IACR,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;KAAE,CAAA;IACjE,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAA;IACvC,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,WAAW,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5C,KAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CA2DhB,CAAA;AAMD;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,CAAC,KACL,MAAM,CAAC,MAAM,CAChB,CAAC,EACC,iBAAiB,GACjB,eAAe,GACf,yBAAyB,GACzB,mBAAmB,GACnB,sBAAsB,GACtB,mBAAmB,EACrB,KAAK,CACN,CAAA;IACD,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,CACf,OAAO,EAAE,aAAa,KACnB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,GAAG,eAAe,EAAE,KAAK,CAAC,CAAA;IACtF,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;IAChC,oDAAoD;IACpD,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EACrB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,KAC1D,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;CAChC;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,CAAC,EACvB,UAAU,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KACvB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG,KAAK,CAAC,WAAW,CAuBtE,CAAA"}
package/dist/GeoIndex.js CHANGED
@@ -45,6 +45,10 @@ export const make = (config) => {
45
45
  if (!indexDef) {
46
46
  throw new Error(`GeoIndex: index "${config.index}" not found on entity`);
47
47
  }
48
+ if (indexDef.shards !== undefined) {
49
+ throw new Error(`[EDD-9104] GeoIndex: index "${config.index}" is sharded, and a GeoIndex over a sharded ` +
50
+ `index isn't supported: its search plans read one partition per cell and time bucket.`);
51
+ }
48
52
  const bucketMs = BUCKET_MS[config.fields.timePartition.bucket];
49
53
  const enrich = (input) => {
50
54
  const coords = config.coordinates(input);
@@ -1 +1 @@
1
- {"version":3,"file":"GeoIndex.js","sourceRoot":"","sources":["../src/GeoIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GeoIndex.js","sourceRoot":"","sources":["../src/GeoIndex.ts"],"names":[],"mappings":"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"}
@@ -21,10 +21,11 @@ export interface SearchConfig<A> {
21
21
  readonly recordSchema: Schema.Codec<any>;
22
22
  };
23
23
  /**
24
- * The entity's composite key-form normaliser. Search composes GSI keys for
25
- * rows written by `Entity.put`, so both sides must use the same one (#111).
24
+ * The key form of a DOMAIN record (`Entity._domainKeyForm`). Search composes
25
+ * GSI keys for rows written by `Entity.put`, so it composes the key form of
26
+ * the values `put` stores for its domain values (#111).
26
27
  */
27
- readonly _keyForm: (record: Record<string, unknown>) => Record<string, unknown>;
28
+ readonly _domainKeyForm: (record: Record<string, unknown>) => Record<string, unknown>;
28
29
  };
29
30
  readonly indexDef: KeyComposer.IndexDefinition;
30
31
  readonly coordinates: (item: A) => Coordinates | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"GeoSearch.d.ts","sourceRoot":"","sources":["../src/GeoSearch.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAS,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAExF,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAIxF,8EAA8E;AAC9E,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAA;QAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;QACzE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;QAC7D,QAAQ,CAAC,OAAO,EAAE;YAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;SAAE,CAAA;QAC9D;;;WAGG;QACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAChF,CAAA;IACD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAA;IAC9C,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,WAAW,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAID;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EACtB,QAAQ,YAAY,CAAC,CAAC,CAAC,EACvB,SAAS,aAAa,KACrB,MAAM,CAAC,MAAM,CACd,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtB,iBAAiB,GAAG,eAAe,EACnC,YAAY,GAAG,KAAK,CAAC,WAAW,CAoK9B,CAAA"}
1
+ {"version":3,"file":"GeoSearch.d.ts","sourceRoot":"","sources":["../src/GeoSearch.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAS,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAExF,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAIxF,8EAA8E;AAC9E,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAA;QAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;QACzE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;QAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;QAC7D,QAAQ,CAAC,OAAO,EAAE;YAAE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;SAAE,CAAA;QAC9D;;;;WAIG;QACH,QAAQ,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KACtF,CAAA;IACD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,eAAe,CAAA;IAC9C,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,WAAW,GAAG,SAAS,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAID;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EACtB,QAAQ,YAAY,CAAC,CAAC,CAAC,EACvB,SAAS,aAAa,KACrB,MAAM,CAAC,MAAM,CACd,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EACtB,iBAAiB,GAAG,eAAe,EACnC,YAAY,GAAG,KAAK,CAAC,WAAW,CA4K9B,CAAA"}
package/dist/GeoSearch.js CHANGED
@@ -69,7 +69,8 @@ export const nearby = (config, options) => Effect.gen(function* () {
69
69
  // Group search cells by parent cell — when search resolution is low,
70
70
  // multiple search cells may map to the same parent cell at parentResolution
71
71
  const parentResolution = fields.parentCell.resolution;
72
- const queryConfigs = timePartitions.flatMap((partition) => sortedChunks
72
+ // `pkFilter` is the caller's: a value no key can hold is a ValidationError.
73
+ const composeQueryConfigs = () => timePartitions.flatMap((partition) => sortedChunks
73
74
  .map((chunk) => {
74
75
  const firstCell = chunk[0];
75
76
  const lastCell = chunk[chunk.length - 1];
@@ -89,18 +90,19 @@ export const nearby = (config, options) => Effect.gen(function* () {
89
90
  // a string on both sides, but a `timePartition: Schema.NumberFromString`
90
91
  // (a natural choice, since `computeTimePartition` returns a decimal
91
92
  // string) would compose an unpadded key the write never wrote (#111).
92
- const pkCompositesKeyForm = entity._keyForm({
93
+ const pkCompositesKeyForm = entity._domainKeyForm({
93
94
  ...pkFilter,
94
95
  [fields.parentCell.field]: parentCell,
95
96
  [fields.timePartition.field]: partition,
96
97
  });
97
98
  const pkValue = KeyComposer.composePk(entity._schema, entity.entityType, indexDef, pkCompositesKeyForm);
98
99
  // Compose full SK values with schema prefix (must match stored SK format)
99
- const lower = KeyComposer.composeSk(entity._schema, entity.entityType, 1, indexDef, entity._keyForm({ [fields.cell.field]: lowerCell }));
100
- const upper = KeyComposer.composeSk(entity._schema, entity.entityType, 1, indexDef, entity._keyForm({ [fields.cell.field]: upperCell }));
100
+ const lower = KeyComposer.composeSk(entity._schema, entity.entityType, 1, indexDef, entity._domainKeyForm({ [fields.cell.field]: lowerCell }));
101
+ const upper = KeyComposer.composeSk(entity._schema, entity.entityType, 1, indexDef, entity._domainKeyForm({ [fields.cell.field]: upperCell }));
101
102
  return { pkValue, lower, upper };
102
103
  })
103
104
  .filter((q) => q !== undefined));
105
+ const queryConfigs = yield* Query.orRefusal({ name: "GeoIndex.nearby", target: entity.entityType }, () => Effect.succeed(composeQueryConfigs()), (refusal) => Effect.fail(refusal));
104
106
  // Step 8: Build and execute all queries in parallel
105
107
  const allItems = yield* Effect.forEach(queryConfigs, (qc) => {
106
108
  const query = Query.make({
@@ -1 +1 @@
1
- {"version":3,"file":"GeoSearch.js","sourceRoot":"","sources":["../src/GeoSearch.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAgB,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAErD,OAAO,EAAqB,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACxF,OAAO,KAAK,EAAE,MAAM,OAAO,CAAA;AAE3B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAsB3C,MAAM,qBAAqB,GAAG,EAAE,CAAA;AAEhC;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,MAAuB,EACvB,OAAsB,EAKtB,EAAE,CACF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAG,GAAG,EAAE,IAAI,GAAG,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IACtE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAEtC,sDAAsD;IACtD,MAAM,gBAAgB,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IAC1E,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAA;IAElE,iCAAiC;IACjC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAEzC,gDAAgD;IAChD,MAAM,SAAS,GAAe,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAE3D,qCAAqC;IACrC,MAAM,WAAW,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAEzE,2DAA2D;IAC3D,MAAM,YAAY,GAAG,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;IAE3D,0BAA0B;IAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IACnE,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,IAAI,GAAG,CAAA;IAC9C,MAAM,cAAc,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;IAEhF,yEAAyE;IACzE,yEAAyE;IACzE,0EAA0E;IAC1E,2DAA2D;IAC3D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAA;IACtD,MAAM,YAAY,GAAG,CAAC,IAAO,EAAW,EAAE;QACxC,MAAM,SAAS,GAAI,IAAgC,CAAC,WAAW,CAAC,CAAA;QAChE,OAAO,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAA;IACxF,CAAC,CAAA;IAED,yDAAyD;IACzD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAC3C,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAA;IACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAA;IACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAA;IAEjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAoB,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;IAEpF,MAAM,OAAO,GAAG,CAAC,GAA4B,EAAE,EAAE,CAC/C,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,YAAiC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CACpF,MAAM,CAAC,QAAQ,CACb,CAAC,KAAK,EAAE,EAAE,CACR,IAAI,eAAe,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,kBAAkB;QAC7B,KAAK;KACN,CAAC,CACL,CACF,CAAA;IAEH,qEAAqE;IACrE,4EAA4E;IAC5E,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAA;IAErD,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CACxD,YAAY;SACT,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACxC,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAA;QAE7C,mFAAmF;QACnF,iFAAiF;QACjF,MAAM,UAAU,GACd,gBAAgB,GAAG,gBAAgB;YACjC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,CAAC;YACnD,CAAC,CAAC,SAAS,CAAA;QACf,MAAM,SAAS,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAA;QACxE,MAAM,SAAS,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAA;QAEtE,iEAAiE;QACjE,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,yEAAyE;QACzE,oEAAoE;QACpE,sEAAsE;QACtE,MAAM,mBAAmB,GAA4B,MAAM,CAAC,QAAQ,CAAC;YACnE,GAAG,QAAQ;YACX,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,UAAU;YACrC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,SAAS;SACxC,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CACnC,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,QAAQ,EACR,mBAAmB,CACpB,CAAA;QAED,0EAA0E;QAC1E,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CACjC,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,CAAC,EACD,QAAQ,EACR,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CACpD,CAAA;QACD,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CACjC,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,CAAC,EACD,QAAQ,EACR,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,CACpD,CAAA;QAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IAClC,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAC9D,CAAA;IAED,oDAAoD;IACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CACpC,YAAY,EACZ,CAAC,EAAE,EAAE,EAAE;QACL,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAI;YAC1B,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,eAAe;YAC1B,OAAO;YACP,OAAO,EAAE,EAAE,CAAC,OAAO;YACnB,OAAO;YACP,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC;YAChC,OAAO,EAAE,OAA8E;YACvF,gBAAgB;YAChB,SAAS,EAAE;gBACT,OAAO;gBACP,OAAO;gBACP,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK;gBAChC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK;aACjC;SACF,CAAC,CAAC,IAAI,CACL,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAU,EAAE,CAAC,EACvD,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAC7B,CAAA;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC7B,CAAC,EACD,EAAE,WAAW,EAAE,WAAW,EAAE,CAC7B,CAAA;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAA;IAEjC,mDAAmD;IACnD,MAAM,OAAO,GAA2B,EAAE,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QACvC,IAAI,CAAC,MAAM;YAAE,SAAQ;QAErB,MAAM,QAAQ,GAAG,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC9D,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,EAAE,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC/C,OAAO,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;AACrD,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"GeoSearch.js","sourceRoot":"","sources":["../src/GeoSearch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-dynamodb/geo",
3
- "version": "1.38.0",
3
+ "version": "1.40.0",
4
4
  "description": "Geospatial index and search for effect-dynamodb using H3 hexagonal grid",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -47,22 +47,24 @@
47
47
  },
48
48
  "peerDependencies": {
49
49
  "effect": "^4.1.0",
50
- "effect-dynamodb": "1.38.0"
50
+ "effect-dynamodb": "1.40.0"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@aws-sdk/client-dynamodb": "^3.1104.0",
54
54
  "@effect/vitest": "4.1.2",
55
55
  "@types/node": "^25.0.0",
56
56
  "effect": "4.1.2",
57
- "effect-dynamodb": "1.38.0",
57
+ "effect-dynamodb": "1.40.0",
58
58
  "typescript": "^6.0.3",
59
59
  "vitest": "^5.0.3"
60
60
  },
61
61
  "scripts": {
62
62
  "build": "tsc",
63
63
  "test": "vitest run",
64
+ "test:escape-on": "vitest run --config vitest.escape-on.ts",
64
65
  "test:watch": "vitest",
65
66
  "test:connected": "vitest run --config vitest.connected.ts",
67
+ "test:connected:escape-on": "vitest run --config vitest.connected.escape-on.ts",
66
68
  "check": "tsc --noEmit && tsc --noEmit -p tsconfig.examples.json && tsc --noEmit -p tsconfig.test.json",
67
69
  "lint": "biome check .",
68
70
  "lint:fix": "biome check --write ."