prostgles-types 1.5.155 → 1.5.158

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/filters.d.ts CHANGED
@@ -1,72 +1,17 @@
1
- export declare type CompareFilter<T = Date | number | string | boolean> = T | {
2
- "=": T;
3
- } | {
4
- "$eq": T;
5
- } | {
6
- "<>": T;
7
- } | {
8
- "$ne": T;
9
- } | {
10
- ">": T;
11
- } | {
12
- "$gt": T;
13
- } | {
14
- ">=": T;
15
- } | {
16
- "$gte": T;
17
- } | {
18
- "<=": T;
19
- } | {
20
- "$lte": T;
21
- } | {
22
- "$in": T[];
23
- } | {
24
- "$nin": T[];
25
- } | {
26
- "$between": [T, T];
27
- };
1
+ import { DBSchema } from ".";
2
+ import { ExactlyOne } from "./util";
28
3
  export declare const CompareFilterKeys: readonly ["=", "$eq", "<>", ">", ">=", "<=", "$eq", "$ne", "$gt", "$gte", "$lte"];
29
4
  export declare const CompareInFilterKeys: readonly ["$in", "$nin"];
30
- export declare const TextFilterKeys: readonly ["$ilike", "$like"];
31
- export declare type FullTextSearchFilter = {
32
- "to_tsquery": string[];
33
- } | {
34
- "plainto_tsquery": string[];
35
- } | {
36
- "phraseto_tsquery": string[];
37
- } | {
38
- "websearch_to_tsquery": string[];
39
- };
40
- export declare const TextFilter_FullTextSearchFilterKeys: readonly ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
41
- export declare type TextFilter = CompareFilter<string> | {
42
- "$ilike": string;
43
- } | {
44
- "$like": string;
45
- } | {
46
- "@@": FullTextSearchFilter;
47
- } | {
48
- "@>": FullTextSearchFilter;
49
- } | {
50
- "$contains": FullTextSearchFilter;
51
- } | {
52
- "<@": FullTextSearchFilter;
53
- } | {
54
- "$containedBy": FullTextSearchFilter;
5
+ export declare type CompareFilter<T = Date | number | string | boolean> = T | ExactlyOne<Record<typeof CompareFilterKeys[number], T>> | ExactlyOne<Record<typeof CompareInFilterKeys[number], T[]>> | {
6
+ "$between": [T, T];
55
7
  };
8
+ export declare const TextFilterKeys: readonly ["$ilike", "$like"];
56
9
  export declare const TextFilterFTSKeys: readonly ["@@", "@>", "<@", "$contains", "$containedBy"];
57
- export declare type ArrayFilter<T = (number | boolean | string)[]> = CompareFilter<T> | {
58
- "@>": T;
59
- } | {
60
- "$contains": T;
61
- } | {
62
- "<@": T;
63
- } | {
64
- "$containedBy": T;
65
- } | {
66
- "&&": T;
67
- } | {
68
- "$overlaps": T;
69
- };
10
+ export declare const TextFilter_FullTextSearchFilterKeys: readonly ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
11
+ export declare type FullTextSearchFilter = ExactlyOne<Record<typeof TextFilter_FullTextSearchFilterKeys[number], string[]>>;
12
+ export declare type TextFilter = CompareFilter<string> | ExactlyOne<Record<typeof TextFilterKeys[number], string>> | ExactlyOne<Record<typeof TextFilterFTSKeys[number], FullTextSearchFilter>>;
13
+ export declare const ArrayFilterOperands: readonly ["@@", "@>", "<@", "$contains", "$containedBy", "&&", "$overlaps"];
14
+ export declare type ArrayFilter<T = (number | boolean | string)[]> = CompareFilter<T> | ExactlyOne<Record<typeof ArrayFilterOperands[number], T>>;
70
15
  export declare type GeoBBox = {
71
16
  ST_MakeEnvelope: number[];
72
17
  };
@@ -94,23 +39,26 @@ declare type StringFilter<Field extends string, DataType extends any> = BasicFil
94
39
  }> | Partial<{
95
40
  [K in Extract<typeof TextFilterFTSKeys[number], string> as `${Field}.${K}`]: any;
96
41
  }>);
97
- declare type ValueOf<T> = T[keyof T];
42
+ export declare type ValueOf<T> = T[keyof T];
98
43
  declare type ShorthandFilter<Obj extends Record<string, any>> = ValueOf<{
99
44
  [K in keyof Obj]: Obj[K] extends string ? StringFilter<K, Required<Obj>[K]> : BasicFilter<K, Required<Obj>[K]>;
100
45
  }>;
101
46
  export declare type FilterForObject<T extends AnyObject = AnyObject> = {
102
47
  [K in keyof Partial<T>]: FilterDataType<T[K]>;
103
48
  } | ShorthandFilter<T>;
104
- export declare type FilterItem<T extends AnyObject = AnyObject> = FilterForObject<T> | Partial<{
105
- [key in EXISTS_KEY]: {
106
- [key: string]: FilterForObject;
49
+ export declare type ExistsFilter<S = void> = Partial<{
50
+ [key in EXISTS_KEY]: S extends DBSchema ? ExactlyOne<{
51
+ [tname in keyof S]: FullFilter<S[tname]["columns"], S>;
52
+ }> : {
53
+ [key: string]: FullFilter;
107
54
  };
108
55
  }>;
109
- export declare type FullFilter<T extends AnyObject = AnyObject> = {
56
+ export declare type FilterItem<T extends AnyObject = AnyObject> = FilterForObject<T>;
57
+ export declare type FullFilter<T extends AnyObject = AnyObject, S = void> = {
110
58
  $and: FullFilter<T>[];
111
59
  } | {
112
60
  $or: FullFilter<T>[];
113
- } | FilterItem<T>;
61
+ } | FilterItem<T> | ExistsFilter<S>;
114
62
  export declare type FullFilterBasic<T = {
115
63
  [key: string]: any;
116
64
  }> = {
@@ -1 +1 @@
1
- {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../lib/filters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../lib/filters.ts"],"names":[],"mappings":"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"}
package/dist/filters.js CHANGED
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EXISTS_KEYS = exports.GeomFilter_Funcs = exports.GeomFilterKeys = exports.TextFilterFTSKeys = exports.TextFilter_FullTextSearchFilterKeys = exports.TextFilterKeys = exports.CompareInFilterKeys = exports.CompareFilterKeys = void 0;
3
+ exports.EXISTS_KEYS = exports.GeomFilter_Funcs = exports.GeomFilterKeys = exports.ArrayFilterOperands = exports.TextFilter_FullTextSearchFilterKeys = exports.TextFilterFTSKeys = exports.TextFilterKeys = exports.CompareInFilterKeys = exports.CompareFilterKeys = void 0;
4
4
  exports.CompareFilterKeys = ["=", "$eq", "<>", ">", ">=", "<=", "$eq", "$ne", "$gt", "$gte", "$lte"];
5
5
  exports.CompareInFilterKeys = ["$in", "$nin"];
6
6
  exports.TextFilterKeys = ["$ilike", "$like"];
7
- exports.TextFilter_FullTextSearchFilterKeys = ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
8
7
  exports.TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"];
8
+ exports.TextFilter_FullTextSearchFilterKeys = ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
9
+ exports.ArrayFilterOperands = [...exports.TextFilterFTSKeys, "&&", "$overlaps"];
9
10
  exports.GeomFilterKeys = ["~", "~=", "@", "|&>", "|>>", ">>", "=", "<<|", "<<", "&>", "&<|", "&<", "&&&", "&&"];
10
11
  const _GeomFilter_Funcs = ["ST_MakeEnvelope", "ST_MakePolygon"];
11
12
  exports.GeomFilter_Funcs = _GeomFilter_Funcs.concat(_GeomFilter_Funcs.map(v => v.toLowerCase()));
@@ -16,7 +17,7 @@ const f = {
16
17
  const forcedFilter = {
17
18
  $and: [
18
19
  { "h.$eq": [] },
19
- { h: { "$gt": undefined } }
20
+ { h: { "$containedBy": [] } }
20
21
  ]
21
22
  };
22
23
  //# sourceMappingURL=filters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../lib/filters.ts"],"names":[],"mappings":";;;AAqBa,QAAA,iBAAiB,GAAG,CAAC,GAAG,EAAE,KAAK,EAAC,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,CAAU,CAAC;AAC7F,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,CAAU,CAAC;AAC/C,QAAA,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;AAQ9C,QAAA,mCAAmC,GAAG,CAAC,YAAY,EAAC,iBAAiB,EAAC,kBAAkB,EAAC,sBAAsB,CAAU,CAAC;AAW1H,QAAA,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,CAAU,CAAC;AAoD7E,QAAA,cAAc,GAAG,CAAC,GAAG,EAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAU,CAAC;AAC1H,MAAM,iBAAiB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAA;AAClD,QAAA,gBAAgB,GAAI,iBAAiB,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAe1F,QAAA,WAAW,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAU,CAAC;AAiEnG,MAAM,CAAC,GAAmB;IACvB,OAAO,EAAE,CAAC,GAAG,CAAC;CAChB,CAAA;AACD,MAAM,YAAY,GAAmB;IAEnC,IAAI,EAAE;QACJ,EAAE,OAAO,EAAE,EAAE,EAAE;QACf,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;KAC5B;CACF,CAAA"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../lib/filters.ts"],"names":[],"mappings":";;;AAIa,QAAA,iBAAiB,GAAG,CAAC,GAAG,EAAE,KAAK,EAAC,IAAI,EAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,CAAU,CAAC;AAC7F,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,CAAU,CAAC;AAe/C,QAAA,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;AAE9C,QAAA,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,CAAU,CAAC;AAE7E,QAAA,mCAAmC,GAAG,CAAC,YAAY,EAAC,iBAAiB,EAAC,kBAAkB,EAAC,sBAAsB,CAAU,CAAC;AAW1H,QAAA,mBAAmB,GAAG,CAAC,GAAG,yBAAiB,EAAE,IAAI,EAAE,WAAW,CAAU,CAAC;AAiDzE,QAAA,cAAc,GAAG,CAAC,GAAG,EAAC,IAAI,EAAC,GAAG,EAAC,KAAK,EAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAU,CAAC;AAC1H,MAAM,iBAAiB,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAA;AAClD,QAAA,gBAAgB,GAAI,iBAAiB,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAe1F,QAAA,WAAW,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAU,CAAC;AAuEnG,MAAM,CAAC,GAAmB;IACvB,OAAO,EAAE,CAAC,GAAG,CAAC;CAChB,CAAA;AACD,MAAM,YAAY,GAAmB;IAEnC,IAAI,EAAE;QACJ,EAAE,OAAO,EAAE,EAAE,EAAE;QACf,EAAE,CAAC,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE;KAC9B;CACF,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { FullFilter, AnyObject, FullFilterBasic } from "./filters";
1
+ import { FullFilter, AnyObject, FullFilterBasic, ValueOf } from "./filters";
2
2
  export declare const _PG_strings: readonly ["bpchar", "char", "varchar", "text", "citext", "uuid", "bytea", "inet", "time", "timetz", "interval", "name"];
3
3
  export declare const _PG_numbers: readonly ["int2", "int4", "int8", "float4", "float8", "numeric", "money", "oid"];
4
4
  export declare const _PG_json: readonly ["json", "jsonb"];
@@ -123,7 +123,7 @@ export declare type InsertParams<T extends AnyObject = any> = {
123
123
  onConflictDoNothing?: boolean;
124
124
  fixIssues?: boolean;
125
125
  };
126
- export declare type DeleteParams<T = AnyObject> = {
126
+ export declare type DeleteParams<T extends AnyObject = AnyObject> = {
127
127
  returning?: Select<T>;
128
128
  };
129
129
  export declare type SubscribeParamsBasic = CommonSelectParams & {
@@ -154,9 +154,17 @@ export declare type TableInfo = {
154
154
  dynamicRules?: {
155
155
  update?: boolean;
156
156
  };
157
+ info?: {
158
+ label?: string;
159
+ };
157
160
  };
158
161
  export declare type OnError = (err: any) => void;
159
162
  declare type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObject> = O extends {
163
+ returnType: "values";
164
+ select: Record<string, 1>;
165
+ } ? ValueOf<Pick<TD, keyof O["select"]>> : O extends {
166
+ returnType: "values";
167
+ } ? any : O extends {
160
168
  select: "*";
161
169
  } ? TD : O extends {
162
170
  select: "";
@@ -167,13 +175,13 @@ declare type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObjec
167
175
  } ? Omit<TD, keyof O["select"]> : TD;
168
176
  declare type GetUpdateReturnType<O extends UpdateParams, TD extends AnyObject> = O extends {
169
177
  returning: "*";
170
- } ? TD : O extends {
178
+ } ? Required<TD> : O extends {
171
179
  returning: "";
172
180
  } ? Record<string, never> : O extends {
173
181
  returning: Record<string, 1>;
174
- } ? Pick<TD, keyof O["returning"]> : O extends {
182
+ } ? Pick<Required<TD>, keyof O["returning"]> : O extends {
175
183
  returning: Record<string, 0>;
176
- } ? Omit<TD, keyof O["returning"]> : void;
184
+ } ? Omit<Required<TD>, keyof O["returning"]> : void;
177
185
  export declare type SubscriptionHandler<T = AnyObject> = {
178
186
  unsubscribe: () => Promise<any>;
179
187
  update?: (newData: T, updateParams: UpdateParams<T>) => Promise<any>;
@@ -185,22 +193,22 @@ declare type GetColumns = (lang?: string, params?: {
185
193
  data: AnyObject;
186
194
  filter: AnyObject;
187
195
  }) => Promise<ValidatedColumnInfo[]>;
188
- export declare type ViewHandler<TD = AnyObject> = {
196
+ export declare type ViewHandler<TD = AnyObject, S = void> = {
189
197
  getInfo?: (lang?: string) => Promise<TableInfo>;
190
198
  getColumns?: GetColumns;
191
- find: <P extends SelectParams<TD>>(filter?: FullFilter<TD>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>[]>;
192
- findOne: <P extends SelectParams<TD>>(filter?: FullFilter<TD>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>>;
193
- subscribe: <P extends SubscribeParams<TD>>(filter: FullFilter<TD>, params: P, onData: (items: GetSelectReturnType<P, TD>[], onError?: OnError) => any) => Promise<SubscriptionHandler<TD>>;
194
- subscribeOne: <P extends SubscribeParams<TD>>(filter: FullFilter<TD>, params: P, onData: (item: GetSelectReturnType<P, TD>) => any, onError?: OnError) => Promise<SubscriptionHandler<TD>>;
195
- count: (filter?: FullFilter<TD>) => Promise<number>;
199
+ find: <P extends SelectParams<TD>>(filter?: FullFilter<TD, S>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>[]>;
200
+ findOne: <P extends SelectParams<TD>>(filter?: FullFilter<TD, S>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>>;
201
+ subscribe: <P extends SubscribeParams<TD>>(filter: FullFilter<TD, S>, params: P, onData: (items: GetSelectReturnType<P, TD>[], onError?: OnError) => any) => Promise<SubscriptionHandler<TD>>;
202
+ subscribeOne: <P extends SubscribeParams<TD>>(filter: FullFilter<TD, S>, params: P, onData: (item: GetSelectReturnType<P, TD>) => any, onError?: OnError) => Promise<SubscriptionHandler<TD>>;
203
+ count: (filter?: FullFilter<TD, S>) => Promise<number>;
196
204
  size: (filter?: FullFilter<TD>, selectParams?: SelectParams<TD>) => Promise<string>;
197
205
  };
198
- export declare type TableHandler<TD = AnyObject> = ViewHandler<TD> & {
199
- update: <P extends UpdateParams<TD>>(filter: FullFilter<TD>, newData: PartialLax<TD>, params?: UpdateParams<TD>) => Promise<GetUpdateReturnType<P, TD>>;
200
- updateBatch: (data: [FullFilter<TD>, PartialLax<TD>][], params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
201
- upsert: (filter: FullFilter<TD>, newData: PartialLax<TD>, params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
206
+ export declare type TableHandler<TD = AnyObject, S = void> = ViewHandler<TD, S> & {
207
+ update: <P extends UpdateParams<TD>>(filter: FullFilter<TD, S>, newData: PartialLax<TD>, params?: P) => Promise<GetUpdateReturnType<P, TD>>;
208
+ updateBatch: (data: [FullFilter<TD, S>, PartialLax<TD>][], params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
209
+ upsert: <P extends UpdateParams<TD>>(filter: FullFilter<TD, S>, newData: PartialLax<TD>, params?: P) => Promise<GetUpdateReturnType<P, TD>>;
202
210
  insert: <P extends UpdateParams<TD>>(data: (TD | TD[]), params?: P) => Promise<GetUpdateReturnType<P, TD>>;
203
- delete: <P extends UpdateParams<TD>>(filter?: FullFilter<TD>, params?: DeleteParams<TD>) => Promise<GetUpdateReturnType<P, TD>>;
211
+ delete: <P extends DeleteParams<TD>>(filter?: FullFilter<TD, S>, params?: P) => Promise<GetUpdateReturnType<P, TD>>;
204
212
  };
205
213
  export declare type ViewHandlerBasic = {
206
214
  getInfo?: (lang?: string) => Promise<TableInfo>;
@@ -273,7 +281,7 @@ declare type UpsertMethods<T extends DBTableSchema> = T["insert"] extends true ?
273
281
  declare type DeleteMethods<T extends DBTableSchema> = T["delete"] extends true ? keyof Pick<TableHandler, "delete"> : never;
274
282
  export declare type ValidatedMethods<T extends DBTableSchema> = SelectMethods<T> | UpdateMethods<T> | InsertMethods<T> | UpsertMethods<T> | DeleteMethods<T>;
275
283
  export declare type DBHandler<S = void> = (S extends DBSchema ? {
276
- [k in keyof S]: S[k]["is_view"] extends true ? ViewHandler<S[k]["columns"]> : Pick<TableHandler<S[k]["columns"]>, ValidatedMethods<S[k]>>;
284
+ [k in keyof S]: S[k]["is_view"] extends true ? ViewHandler<S[k]["columns"], S> : Pick<TableHandler<S[k]["columns"], S>, ValidatedMethods<S[k]>>;
277
285
  } : {
278
286
  [key: string]: Partial<TableHandler>;
279
287
  }) & DbJoinMaker & {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGa,QAAA,WAAW,GAAG,CAAC,QAAQ,EAAC,MAAM,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,OAAO,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,UAAU,EAAC,MAAM,CAAU,CAAC;AAC3H,QAAA,WAAW,GAAG,CAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,EAAC,KAAK,CAAU,CAAC;AACxF,QAAA,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,CAAU,CAAC;AACtC,QAAA,QAAQ,GAAG,CAAC,MAAM,CAAU,CAAC;AAC7B,QAAA,QAAQ,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAU,CAAC;AACzD,QAAA,WAAW,GAAG,CAAC,UAAU,EAAE,WAAW,CAAU,CAAC;AASjD,QAAA,WAAW,GAAG;IACvB,QAAQ,EAAE,mBAAW;IACrB,QAAQ,EAAE,mBAAW;IACrB,SAAS,EAAE,gBAAQ;IAEnB,MAAM,EAAE,gBAAQ;IAChB,eAAe,EAAE,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IAC9C,gBAAgB,EAAE,gBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5C,eAAe,EAAE,mBAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IAC9C,eAAe,EAAE,gBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IAC3C,aAAa,EAAE,gBAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IACzC,KAAK,EAAE,EAAE;CACH,CAAC;AAgjBX,MAAM,OAAO,GAAG,WAAW,CAAC;AACf,QAAA,QAAQ,GAAG;IACtB,cAAc,EAAE,OAAO,GAAG,gBAAgB;IAC1C,MAAM,EAAE,OAAO,GAAG,QAAQ;IAG1B,OAAO,EAAE,OAAO;IAChB,GAAG,EAAE,GAAG,OAAO,KAAK;IACpB,MAAM,EAAE,GAAG,OAAO,QAAQ;IAC1B,SAAS,EAAE,GAAG,OAAO,QAAQ;IAC7B,SAAS,EAAE,GAAG,OAAO,QAAQ;IAG7B,QAAQ,EAAE,GAAG,OAAO,UAAU;IAC9B,KAAK,EAAE,GAAG,OAAO,OAAO;IACxB,MAAM,EAAE,GAAG,OAAO,QAAQ;IAC1B,SAAS,EAAE,GAAG,OAAO,WAAW;IAEhC,QAAQ,EAAE,OAAO;CAClB,CAAA;AAiBY,QAAA,YAAY,GAAG;IAC1B,YAAY,EAAE,CAAC,YAAY,CAAC;IAC5B,SAAS,EAAE,CAAC,SAAS,CAAC;IACtB,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC9B,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC;IAC7C,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC;IAC9C,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC9B,MAAM,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,WAAW,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC;CACjD,CAAA;AA6DV,+BAA6H;AAApH,8FAAA,MAAM,OAAA;AAAE,oGAAA,YAAY,OAAA;AAAE,+FAAA,OAAO,OAAA;AAAE,uGAAA,eAAe,OAAA;AAAE,mGAAA,WAAW,OAAA;AAAE,2FAAA,GAAG,OAAA;AAAE,2FAAA,GAAG,OAAA;AAAE,iGAAA,SAAS,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAAE,+FAAA,OAAO,OAAA;AAC5G,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
package/dist/index_umd.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var i=t();for(var n in i)("object"==typeof exports?exports:e)[n]=i[n]}}(this||window,(()=>(()=>{"use strict";var e={444:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.EXISTS_KEYS=t.GeomFilter_Funcs=t.GeomFilterKeys=t.TextFilterFTSKeys=t.TextFilter_FullTextSearchFilterKeys=t.TextFilterKeys=t.CompareInFilterKeys=t.CompareFilterKeys=void 0,t.CompareFilterKeys=["=","$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"],t.CompareInFilterKeys=["$in","$nin"],t.TextFilterKeys=["$ilike","$like"],t.TextFilter_FullTextSearchFilterKeys=["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"],t.TextFilterFTSKeys=["@@","@>","<@","$contains","$containedBy"],t.GeomFilterKeys=["~","~=","@","|&>","|>>",">>","=","<<|","<<","&>","&<|","&<","&&&","&&"];const i=["ST_MakeEnvelope","ST_MakePolygon"];t.GeomFilter_Funcs=i.concat(i.map((e=>e.toLowerCase()))),t.EXISTS_KEYS=["$exists","$notExists","$existsJoined","$notExistsJoined"]},590:function(e,t,i){var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||n(t,e,i)};Object.defineProperty(t,"__esModule",{value:!0}),t.getKeys=t.isObject=t.isDefined=t.get=t.WAL=t.unpatchText=t.stableStringify=t.isEmpty=t.getTextPatch=t.asName=t.RULE_METHODS=t.CHANNELS=t.TS_PG_Types=t._PG_postgis=t._PG_date=t._PG_bool=t._PG_json=t._PG_numbers=t._PG_strings=void 0,t._PG_strings=["bpchar","char","varchar","text","citext","uuid","bytea","inet","time","timetz","interval","name"],t._PG_numbers=["int2","int4","int8","float4","float8","numeric","money","oid"],t._PG_json=["json","jsonb"],t._PG_bool=["bool"],t._PG_date=["date","timestamp","timestamptz"],t._PG_postgis=["geometry","geography"],t.TS_PG_Types={string:t._PG_strings,number:t._PG_numbers,boolean:t._PG_bool,Date:t._PG_date,"Array<number>":t._PG_numbers.map((e=>`_${e}`)),"Array<boolean>":t._PG_bool.map((e=>`_${e}`)),"Array<string>":t._PG_strings.map((e=>`_${e}`)),"Array<Object>":t._PG_json.map((e=>`_${e}`)),"Array<Date>":t._PG_date.map((e=>`_${e}`)),any:[]};const s="_psqlWS_.";t.CHANNELS={SCHEMA_CHANGED:s+"schema-changed",SCHEMA:s+"schema",DEFAULT:s,SQL:"_psqlWS_.sql",METHOD:"_psqlWS_.method",NOTICE_EV:"_psqlWS_.notice",LISTEN_EV:"_psqlWS_.listen",REGISTER:"_psqlWS_.register",LOGIN:"_psqlWS_.login",LOGOUT:"_psqlWS_.logout",AUTHGUARD:"_psqlWS_.authguard",_preffix:s},t.RULE_METHODS={getColumns:["getColumns"],getInfo:["getInfo"],insert:["insert","upsert"],update:["update","upsert","updateBatch"],select:["findOne","find","count","size"],delete:["delete","remove"],sync:["sync","unsync"],subscribe:["unsubscribe","subscribe","subscribeOne"]};var o=i(128);Object.defineProperty(t,"asName",{enumerable:!0,get:function(){return o.asName}}),Object.defineProperty(t,"getTextPatch",{enumerable:!0,get:function(){return o.getTextPatch}}),Object.defineProperty(t,"isEmpty",{enumerable:!0,get:function(){return o.isEmpty}}),Object.defineProperty(t,"stableStringify",{enumerable:!0,get:function(){return o.stableStringify}}),Object.defineProperty(t,"unpatchText",{enumerable:!0,get:function(){return o.unpatchText}}),Object.defineProperty(t,"WAL",{enumerable:!0,get:function(){return o.WAL}}),Object.defineProperty(t,"get",{enumerable:!0,get:function(){return o.get}}),Object.defineProperty(t,"isDefined",{enumerable:!0,get:function(){return o.isDefined}}),Object.defineProperty(t,"isObject",{enumerable:!0,get:function(){return o.isObject}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return o.getKeys}}),r(i(444),t)},899:(e,t)=>{function i(e,t){var i=e[0],n=e[1],a=e[2],l=e[3];i=r(i,n,a,l,t[0],7,-680876936),l=r(l,i,n,a,t[1],12,-389564586),a=r(a,l,i,n,t[2],17,606105819),n=r(n,a,l,i,t[3],22,-1044525330),i=r(i,n,a,l,t[4],7,-176418897),l=r(l,i,n,a,t[5],12,1200080426),a=r(a,l,i,n,t[6],17,-1473231341),n=r(n,a,l,i,t[7],22,-45705983),i=r(i,n,a,l,t[8],7,1770035416),l=r(l,i,n,a,t[9],12,-1958414417),a=r(a,l,i,n,t[10],17,-42063),n=r(n,a,l,i,t[11],22,-1990404162),i=r(i,n,a,l,t[12],7,1804603682),l=r(l,i,n,a,t[13],12,-40341101),a=r(a,l,i,n,t[14],17,-1502002290),i=s(i,n=r(n,a,l,i,t[15],22,1236535329),a,l,t[1],5,-165796510),l=s(l,i,n,a,t[6],9,-1069501632),a=s(a,l,i,n,t[11],14,643717713),n=s(n,a,l,i,t[0],20,-373897302),i=s(i,n,a,l,t[5],5,-701558691),l=s(l,i,n,a,t[10],9,38016083),a=s(a,l,i,n,t[15],14,-660478335),n=s(n,a,l,i,t[4],20,-405537848),i=s(i,n,a,l,t[9],5,568446438),l=s(l,i,n,a,t[14],9,-1019803690),a=s(a,l,i,n,t[3],14,-187363961),n=s(n,a,l,i,t[8],20,1163531501),i=s(i,n,a,l,t[13],5,-1444681467),l=s(l,i,n,a,t[2],9,-51403784),a=s(a,l,i,n,t[7],14,1735328473),i=o(i,n=s(n,a,l,i,t[12],20,-1926607734),a,l,t[5],4,-378558),l=o(l,i,n,a,t[8],11,-2022574463),a=o(a,l,i,n,t[11],16,1839030562),n=o(n,a,l,i,t[14],23,-35309556),i=o(i,n,a,l,t[1],4,-1530992060),l=o(l,i,n,a,t[4],11,1272893353),a=o(a,l,i,n,t[7],16,-155497632),n=o(n,a,l,i,t[10],23,-1094730640),i=o(i,n,a,l,t[13],4,681279174),l=o(l,i,n,a,t[0],11,-358537222),a=o(a,l,i,n,t[3],16,-722521979),n=o(n,a,l,i,t[6],23,76029189),i=o(i,n,a,l,t[9],4,-640364487),l=o(l,i,n,a,t[12],11,-421815835),a=o(a,l,i,n,t[15],16,530742520),i=c(i,n=o(n,a,l,i,t[2],23,-995338651),a,l,t[0],6,-198630844),l=c(l,i,n,a,t[7],10,1126891415),a=c(a,l,i,n,t[14],15,-1416354905),n=c(n,a,l,i,t[5],21,-57434055),i=c(i,n,a,l,t[12],6,1700485571),l=c(l,i,n,a,t[3],10,-1894986606),a=c(a,l,i,n,t[10],15,-1051523),n=c(n,a,l,i,t[1],21,-2054922799),i=c(i,n,a,l,t[8],6,1873313359),l=c(l,i,n,a,t[15],10,-30611744),a=c(a,l,i,n,t[6],15,-1560198380),n=c(n,a,l,i,t[13],21,1309151649),i=c(i,n,a,l,t[4],6,-145523070),l=c(l,i,n,a,t[11],10,-1120210379),a=c(a,l,i,n,t[2],15,718787259),n=c(n,a,l,i,t[9],21,-343485551),e[0]=f(i,e[0]),e[1]=f(n,e[1]),e[2]=f(a,e[2]),e[3]=f(l,e[3])}function n(e,t,i,n,r,s){return t=f(f(t,e),f(n,s)),f(t<<r|t>>>32-r,i)}function r(e,t,i,r,s,o,c){return n(t&i|~t&r,e,t,s,o,c)}function s(e,t,i,r,s,o,c){return n(t&r|i&~r,e,t,s,o,c)}function o(e,t,i,r,s,o,c){return n(t^i^r,e,t,s,o,c)}function c(e,t,i,r,s,o,c){return n(i^(t|~r),e,t,s,o,c)}function a(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return i}Object.defineProperty(t,"__esModule",{value:!0}),t.md5=t.md5cycle=void 0,t.md5cycle=i;var l="0123456789abcdef".split("");function u(e){for(var t="",i=0;i<4;i++)t+=l[e>>8*i+4&15]+l[e>>8*i&15];return t}function d(e){return function(e){for(var t=0;t<e.length;t++)e[t]=u(e[t]);return e.join("")}(function(e){var t,n=e.length,r=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=e.length;t+=64)i(r,a(e.substring(t-64,t)));e=e.substring(t-64);var s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<e.length;t++)s[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(s[t>>2]|=128<<(t%4<<3),t>55)for(i(r,s),t=0;t<16;t++)s[t]=0;return s[14]=8*n,i(r,s),r}(e))}function f(e,t){return e+t&4294967295}t.md5=d,d("hello")},128:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getKeys=t.isDefined=t.isObject=t.get=t.isEmpty=t.WAL=t.unpatchText=t.getTextPatch=t.stableStringify=t.asName=void 0;const n=i(899);function r(e){for(var t in e)return!1;return!0}t.asName=function(e){if(null==e||!e.toString||!e.toString())throw"Expecting a non empty string";return`"${e.toString().replace(/"/g,'""')}"`},t.stableStringify=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var i,n="boolean"==typeof t.cycles&&t.cycles,r=t.cmp&&(i=t.cmp,function(e){return function(t,n){var r={key:t,value:e[t]},s={key:n,value:e[n]};return i(r,s)}}),s=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var i,o;if(Array.isArray(t)){for(o="[",i=0;i<t.length;i++)i&&(o+=","),o+=e(t[i])||"null";return o+"]"}if(null===t)return"null";if(-1!==s.indexOf(t)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var c=s.push(t)-1,a=Object.keys(t).sort(r&&r(t));for(o="",i=0;i<a.length;i++){var l=a[i],u=e(t[l]);u&&(o&&(o+=","),o+=JSON.stringify(l)+":"+u)}return s.splice(c,1),"{"+o+"}"}}(e)},t.getTextPatch=function(e,t){if(!(e&&t&&e.trim().length&&t.trim().length))return t;if(e===t)return{from:0,to:0,text:"",md5:(0,n.md5)(t)};function i(i=1){let n=i<1?-1:0,r=!1;for(;!r&&Math.abs(n)<=t.length;){const s=i<1?[n]:[0,n];e.slice(...s)!==t.slice(...s)?r=!0:n+=1*Math.sign(i)}return n}let r=i()-1,s=e.length+i(-1)+1,o=t.length+i(-1)+1;return{from:r,to:s,text:t.slice(r,o),md5:(0,n.md5)(t)}},t.unpatchText=function(e,t){if(!t||"string"==typeof t)return t;const{from:i,to:r,text:s,md5:o}=t;if(null===s||null===e)return s;let c=e.slice(0,i)+s+e.slice(r);if(o&&(0,n.md5)(c)!==o)throw"Patch text error: Could not match md5 hash: (original/result) \n"+e+"\n"+c;return c},t.WAL=class{constructor(e){if(this.changed={},this.sending={},this.sentHistory={},this.callbacks=[],this.sort=(e,t)=>{const{orderBy:i}=this.options;return i&&e&&t&&i.map((i=>{if(!(i.fieldName in e)||!(i.fieldName in t))throw"Replication error: \n some orderBy fields missing from data";let n=i.asc?e[i.fieldName]:t[i.fieldName],r=i.asc?t[i.fieldName]:e[i.fieldName],s=+n-+r,o=n<r?-1:n==r?0:1;return"number"===i.tsDataType&&Number.isFinite(s)?s:o})).find((e=>e))||0},this.isInHistory=e=>{if(!e)throw"Provide item";const t=e[this.options.synced_field];if(!Number.isFinite(+t))throw"Provided item Synced field value is missing/invalid ";const i=this.sentHistory[this.getIdStr(e)],n=i?.[this.options.synced_field];if(i){if(!Number.isFinite(+n))throw"Provided historic item Synced field value is missing/invalid";if(+n==+t)return!0}return!1},this.addData=e=>{r(this.changed)&&this.options.onSendStart&&this.options.onSendStart(),e.map((e=>{var t;const{initial:i,current:n}={...e};if(!n)throw"Expecting { current: object, initial?: object }";const r=this.getIdStr(n);this.changed??(this.changed={}),(t=this.changed)[r]??(t[r]={initial:i,current:n}),this.changed[r].current={...this.changed[r].current,...n}})),this.sendItems()},this.isOnSending=!1,this.isSendingTimeout=void 0,this.willDeleteHistory=void 0,this.sendItems=async()=>{const{DEBUG_MODE:e,onSend:t,onSendEnd:i,batch_size:n,throttle:s,historyAgeSeconds:o=2}=this.options;if(this.isSendingTimeout||this.sending&&!r(this.sending))return;if(!this.changed||r(this.changed))return;let c,a=[],l=[],u={};Object.keys(this.changed).sort(((e,t)=>this.sort(this.changed[e].current,this.changed[t].current))).slice(0,n).map((e=>{let t={...this.changed[e]};this.sending[e]={...t},l.push({...t}),u[e]={...t.current},delete this.changed[e]})),a=l.map((e=>e.current)),e&&console.log(this.options.id," SENDING lr->",a[a.length-1]),this.isSendingTimeout||(this.isSendingTimeout=setTimeout((()=>{this.isSendingTimeout=void 0,r(this.changed)||this.sendItems()}),s)),this.isOnSending=!0;try{await t(a,l),o&&(this.sentHistory={...this.sentHistory,...u},this.willDeleteHistory||(this.willDeleteHistory=setTimeout((()=>{this.willDeleteHistory=void 0,this.sentHistory={}}),1e3*o)))}catch(e){c=e,console.error("WAL onSend failed:",e,a,l)}if(this.isOnSending=!1,this.callbacks.length){const e=Object.keys(this.sending);this.callbacks.forEach(((t,i)=>{t.idStrs=t.idStrs.filter((t=>e.includes(t))),t.idStrs.length||t.cb(c)})),this.callbacks=this.callbacks.filter((e=>e.idStrs.length))}this.sending={},e&&console.log(this.options.id," SENT lr->",a[a.length-1]),r(this.changed)?i&&i(a,l,c):this.sendItems()},this.options={...e},!this.options.orderBy){const{synced_field:t,id_fields:i}=e;this.options.orderBy=[t,...i.sort()].map((e=>({fieldName:e,tsDataType:e===t?"number":"string",asc:!0})))}}isSending(){const e=this.isOnSending||!(r(this.sending)&&r(this.changed));return this.options.DEBUG_MODE&&console.log(this.options.id," CHECKING isSending ->",e),e}getIdStr(e){return this.options.id_fields.sort().map((t=>`${e[t]||""}`)).join(".")}getIdObj(e){let t={};return this.options.id_fields.sort().map((i=>{t[i]=e[i]})),t}getDeltaObj(e){let t={};return Object.keys(e).map((i=>{this.options.id_fields.includes(i)||(t[i]=e[i])})),t}},t.isEmpty=r,t.get=function(e,t){let i=t,n=e;return e?("string"==typeof i&&(i=i.split(".")),i.reduce(((e,t)=>e&&e[t]?e[t]:void 0),n)):e},t.isObject=function(e){return Boolean(e&&"object"==typeof e&&!Array.isArray(e))},t.isDefined=function(e){return null!=e},t.getKeys=function(e){return Object.keys(e)}}},t={};return function i(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,i),s.exports}(590)})()));
1
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var i=t();for(var n in i)("object"==typeof exports?exports:e)[n]=i[n]}}(this||window,(()=>(()=>{"use strict";var e={444:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.EXISTS_KEYS=t.GeomFilter_Funcs=t.GeomFilterKeys=t.ArrayFilterOperands=t.TextFilter_FullTextSearchFilterKeys=t.TextFilterFTSKeys=t.TextFilterKeys=t.CompareInFilterKeys=t.CompareFilterKeys=void 0,t.CompareFilterKeys=["=","$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"],t.CompareInFilterKeys=["$in","$nin"],t.TextFilterKeys=["$ilike","$like"],t.TextFilterFTSKeys=["@@","@>","<@","$contains","$containedBy"],t.TextFilter_FullTextSearchFilterKeys=["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"],t.ArrayFilterOperands=[...t.TextFilterFTSKeys,"&&","$overlaps"],t.GeomFilterKeys=["~","~=","@","|&>","|>>",">>","=","<<|","<<","&>","&<|","&<","&&&","&&"];const i=["ST_MakeEnvelope","ST_MakePolygon"];t.GeomFilter_Funcs=i.concat(i.map((e=>e.toLowerCase()))),t.EXISTS_KEYS=["$exists","$notExists","$existsJoined","$notExistsJoined"]},590:function(e,t,i){var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||n(t,e,i)};Object.defineProperty(t,"__esModule",{value:!0}),t.getKeys=t.isObject=t.isDefined=t.get=t.WAL=t.unpatchText=t.stableStringify=t.isEmpty=t.getTextPatch=t.asName=t.RULE_METHODS=t.CHANNELS=t.TS_PG_Types=t._PG_postgis=t._PG_date=t._PG_bool=t._PG_json=t._PG_numbers=t._PG_strings=void 0,t._PG_strings=["bpchar","char","varchar","text","citext","uuid","bytea","inet","time","timetz","interval","name"],t._PG_numbers=["int2","int4","int8","float4","float8","numeric","money","oid"],t._PG_json=["json","jsonb"],t._PG_bool=["bool"],t._PG_date=["date","timestamp","timestamptz"],t._PG_postgis=["geometry","geography"],t.TS_PG_Types={string:t._PG_strings,number:t._PG_numbers,boolean:t._PG_bool,Date:t._PG_date,"Array<number>":t._PG_numbers.map((e=>`_${e}`)),"Array<boolean>":t._PG_bool.map((e=>`_${e}`)),"Array<string>":t._PG_strings.map((e=>`_${e}`)),"Array<Object>":t._PG_json.map((e=>`_${e}`)),"Array<Date>":t._PG_date.map((e=>`_${e}`)),any:[]};const s="_psqlWS_.";t.CHANNELS={SCHEMA_CHANGED:s+"schema-changed",SCHEMA:s+"schema",DEFAULT:s,SQL:"_psqlWS_.sql",METHOD:"_psqlWS_.method",NOTICE_EV:"_psqlWS_.notice",LISTEN_EV:"_psqlWS_.listen",REGISTER:"_psqlWS_.register",LOGIN:"_psqlWS_.login",LOGOUT:"_psqlWS_.logout",AUTHGUARD:"_psqlWS_.authguard",_preffix:s},t.RULE_METHODS={getColumns:["getColumns"],getInfo:["getInfo"],insert:["insert","upsert"],update:["update","upsert","updateBatch"],select:["findOne","find","count","size"],delete:["delete","remove"],sync:["sync","unsync"],subscribe:["unsubscribe","subscribe","subscribeOne"]};var o=i(128);Object.defineProperty(t,"asName",{enumerable:!0,get:function(){return o.asName}}),Object.defineProperty(t,"getTextPatch",{enumerable:!0,get:function(){return o.getTextPatch}}),Object.defineProperty(t,"isEmpty",{enumerable:!0,get:function(){return o.isEmpty}}),Object.defineProperty(t,"stableStringify",{enumerable:!0,get:function(){return o.stableStringify}}),Object.defineProperty(t,"unpatchText",{enumerable:!0,get:function(){return o.unpatchText}}),Object.defineProperty(t,"WAL",{enumerable:!0,get:function(){return o.WAL}}),Object.defineProperty(t,"get",{enumerable:!0,get:function(){return o.get}}),Object.defineProperty(t,"isDefined",{enumerable:!0,get:function(){return o.isDefined}}),Object.defineProperty(t,"isObject",{enumerable:!0,get:function(){return o.isObject}}),Object.defineProperty(t,"getKeys",{enumerable:!0,get:function(){return o.getKeys}}),r(i(444),t)},899:(e,t)=>{function i(e,t){var i=e[0],n=e[1],a=e[2],l=e[3];i=r(i,n,a,l,t[0],7,-680876936),l=r(l,i,n,a,t[1],12,-389564586),a=r(a,l,i,n,t[2],17,606105819),n=r(n,a,l,i,t[3],22,-1044525330),i=r(i,n,a,l,t[4],7,-176418897),l=r(l,i,n,a,t[5],12,1200080426),a=r(a,l,i,n,t[6],17,-1473231341),n=r(n,a,l,i,t[7],22,-45705983),i=r(i,n,a,l,t[8],7,1770035416),l=r(l,i,n,a,t[9],12,-1958414417),a=r(a,l,i,n,t[10],17,-42063),n=r(n,a,l,i,t[11],22,-1990404162),i=r(i,n,a,l,t[12],7,1804603682),l=r(l,i,n,a,t[13],12,-40341101),a=r(a,l,i,n,t[14],17,-1502002290),i=s(i,n=r(n,a,l,i,t[15],22,1236535329),a,l,t[1],5,-165796510),l=s(l,i,n,a,t[6],9,-1069501632),a=s(a,l,i,n,t[11],14,643717713),n=s(n,a,l,i,t[0],20,-373897302),i=s(i,n,a,l,t[5],5,-701558691),l=s(l,i,n,a,t[10],9,38016083),a=s(a,l,i,n,t[15],14,-660478335),n=s(n,a,l,i,t[4],20,-405537848),i=s(i,n,a,l,t[9],5,568446438),l=s(l,i,n,a,t[14],9,-1019803690),a=s(a,l,i,n,t[3],14,-187363961),n=s(n,a,l,i,t[8],20,1163531501),i=s(i,n,a,l,t[13],5,-1444681467),l=s(l,i,n,a,t[2],9,-51403784),a=s(a,l,i,n,t[7],14,1735328473),i=o(i,n=s(n,a,l,i,t[12],20,-1926607734),a,l,t[5],4,-378558),l=o(l,i,n,a,t[8],11,-2022574463),a=o(a,l,i,n,t[11],16,1839030562),n=o(n,a,l,i,t[14],23,-35309556),i=o(i,n,a,l,t[1],4,-1530992060),l=o(l,i,n,a,t[4],11,1272893353),a=o(a,l,i,n,t[7],16,-155497632),n=o(n,a,l,i,t[10],23,-1094730640),i=o(i,n,a,l,t[13],4,681279174),l=o(l,i,n,a,t[0],11,-358537222),a=o(a,l,i,n,t[3],16,-722521979),n=o(n,a,l,i,t[6],23,76029189),i=o(i,n,a,l,t[9],4,-640364487),l=o(l,i,n,a,t[12],11,-421815835),a=o(a,l,i,n,t[15],16,530742520),i=c(i,n=o(n,a,l,i,t[2],23,-995338651),a,l,t[0],6,-198630844),l=c(l,i,n,a,t[7],10,1126891415),a=c(a,l,i,n,t[14],15,-1416354905),n=c(n,a,l,i,t[5],21,-57434055),i=c(i,n,a,l,t[12],6,1700485571),l=c(l,i,n,a,t[3],10,-1894986606),a=c(a,l,i,n,t[10],15,-1051523),n=c(n,a,l,i,t[1],21,-2054922799),i=c(i,n,a,l,t[8],6,1873313359),l=c(l,i,n,a,t[15],10,-30611744),a=c(a,l,i,n,t[6],15,-1560198380),n=c(n,a,l,i,t[13],21,1309151649),i=c(i,n,a,l,t[4],6,-145523070),l=c(l,i,n,a,t[11],10,-1120210379),a=c(a,l,i,n,t[2],15,718787259),n=c(n,a,l,i,t[9],21,-343485551),e[0]=f(i,e[0]),e[1]=f(n,e[1]),e[2]=f(a,e[2]),e[3]=f(l,e[3])}function n(e,t,i,n,r,s){return t=f(f(t,e),f(n,s)),f(t<<r|t>>>32-r,i)}function r(e,t,i,r,s,o,c){return n(t&i|~t&r,e,t,s,o,c)}function s(e,t,i,r,s,o,c){return n(t&r|i&~r,e,t,s,o,c)}function o(e,t,i,r,s,o,c){return n(t^i^r,e,t,s,o,c)}function c(e,t,i,r,s,o,c){return n(i^(t|~r),e,t,s,o,c)}function a(e){var t,i=[];for(t=0;t<64;t+=4)i[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return i}Object.defineProperty(t,"__esModule",{value:!0}),t.md5=t.md5cycle=void 0,t.md5cycle=i;var l="0123456789abcdef".split("");function u(e){for(var t="",i=0;i<4;i++)t+=l[e>>8*i+4&15]+l[e>>8*i&15];return t}function d(e){return function(e){for(var t=0;t<e.length;t++)e[t]=u(e[t]);return e.join("")}(function(e){var t,n=e.length,r=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=e.length;t+=64)i(r,a(e.substring(t-64,t)));e=e.substring(t-64);var s=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t<e.length;t++)s[t>>2]|=e.charCodeAt(t)<<(t%4<<3);if(s[t>>2]|=128<<(t%4<<3),t>55)for(i(r,s),t=0;t<16;t++)s[t]=0;return s[14]=8*n,i(r,s),r}(e))}function f(e,t){return e+t&4294967295}t.md5=d,d("hello")},128:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getKeys=t.isDefined=t.isObject=t.get=t.isEmpty=t.WAL=t.unpatchText=t.getTextPatch=t.stableStringify=t.asName=void 0;const n=i(899);function r(e){for(var t in e)return!1;return!0}t.asName=function(e){if(null==e||!e.toString||!e.toString())throw"Expecting a non empty string";return`"${e.toString().replace(/"/g,'""')}"`},t.stableStringify=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var i,n="boolean"==typeof t.cycles&&t.cycles,r=t.cmp&&(i=t.cmp,function(e){return function(t,n){var r={key:t,value:e[t]},s={key:n,value:e[n]};return i(r,s)}}),s=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var i,o;if(Array.isArray(t)){for(o="[",i=0;i<t.length;i++)i&&(o+=","),o+=e(t[i])||"null";return o+"]"}if(null===t)return"null";if(-1!==s.indexOf(t)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var c=s.push(t)-1,a=Object.keys(t).sort(r&&r(t));for(o="",i=0;i<a.length;i++){var l=a[i],u=e(t[l]);u&&(o&&(o+=","),o+=JSON.stringify(l)+":"+u)}return s.splice(c,1),"{"+o+"}"}}(e)},t.getTextPatch=function(e,t){if(!(e&&t&&e.trim().length&&t.trim().length))return t;if(e===t)return{from:0,to:0,text:"",md5:(0,n.md5)(t)};function i(i=1){let n=i<1?-1:0,r=!1;for(;!r&&Math.abs(n)<=t.length;){const s=i<1?[n]:[0,n];e.slice(...s)!==t.slice(...s)?r=!0:n+=1*Math.sign(i)}return n}let r=i()-1,s=e.length+i(-1)+1,o=t.length+i(-1)+1;return{from:r,to:s,text:t.slice(r,o),md5:(0,n.md5)(t)}},t.unpatchText=function(e,t){if(!t||"string"==typeof t)return t;const{from:i,to:r,text:s,md5:o}=t;if(null===s||null===e)return s;let c=e.slice(0,i)+s+e.slice(r);if(o&&(0,n.md5)(c)!==o)throw"Patch text error: Could not match md5 hash: (original/result) \n"+e+"\n"+c;return c},t.WAL=class{constructor(e){if(this.changed={},this.sending={},this.sentHistory={},this.callbacks=[],this.sort=(e,t)=>{const{orderBy:i}=this.options;return i&&e&&t&&i.map((i=>{if(!(i.fieldName in e)||!(i.fieldName in t))throw"Replication error: \n some orderBy fields missing from data";let n=i.asc?e[i.fieldName]:t[i.fieldName],r=i.asc?t[i.fieldName]:e[i.fieldName],s=+n-+r,o=n<r?-1:n==r?0:1;return"number"===i.tsDataType&&Number.isFinite(s)?s:o})).find((e=>e))||0},this.isInHistory=e=>{if(!e)throw"Provide item";const t=e[this.options.synced_field];if(!Number.isFinite(+t))throw"Provided item Synced field value is missing/invalid ";const i=this.sentHistory[this.getIdStr(e)],n=i?.[this.options.synced_field];if(i){if(!Number.isFinite(+n))throw"Provided historic item Synced field value is missing/invalid";if(+n==+t)return!0}return!1},this.addData=e=>{r(this.changed)&&this.options.onSendStart&&this.options.onSendStart(),e.map((e=>{var t;const{initial:i,current:n}={...e};if(!n)throw"Expecting { current: object, initial?: object }";const r=this.getIdStr(n);this.changed??(this.changed={}),(t=this.changed)[r]??(t[r]={initial:i,current:n}),this.changed[r].current={...this.changed[r].current,...n}})),this.sendItems()},this.isOnSending=!1,this.isSendingTimeout=void 0,this.willDeleteHistory=void 0,this.sendItems=async()=>{const{DEBUG_MODE:e,onSend:t,onSendEnd:i,batch_size:n,throttle:s,historyAgeSeconds:o=2}=this.options;if(this.isSendingTimeout||this.sending&&!r(this.sending))return;if(!this.changed||r(this.changed))return;let c,a=[],l=[],u={};Object.keys(this.changed).sort(((e,t)=>this.sort(this.changed[e].current,this.changed[t].current))).slice(0,n).map((e=>{let t={...this.changed[e]};this.sending[e]={...t},l.push({...t}),u[e]={...t.current},delete this.changed[e]})),a=l.map((e=>e.current)),e&&console.log(this.options.id," SENDING lr->",a[a.length-1]),this.isSendingTimeout||(this.isSendingTimeout=setTimeout((()=>{this.isSendingTimeout=void 0,r(this.changed)||this.sendItems()}),s)),this.isOnSending=!0;try{await t(a,l),o&&(this.sentHistory={...this.sentHistory,...u},this.willDeleteHistory||(this.willDeleteHistory=setTimeout((()=>{this.willDeleteHistory=void 0,this.sentHistory={}}),1e3*o)))}catch(e){c=e,console.error("WAL onSend failed:",e,a,l)}if(this.isOnSending=!1,this.callbacks.length){const e=Object.keys(this.sending);this.callbacks.forEach(((t,i)=>{t.idStrs=t.idStrs.filter((t=>e.includes(t))),t.idStrs.length||t.cb(c)})),this.callbacks=this.callbacks.filter((e=>e.idStrs.length))}this.sending={},e&&console.log(this.options.id," SENT lr->",a[a.length-1]),r(this.changed)?i&&i(a,l,c):this.sendItems()},this.options={...e},!this.options.orderBy){const{synced_field:t,id_fields:i}=e;this.options.orderBy=[t,...i.sort()].map((e=>({fieldName:e,tsDataType:e===t?"number":"string",asc:!0})))}}isSending(){const e=this.isOnSending||!(r(this.sending)&&r(this.changed));return this.options.DEBUG_MODE&&console.log(this.options.id," CHECKING isSending ->",e),e}getIdStr(e){return this.options.id_fields.sort().map((t=>`${e[t]||""}`)).join(".")}getIdObj(e){let t={};return this.options.id_fields.sort().map((i=>{t[i]=e[i]})),t}getDeltaObj(e){let t={};return Object.keys(e).map((i=>{this.options.id_fields.includes(i)||(t[i]=e[i])})),t}},t.isEmpty=r,t.get=function(e,t){let i=t,n=e;return e?("string"==typeof i&&(i=i.split(".")),i.reduce(((e,t)=>e&&e[t]?e[t]:void 0),n)):e},t.isObject=function(e){return Boolean(e&&"object"==typeof e&&!Array.isArray(e))},t.isDefined=function(e){return null!=e},t.getKeys=function(e){return Object.keys(e)}}},t={};return function i(n){var r=t[n];if(void 0!==r)return r.exports;var s=t[n]={exports:{}};return e[n].call(s.exports,s,s.exports,i),s.exports}(590)})()));
package/dist/util.d.ts CHANGED
@@ -61,4 +61,12 @@ export declare function get(obj: any, propertyPath: string | string[]): any;
61
61
  export declare function isObject(obj: any): obj is Record<string, any>;
62
62
  export declare function isDefined<T>(v: T | undefined | void): v is T;
63
63
  export declare function getKeys<T>(o: T): Array<keyof T>;
64
+ export declare type Explode<T> = keyof T extends infer K ? K extends unknown ? {
65
+ [I in keyof T]: I extends K ? T[I] : never;
66
+ } : never : never;
67
+ export declare type AtMostOne<T> = Explode<Partial<T>>;
68
+ export declare type AtLeastOne<T, U = {
69
+ [K in keyof T]: Pick<T, K>;
70
+ }> = Partial<T> & U[keyof U];
71
+ export declare type ExactlyOne<T> = AtMostOne<T> & AtLeastOne<T>;
64
72
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../lib/util.ts"],"names":[],"mappings":"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"}
package/lib/filters.ts CHANGED
@@ -1,52 +1,42 @@
1
+ import { DBSchema } from ".";
2
+ import { ExactlyOne } from "./util";
1
3
 
2
4
 
5
+ export const CompareFilterKeys = ["=", "$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"] as const;
6
+ export const CompareInFilterKeys = ["$in", "$nin"] as const;
7
+
3
8
  /**
4
9
  * Example: col_name: { $gt: 2 }
5
- * @alias CompareFilter
6
10
  */
7
11
  export type CompareFilter<T = Date | number | string | boolean> =
8
12
  /**
9
13
  * column value equals provided value
10
14
  */
11
15
  | T
12
- | { "=": T } | { "$eq": T }
13
- | { "<>": T } | { "$ne": T }
14
- | { ">": T } | { "$gt": T }
15
- | { ">=": T } | { "$gte": T }
16
- | { "<=": T } | { "$lte": T }
17
-
18
- | { "$in": T[] }
19
- | { "$nin": T[] }
16
+ | ExactlyOne<Record<typeof CompareFilterKeys[number], T>>
17
+
18
+ | ExactlyOne<Record<typeof CompareInFilterKeys[number], T[]>>
20
19
  | { "$between": [T, T] }
21
20
  ;
22
- export const CompareFilterKeys = ["=", "$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"] as const;
23
- export const CompareInFilterKeys = ["$in", "$nin"] as const;
24
21
  export const TextFilterKeys = ["$ilike", "$like"] as const;
25
22
 
23
+ export const TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"] as const;
24
+
25
+ export const TextFilter_FullTextSearchFilterKeys = ["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"] as const;
26
26
  export type FullTextSearchFilter =
27
- | { "to_tsquery": string[] }
28
- | { "plainto_tsquery": string[] }
29
- | { "phraseto_tsquery": string[] }
30
- | { "websearch_to_tsquery": string[] }
27
+ | ExactlyOne<Record<typeof TextFilter_FullTextSearchFilterKeys[number], string[]>>
31
28
  ;
32
- export const TextFilter_FullTextSearchFilterKeys = ["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"] as const;
33
29
 
34
30
  export type TextFilter =
35
31
  | CompareFilter<string>
36
- | { "$ilike": string }
37
- | { "$like": string }
32
+ | ExactlyOne<Record<typeof TextFilterKeys[number], string>>
38
33
 
39
- | { "@@": FullTextSearchFilter }
40
- | { "@>": FullTextSearchFilter } | { "$contains": FullTextSearchFilter }
41
- | { "<@": FullTextSearchFilter } | { "$containedBy": FullTextSearchFilter }
34
+ | ExactlyOne<Record<typeof TextFilterFTSKeys[number], FullTextSearchFilter>>
42
35
  ;
43
- export const TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"] as const;
44
-
36
+ export const ArrayFilterOperands = [...TextFilterFTSKeys, "&&", "$overlaps"] as const;
45
37
  export type ArrayFilter<T = (number | boolean | string)[]> =
46
38
  | CompareFilter<T>
47
- | { "@>": T } | { "$contains": T }
48
- | { "<@": T } | { "$containedBy": T }
49
- | { "&&": T } | { "$overlaps": T }
39
+ | ExactlyOne<Record<typeof ArrayFilterOperands[number], T>>
50
40
  ;
51
41
 
52
42
  /* POSTGIS */
@@ -126,7 +116,7 @@ type StringFilter<Field extends string, DataType extends any> = BasicFilter<Fiel
126
116
  }> | Partial<{
127
117
  [K in Extract<typeof TextFilterFTSKeys[number], string> as `${Field}.${K}`]: any
128
118
  }>);
129
- type ValueOf<T> = T[keyof T];
119
+ export type ValueOf<T> = T[keyof T];
130
120
 
131
121
  type ShorthandFilter<Obj extends Record<string, any>> = ValueOf<{
132
122
  [K in keyof Obj]: Obj[K] extends string? StringFilter<K, Required<Obj>[K]> : BasicFilter<K, Required<Obj>[K]>;
@@ -144,7 +134,13 @@ export type FilterForObject<T extends AnyObject = AnyObject> =
144
134
  */
145
135
  | ShorthandFilter<T>;
146
136
 
147
-
137
+ export type ExistsFilter<S = void> = Partial<{
138
+ [key in EXISTS_KEY]: S extends DBSchema?
139
+ ExactlyOne<{
140
+ [tname in keyof S]: FullFilter<S[tname]["columns"], S>
141
+ }> :
142
+ { [key: string]: FullFilter }
143
+ }>
148
144
 
149
145
  /**
150
146
  * Filter that relates to a single column { col: 2 } or
@@ -152,17 +148,17 @@ export type FilterForObject<T extends AnyObject = AnyObject> =
152
148
  */
153
149
  export type FilterItem<T extends AnyObject = AnyObject> =
154
150
  | FilterForObject<T>
155
- | Partial<{ [key in EXISTS_KEY]: { [key: string]: FilterForObject } }>
156
151
 
157
152
 
158
153
  /**
159
154
  * Full filter
160
155
  * @example { $or: [ { id: 1 }, { status: 'live' } ] }
161
156
  */
162
- export type FullFilter<T extends AnyObject = AnyObject> =
157
+ export type FullFilter<T extends AnyObject = AnyObject, S = void> =
163
158
  | { $and: FullFilter<T>[] }
164
159
  | { $or: FullFilter<T>[] }
165
160
  | FilterItem<T>
161
+ | ExistsFilter<S>
166
162
 
167
163
  /** Not implemented yet */
168
164
  // | { $not: FilterItem<T> }
@@ -181,7 +177,7 @@ const forcedFilter: FullFilter<RR> = {
181
177
  // "h.$eq": ["2"]
182
178
  $and: [
183
179
  { "h.$eq": [] },
184
- { h: { "$gt": undefined } }
180
+ { h: { "$containedBy": [] } }
185
181
  ]
186
182
  }
187
183
 
package/lib/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- import { FullFilter, AnyObject, FullFilterBasic } from "./filters";
2
+ import { FullFilter, AnyObject, FullFilterBasic, ValueOf } from "./filters";
3
3
 
4
4
  export const _PG_strings = ['bpchar','char','varchar','text','citext','uuid','bytea','inet','time','timetz','interval','name'] as const;
5
5
  export const _PG_numbers = ['int2','int4','int8','float4','float8','numeric','money','oid'] as const;
@@ -303,7 +303,7 @@ export type InsertParams<T extends AnyObject = any> = {
303
303
  onConflictDoNothing?: boolean;
304
304
  fixIssues?: boolean;
305
305
  }
306
- export type DeleteParams<T = AnyObject> = {
306
+ export type DeleteParams<T extends AnyObject = AnyObject> = {
307
307
  returning?: Select<T>;
308
308
  }
309
309
 
@@ -364,12 +364,20 @@ export type TableInfo = {
364
364
  dynamicRules?: {
365
365
  update?: boolean;
366
366
  }
367
+
368
+ /**
369
+ * Additional table info provided through TableConfig
370
+ */
371
+ info?: {
372
+ label?: string;
373
+ }
367
374
  }
368
375
 
369
376
  export type OnError = (err: any) => void;
370
377
 
371
-
372
378
  type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObject> =
379
+ O extends { returnType: "values"; select: Record<string, 1> }? ValueOf<Pick<TD, keyof O["select"]>> :
380
+ O extends { returnType: "values" }? any :
373
381
  O extends { select: "*" }? TD :
374
382
  O extends { select: "" }? Record<string, never> :
375
383
  O extends { select: Record<string, 1> }? Pick<TD, keyof O["select"]> :
@@ -377,10 +385,10 @@ type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObject> =
377
385
  TD;
378
386
 
379
387
  type GetUpdateReturnType<O extends UpdateParams, TD extends AnyObject> =
380
- O extends { returning: "*" }? TD :
388
+ O extends { returning: "*" }? Required<TD> :
381
389
  O extends { returning: "" }? Record<string, never> :
382
- O extends { returning: Record<string, 1> }? Pick<TD, keyof O["returning"]> :
383
- O extends { returning: Record<string, 0> }? Omit<TD, keyof O["returning"]> :
390
+ O extends { returning: Record<string, 1> }? Pick<Required<TD>, keyof O["returning"]> :
391
+ O extends { returning: Record<string, 0> }? Omit<Required<TD>, keyof O["returning"]> :
384
392
  void;
385
393
 
386
394
  export type SubscriptionHandler<T = AnyObject> = {
@@ -392,26 +400,26 @@ export type SubscriptionHandler<T = AnyObject> = {
392
400
 
393
401
  type GetColumns = (lang?: string, params?: { rule: "update", data: AnyObject, filter: AnyObject }) => Promise<ValidatedColumnInfo[]>;
394
402
 
395
- export type ViewHandler<TD = AnyObject> = {
403
+ export type ViewHandler<TD = AnyObject, S = void> = {
396
404
  getInfo?: (lang?: string) => Promise<TableInfo>;
397
405
  getColumns?: GetColumns
398
- find: <P extends SelectParams<TD>>(filter?: FullFilter<TD>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>[]>;
399
- findOne: <P extends SelectParams<TD>>(filter?: FullFilter<TD>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>>;
400
- subscribe: <P extends SubscribeParams<TD>>(filter: FullFilter<TD>, params: P, onData: (items: GetSelectReturnType<P, TD>[], onError?: OnError) => any) => Promise<SubscriptionHandler<TD>>;
401
- subscribeOne: <P extends SubscribeParams<TD>>(filter: FullFilter<TD>, params: P, onData: (item: GetSelectReturnType<P, TD>) => any, onError?: OnError) => Promise<SubscriptionHandler<TD>>;
402
- count: (filter?: FullFilter<TD>) => Promise<number>;
406
+ find: <P extends SelectParams<TD>>(filter?: FullFilter<TD, S>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>[]>;
407
+ findOne: <P extends SelectParams<TD>>(filter?: FullFilter<TD, S>, selectParams?: P) => Promise<GetSelectReturnType<P, TD>>;
408
+ subscribe: <P extends SubscribeParams<TD>>(filter: FullFilter<TD, S>, params: P, onData: (items: GetSelectReturnType<P, TD>[], onError?: OnError) => any) => Promise<SubscriptionHandler<TD>>;
409
+ subscribeOne: <P extends SubscribeParams<TD>>(filter: FullFilter<TD, S>, params: P, onData: (item: GetSelectReturnType<P, TD>) => any, onError?: OnError) => Promise<SubscriptionHandler<TD>>;
410
+ count: (filter?: FullFilter<TD, S>) => Promise<number>;
403
411
  /**
404
412
  * Returns result size in bits
405
413
  */
406
414
  size: (filter?: FullFilter<TD>, selectParams?: SelectParams<TD>) => Promise<string>;
407
415
  }
408
416
 
409
- export type TableHandler<TD = AnyObject> = ViewHandler<TD> & {
410
- update: <P extends UpdateParams<TD>>(filter: FullFilter<TD>, newData: PartialLax<TD>, params?: UpdateParams<TD>) => Promise<GetUpdateReturnType<P ,TD>>;
411
- updateBatch: (data: [FullFilter<TD>, PartialLax<TD>][], params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
412
- upsert: (filter: FullFilter<TD>, newData: PartialLax<TD>, params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
417
+ export type TableHandler<TD = AnyObject, S = void> = ViewHandler<TD, S> & {
418
+ update: <P extends UpdateParams<TD>>(filter: FullFilter<TD, S>, newData: PartialLax<TD>, params?: P) => Promise<GetUpdateReturnType<P ,TD>>;
419
+ updateBatch: (data: [FullFilter<TD, S>, PartialLax<TD>][], params?: UpdateParams<TD>) => Promise<PartialLax<TD> | void>;
420
+ upsert: <P extends UpdateParams<TD>>(filter: FullFilter<TD, S>, newData: PartialLax<TD>, params?: P) => Promise<GetUpdateReturnType<P ,TD>>;
413
421
  insert: <P extends UpdateParams<TD>>(data: (TD | TD[]), params?: P ) => Promise<GetUpdateReturnType<P ,TD>>;
414
- delete: <P extends UpdateParams<TD>>(filter?: FullFilter<TD>, params?: DeleteParams<TD>) => Promise<GetUpdateReturnType<P ,TD>>;
422
+ delete: <P extends DeleteParams<TD>>(filter?: FullFilter<TD, S>, params?: P) => Promise<GetUpdateReturnType<P ,TD>>;
415
423
  }
416
424
 
417
425
  export type ViewHandlerBasic = {
@@ -523,8 +531,8 @@ export type ValidatedMethods<T extends DBTableSchema> =
523
531
 
524
532
  export type DBHandler<S = void> = (S extends DBSchema? {
525
533
  [k in keyof S]: S[k]["is_view"] extends true ?
526
- ViewHandler<S[k]["columns"]> :
527
- Pick<TableHandler<S[k]["columns"]>, ValidatedMethods<S[k]>>
534
+ ViewHandler<S[k]["columns"], S> :
535
+ Pick<TableHandler<S[k]["columns"], S>, ValidatedMethods<S[k]>>
528
536
  } : {
529
537
  [key: string]: Partial<TableHandler>;
530
538
  }) & DbJoinMaker & {
package/lib/util.ts CHANGED
@@ -434,4 +434,13 @@ export function isDefined<T>(v: T | undefined | void): v is T { return v !== und
434
434
 
435
435
  export function getKeys<T>(o: T): Array<keyof T>{
436
436
  return Object.keys(o) as any
437
- }
437
+ }
438
+
439
+ export type Explode<T> = keyof T extends infer K
440
+ ? K extends unknown
441
+ ? { [I in keyof T]: I extends K ? T[I] : never }
442
+ : never
443
+ : never;
444
+ export type AtMostOne<T> = Explode<Partial<T>>;
445
+ export type AtLeastOne<T, U = {[K in keyof T]: Pick<T, K> }> = Partial<T> & U[keyof U]
446
+ export type ExactlyOne<T> = AtMostOne<T> & AtLeastOne<T>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-types",
3
- "version": "1.5.155",
3
+ "version": "1.5.158",
4
4
  "description": "",
5
5
  "main": "dist/index_umd.js",
6
6
  "types": "dist/index.d.ts",
@@ -1 +1 @@
1
- {"version":3,"file":"typeTests.d.ts","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"AA0IA,eAAO,MAAM,WAAW,YAAW,CAAC"}
1
+ {"version":3,"file":"typeTests.d.ts","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"AA0LA,eAAO,MAAM,WAAW,YAAW,CAAC"}
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.typeTestsOK = void 0;
13
13
  (() => __awaiter(void 0, void 0, void 0, function* () {
14
- var _a, _b;
14
+ var _a, _b, _c;
15
15
  const tableHandler = undefined;
16
16
  const f = {
17
17
  $and: [
@@ -27,6 +27,7 @@ exports.typeTestsOK = void 0;
27
27
  const row = yield ((_b = tableHandler.findOne) === null || _b === void 0 ? void 0 : _b.call(tableHandler, { "c.$nin": [2] }, { select: { b: 0 } }));
28
28
  row.c;
29
29
  row.h;
30
+ const vals = yield ((_c = tableHandler.find) === null || _c === void 0 ? void 0 : _c.call(tableHandler, { "c.$nin": [2] }, { returnType: "values" }));
30
31
  row.b;
31
32
  tableHandler.subscribe({ h: 2 }, { select: { b: 1 } }, (rows) => __awaiter(void 0, void 0, void 0, function* () {
32
33
  const row = rows[0];
@@ -74,6 +75,8 @@ exports.typeTestsOK = void 0;
74
75
  db.table1.update;
75
76
  db.table12.update;
76
77
  db.table1.find;
78
+ const result = yield db.table2.update({}, { c1: "" }, { returning: "*" });
79
+ result.c2 + 2;
77
80
  const sel = {
78
81
  dwa: 1
79
82
  };
@@ -88,6 +91,17 @@ exports.typeTestsOK = void 0;
88
91
  const fRow = {
89
92
  $rowhash: { "$in": [""] }
90
93
  };
94
+ const emptyFilter = {};
95
+ const ef = {
96
+ $existsJoined: {
97
+ tbl11: {}
98
+ }
99
+ };
100
+ const emptyExists = {
101
+ $existsJoined: {
102
+ tbl1: {}
103
+ }
104
+ };
91
105
  }));
92
106
  const typeTestsOK = () => { };
93
107
  exports.typeTestsOK = typeTestsOK;
@@ -1 +1 @@
1
- {"version":3,"file":"typeTests.js","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeTests.js","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
 
2
- import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyped, AnyObject, DBSchema } from "../dist/index";
2
+ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyped, ExistsFilter } from "../dist/index";
3
3
 
4
4
  /**
5
5
  * Test select/return type inference
@@ -27,6 +27,8 @@ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyp
27
27
  const row = await tableHandler.findOne?.({ "c.$nin": [2] }, { select: {b: 0} });
28
28
  row.c;
29
29
  row.h;
30
+
31
+ const vals = await tableHandler.find?.({ "c.$nin": [2] }, { returnType: "values" });
30
32
 
31
33
  //@ts-expect-error
32
34
  row.b;
@@ -102,7 +104,11 @@ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyp
102
104
  view1: {
103
105
  is_view: true
104
106
  columns: { c1: string; c2: number }
105
- }
107
+ };
108
+ table2: {
109
+ update: true;
110
+ columns: { c1: string; c2?: number }
111
+ };
106
112
  }> = 1 as any;
107
113
 
108
114
  const s: SelectTyped<{ a: number; c: string }> = { a: 1 }
@@ -115,7 +121,10 @@ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyp
115
121
  //@ts-expect-error
116
122
  db.table12.update
117
123
 
118
- db.table1.find
124
+ db.table1.find;
125
+
126
+ const result = await db.table2.update({}, { c1: "" }, { returning: "*" });
127
+ result.c2 + 2;
119
128
 
120
129
  const sel: Select = {
121
130
  dwa: 1
@@ -133,6 +142,45 @@ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyp
133
142
 
134
143
  const fRow: FullFilter<Fields> = {
135
144
  $rowhash: { "$in": [""] }
145
+ };
146
+ const emptyFilter: FullFilter<Fields> = {
147
+ };
148
+
149
+ type SampleSchema = {
150
+ tbl1: {
151
+ columns: {
152
+ col1: number;
153
+ col2: string | null
154
+ }
155
+ }
156
+ tbl11: {
157
+ columns: {
158
+ col11: number;
159
+ col21: string | null
160
+ }
161
+ }
162
+ }
163
+
164
+ // const ff: FullFilter<SampleSchema["tbl1"]["columns"], SampleSchema> = {
165
+ // AnyObject
166
+ // }
167
+
168
+
169
+
170
+ const ef: ExistsFilter<SampleSchema> = {
171
+ $existsJoined: {
172
+ // tbl1: {"col1.$eq": 1 }
173
+ tbl11: {
174
+ // "col11.$eq": 1,
175
+ // col11: { "=": 1, $between: [1, 2] }
176
+ }
177
+ }
178
+ }
179
+
180
+ const emptyExists: ExistsFilter<SampleSchema> = {
181
+ $existsJoined: {
182
+ tbl1: { }
183
+ }
136
184
  }
137
185
  });
138
186