ugly-app 0.1.161 → 0.1.162
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/dist/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/server/PostgresFilter.d.ts.map +1 -1
- package/dist/server/PostgresFilter.js +6 -2
- package/dist/server/PostgresFilter.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/version.ts +1 -1
- package/src/server/PostgresFilter.ts +6 -2
package/dist/cli/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.1.
|
|
1
|
+
export declare const CLI_VERSION = "0.1.162";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/cli/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresFilter.d.ts","sourceRoot":"","sources":["../../src/server/PostgresFilter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAmBD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"PostgresFilter.d.ts","sourceRoot":"","sources":["../../src/server/PostgresFilter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,EAAE,CAAC;CACnB;AAmBD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAkFjF;AAED,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAOlE"}
|
|
@@ -31,12 +31,16 @@ export function translateFilter(filter) {
|
|
|
31
31
|
for (const [op, operand] of Object.entries(value)) {
|
|
32
32
|
switch (op) {
|
|
33
33
|
case '$in':
|
|
34
|
-
|
|
34
|
+
// MongoDB: {field: {$in: [vals]}} matches if field is scalar and equals any val,
|
|
35
|
+
// OR if field is an array and contains any val.
|
|
36
|
+
// Use a combined clause: scalar match OR JSONB array overlap.
|
|
37
|
+
clauses.push(`(${jsonbPath(field)} = ANY($${paramIdx}) OR ${jsonbPath(field, false)} ?| $${paramIdx})`);
|
|
35
38
|
values.push(operand);
|
|
36
39
|
paramIdx++;
|
|
37
40
|
break;
|
|
38
41
|
case '$nin':
|
|
39
|
-
|
|
42
|
+
// Inverse: scalar not in ANY, AND array doesn't overlap
|
|
43
|
+
clauses.push(`(${jsonbPath(field)} != ALL($${paramIdx}) AND NOT (${jsonbPath(field, false)} ?| $${paramIdx}))`);
|
|
40
44
|
values.push(operand);
|
|
41
45
|
paramIdx++;
|
|
42
46
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresFilter.js","sourceRoot":"","sources":["../../src/server/PostgresFilter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,0FAA0F;AAC1F,SAAS,SAAS,CAAC,KAAa,EAAE,MAAM,GAAG,IAAI;IAC7C,IAAI,KAAK,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IAClC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;IACjE,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,IAAI,GAAG,CAAC;AAC7E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtF,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAA+B;IAC7D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACpD,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;gBAC7E,QAAQ,EAAE,EAAE,CAAC;oBACX,KAAK,KAAK;wBACR,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"PostgresFilter.js","sourceRoot":"","sources":["../../src/server/PostgresFilter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/cli/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Auto-generated by prebuild — do not edit manually
|
|
2
|
-
export const CLI_VERSION = "0.1.
|
|
2
|
+
export const CLI_VERSION = "0.1.162";
|
|
@@ -38,12 +38,16 @@ export function translateFilter(filter: Record<string, unknown>): TranslatedFilt
|
|
|
38
38
|
for (const [op, operand] of Object.entries(value as Record<string, unknown>)) {
|
|
39
39
|
switch (op) {
|
|
40
40
|
case '$in':
|
|
41
|
-
|
|
41
|
+
// MongoDB: {field: {$in: [vals]}} matches if field is scalar and equals any val,
|
|
42
|
+
// OR if field is an array and contains any val.
|
|
43
|
+
// Use a combined clause: scalar match OR JSONB array overlap.
|
|
44
|
+
clauses.push(`(${jsonbPath(field)} = ANY($${paramIdx}) OR ${jsonbPath(field, false)} ?| $${paramIdx})`);
|
|
42
45
|
values.push(operand);
|
|
43
46
|
paramIdx++;
|
|
44
47
|
break;
|
|
45
48
|
case '$nin':
|
|
46
|
-
|
|
49
|
+
// Inverse: scalar not in ANY, AND array doesn't overlap
|
|
50
|
+
clauses.push(`(${jsonbPath(field)} != ALL($${paramIdx}) AND NOT (${jsonbPath(field, false)} ?| $${paramIdx}))`);
|
|
47
51
|
values.push(operand);
|
|
48
52
|
paramIdx++;
|
|
49
53
|
break;
|