prostgles-types 1.5.144 → 1.5.147

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
@@ -25,8 +25,9 @@ export declare type CompareFilter<T = Date | number | string | boolean> = T | {
25
25
  } | {
26
26
  "$between": [T, T];
27
27
  };
28
- export declare const CompareFilterKeys: string[];
29
- export declare const CompareInFilterKeys: string[];
28
+ export declare const CompareFilterKeys: readonly ["=", "$eq", "<>", ">", ">=", "<=", "$eq", "$ne", "$gt", "$gte", "$lte"];
29
+ export declare const CompareInFilterKeys: readonly ["$in", "$nin"];
30
+ export declare const TextFilterKeys: readonly ["$ilike", "$like"];
30
31
  export declare type FullTextSearchFilter = {
31
32
  "to_tsquery": string[];
32
33
  } | {
@@ -36,7 +37,7 @@ export declare type FullTextSearchFilter = {
36
37
  } | {
37
38
  "websearch_to_tsquery": string[];
38
39
  };
39
- export declare const TextFilter_FullTextSearchFilterKeys: string[];
40
+ export declare const TextFilter_FullTextSearchFilterKeys: readonly ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
40
41
  export declare type TextFilter = CompareFilter<string> | {
41
42
  "$ilike": string;
42
43
  } | {
@@ -52,7 +53,7 @@ export declare type TextFilter = CompareFilter<string> | {
52
53
  } | {
53
54
  "$containedBy": FullTextSearchFilter;
54
55
  };
55
- export declare const TextFilterFTSKeys: string[];
56
+ export declare const TextFilterFTSKeys: readonly ["@@", "@>", "<@", "$contains", "$containedBy"];
56
57
  export declare type ArrayFilter<T = (number | boolean | string)[]> = CompareFilter<T> | {
57
58
  "@>": T;
58
59
  } | {
@@ -74,34 +75,44 @@ export declare type GeomFilter = {
74
75
  } | {
75
76
  "@": GeoBBox;
76
77
  };
77
- export declare const GeomFilterKeys: string[];
78
+ export declare const GeomFilterKeys: readonly ["~", "~=", "@", "|&>", "|>>", ">>", "=", "<<|", "<<", "&>", "&<|", "&<", "&&&", "&&"];
78
79
  export declare const GeomFilter_Funcs: string[];
79
80
  export declare type AllowedTSTypes = string | number | boolean | Date | any[];
80
81
  export declare type AnyObject = {
81
82
  [key: string]: any;
82
83
  };
83
- export declare type FilterDataType<T = any> = T extends string ? TextFilter : T extends number ? CompareFilter<T> : T extends boolean ? CompareFilter<T> : T extends Date ? CompareFilter<T> : T extends any[] ? ArrayFilter<T> : (CompareFilter<T> & ArrayFilter<T> & TextFilter & GeomFilter);
84
+ export declare type FilterDataType<T = any> = T extends string ? TextFilter : T extends number ? CompareFilter<T> : T extends boolean ? CompareFilter<T> : T extends Date ? CompareFilter<T> : T extends any[] ? ArrayFilter<T> : (CompareFilter<T> | ArrayFilter<T> | TextFilter | GeomFilter);
84
85
  export declare const EXISTS_KEYS: readonly ["$exists", "$notExists", "$existsJoined", "$notExistsJoined"];
85
86
  export declare type EXISTS_KEY = typeof EXISTS_KEYS[number];
87
+ declare type BasicFilter<Field extends string, DataType extends any> = Partial<{
88
+ [K in Extract<typeof CompareFilterKeys[number], string> as `${Field}.${K}`]: DataType;
89
+ }> | Partial<{
90
+ [K in Extract<typeof CompareInFilterKeys[number], string> as `${Field}.${K}`]: DataType[];
91
+ }>;
92
+ declare type StringFilter<Field extends string, DataType extends any> = BasicFilter<Field, DataType> & (Partial<{
93
+ [K in Extract<typeof TextFilterKeys[number], string> as `${Field}.${K}`]: DataType;
94
+ }> | Partial<{
95
+ [K in Extract<typeof TextFilterFTSKeys[number], string> as `${Field}.${K}`]: any;
96
+ }>);
97
+ declare type ValueOf<T> = T[keyof T];
98
+ declare type ShorthandFilter<Obj extends Record<string, any>> = ValueOf<{
99
+ [K in keyof Obj]: Obj[K] extends string ? StringFilter<K, Obj[K]> : BasicFilter<K, Obj[K]>;
100
+ }>;
86
101
  export declare type FilterForObject<T = AnyObject> = {
87
102
  [K in keyof Partial<T>]: FilterDataType<T[K]>;
88
- } | {
89
- [K in keyof Omit<{
90
- [key: string]: any;
91
- }, keyof T>]: (FilterDataType | Date | string | number | (Date | string | number)[]);
92
- };
103
+ } | ShorthandFilter<T>;
93
104
  export declare type FilterItem<T = AnyObject> = FilterForObject<T> | Partial<{
94
105
  [key in EXISTS_KEY]: {
95
106
  [key: string]: FilterForObject;
96
107
  };
97
108
  }>;
98
- export declare type FullFilter<T = AnyObject> = FilterItem<T> | {
99
- $and: (FilterItem<T> | FullFilter)[];
109
+ export declare type FullFilter<T = AnyObject> = {
110
+ $and: (FilterItem<T> | FullFilter<T>)[];
100
111
  } | {
101
- $or: (FilterItem<T> | FullFilter)[];
112
+ $or: (FilterItem<T> | FullFilter<T>)[];
102
113
  } | {
103
114
  $not: FilterItem<T>;
104
- };
115
+ } | FilterItem<T>;
105
116
  export declare type FullFilterBasic<T = {
106
117
  [key: string]: any;
107
118
  }> = {
@@ -109,4 +120,5 @@ export declare type FullFilterBasic<T = {
109
120
  [key: string]: any;
110
121
  }>]: any;
111
122
  };
123
+ export {};
112
124
  //# sourceMappingURL=filters.d.ts.map
@@ -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,8 +1,9 @@
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.CompareInFilterKeys = exports.CompareFilterKeys = void 0;
3
+ exports.EXISTS_KEYS = exports.GeomFilter_Funcs = exports.GeomFilterKeys = exports.TextFilterFTSKeys = exports.TextFilter_FullTextSearchFilterKeys = 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
+ exports.TextFilterKeys = ["$ilike", "$like"];
6
7
  exports.TextFilter_FullTextSearchFilterKeys = ["to_tsquery", "plainto_tsquery", "phraseto_tsquery", "websearch_to_tsquery"];
7
8
  exports.TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"];
8
9
  exports.GeomFilterKeys = ["~", "~=", "@", "|&>", "|>>", ">>", "=", "<<|", "<<", "&>", "&<|", "&<", "&&&", "&&"];
@@ -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,CAAC,CAAC;AACpF,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AAQrC,QAAA,mCAAmC,GAAG,CAAC,YAAY,EAAC,iBAAiB,EAAC,kBAAkB,EAAC,sBAAsB,CAAC,CAAC;AAWjH,QAAA,iBAAiB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;AAoDpE,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,CAAC,CAAA;AAChH,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"}
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"}
package/dist/index.d.ts CHANGED
@@ -19,6 +19,33 @@ export declare const TS_PG_Types: {
19
19
  readonly any: readonly [];
20
20
  };
21
21
  export declare type TS_COLUMN_DATA_TYPES = keyof typeof TS_PG_Types;
22
+ export declare type DBColumnSchema = {
23
+ [col_name: string]: {
24
+ is_nullable?: boolean;
25
+ is_nullable_or_has_default?: boolean;
26
+ type: any;
27
+ };
28
+ };
29
+ export declare type DBTableSchema = {
30
+ is_view?: boolean;
31
+ select?: boolean;
32
+ insert?: boolean;
33
+ update?: boolean;
34
+ delete?: boolean;
35
+ dataTypes?: Record<string, any>;
36
+ columns: DBColumnSchema;
37
+ };
38
+ export declare type DBSchema = {
39
+ [tov_name: string]: DBTableSchema;
40
+ };
41
+ export declare type DBSchemaColumns<Cols extends DBColumnSchema> = {
42
+ [key in keyof Cols]: Cols[key]["is_nullable"] extends true ? (null | Cols[key]["type"]) : Cols[key]["type"];
43
+ };
44
+ export declare type DBSchemaInsertColumns<Cols extends DBColumnSchema> = {
45
+ [key in keyof Cols as Cols[key]["is_nullable_or_has_default"] extends true ? key : never]?: Cols[key]["type"] | null;
46
+ } & {
47
+ [key in keyof Cols as Cols[key]["is_nullable_or_has_default"] extends true ? never : key]: Cols[key]["type"];
48
+ };
22
49
  export declare type ColumnInfo = {
23
50
  name: string;
24
51
  label: string;
@@ -67,6 +94,7 @@ export declare type _OrderBy<T = AnyObject> = {
67
94
  nullEmpty?: boolean;
68
95
  }[] | Array<keyof T> | keyof T;
69
96
  export declare type OrderBy<T = AnyObject> = _OrderBy<T> | _OrderBy<AnyObject>;
97
+ declare type CommonSelect = "*" | "";
70
98
  export declare type SelectTyped<T extends AnyObject> = {
71
99
  [K in keyof Partial<T>]: 1;
72
100
  } | {
@@ -75,20 +103,18 @@ export declare type SelectTyped<T extends AnyObject> = {
75
103
  [K in keyof Partial<T>]: false;
76
104
  } | {
77
105
  [K in keyof Partial<T>]: true;
78
- } | "*" | (keyof T)[];
79
- export declare type Select<T extends AnyObject = AnyObject> = SelectTyped<T> | "" | AnyObject;
106
+ } | (keyof T)[] | CommonSelect;
107
+ export declare type Select<T extends AnyObject = never> = T extends AnyObject ? SelectTyped<T> : (AnyObject | CommonSelect);
80
108
  export declare type SelectBasic = {
81
109
  [key: string]: any;
82
110
  } | {} | undefined | "" | "*";
83
- export declare type SelectParamsBasic = {
84
- select?: SelectBasic;
111
+ declare type CommonSelectParams = {
85
112
  limit?: number;
86
113
  offset?: number;
87
- orderBy?: OrderBy;
88
114
  groupBy?: boolean;
89
115
  returnType?: "row" | "value" | "values";
90
116
  };
91
- export declare type SelectParams<T = AnyObject> = SelectParamsBasic & {
117
+ export declare type SelectParams<T extends AnyObject = never> = CommonSelectParams & {
92
118
  select?: Select<T>;
93
119
  orderBy?: OrderBy<T>;
94
120
  };
@@ -109,7 +135,7 @@ export declare type InsertParams<T = AnyObject> = {
109
135
  export declare type DeleteParams<T = AnyObject> = {
110
136
  returning?: Select<T>;
111
137
  };
112
- export declare type SubscribeParamsBasic = SelectParamsBasic & {
138
+ export declare type SubscribeParamsBasic = CommonSelectParams & {
113
139
  throttle?: number;
114
140
  };
115
141
  export declare type UpdateParamsBasic = {
@@ -148,7 +174,7 @@ declare type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObjec
148
174
  } ? Pick<TD, keyof O["select"]> : O extends {
149
175
  select: Record<string, 0>;
150
176
  } ? Omit<TD, keyof O["select"]> : TD;
151
- declare type GetUpdateReturnType<O extends UpdateParams<TD>, TD extends AnyObject> = O extends {
177
+ declare type GetUpdateReturnType<O extends UpdateParams, TD extends AnyObject> = O extends {
152
178
  returning: "*";
153
179
  } ? TD : O extends {
154
180
  returning: "";
@@ -188,8 +214,8 @@ export declare type TableHandler<TD = AnyObject, InsertType = TD> = ViewHandler<
188
214
  export declare type ViewHandlerBasic = {
189
215
  getInfo?: (lang?: string) => Promise<TableInfo>;
190
216
  getColumns?: GetColumns;
191
- find: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<PartialLax<TD>[]>;
192
- findOne: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<PartialLax<TD>>;
217
+ find: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<PartialLax<TD>[]>;
218
+ findOne: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<PartialLax<TD>>;
193
219
  subscribe: <TD = AnyObject>(filter: FullFilterBasic, params: SubscribeParamsBasic, onData: (items: PartialLax<TD>[], onError?: OnError) => any) => Promise<{
194
220
  unsubscribe: () => any;
195
221
  }>;
@@ -197,7 +223,7 @@ export declare type ViewHandlerBasic = {
197
223
  unsubscribe: () => any;
198
224
  }>;
199
225
  count: (filter?: FullFilterBasic) => Promise<number>;
200
- size: (filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<string>;
226
+ size: (filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<string>;
201
227
  };
202
228
  export declare type TableHandlerBasic = ViewHandlerBasic & {
203
229
  update: <TD = AnyObject>(filter: FullFilterBasic, newData: PartialLax<TD>, params?: UpdateParamsBasic) => Promise<PartialLax<TD> | void>;
@@ -210,7 +236,7 @@ export declare type MethodHandler = {
210
236
  [method_name: string]: (...args: any[]) => Promise<AnyObject>;
211
237
  };
212
238
  export declare type JoinMaker<TT = AnyObject> = (filter?: FullFilter<TT>, select?: Select<TT>, options?: SelectParams<TT>) => any;
213
- export declare type JoinMakerBasic = (filter?: FullFilterBasic, select?: SelectBasic, options?: SelectParamsBasic) => any;
239
+ export declare type JoinMakerBasic = (filter?: FullFilterBasic, select?: SelectBasic, options?: SelectParams) => any;
214
240
  export declare type TableJoin = {
215
241
  [key: string]: JoinMaker;
216
242
  };
@@ -249,9 +275,18 @@ export declare type GetSQLReturnType<O extends SQLOptions> = CheckForListen<(O["
249
275
  export declare type SQLHandler = <Opts extends SQLOptions>(query: string, args?: AnyObject | any[], options?: Opts, serverSideOptions?: {
250
276
  socket: any;
251
277
  }) => Promise<GetSQLReturnType<Opts>>;
252
- export declare type DBHandler = {
278
+ declare type SelectMethods<T extends DBTableSchema> = T["select"] extends true ? keyof Pick<TableHandler, "count" | "find" | "findOne" | "getColumns" | "getInfo" | "size" | "subscribe" | "subscribeOne"> : never;
279
+ declare type UpdateMethods<T extends DBTableSchema> = T["update"] extends true ? keyof Pick<TableHandler, "update" | "updateBatch"> : never;
280
+ declare type InsertMethods<T extends DBTableSchema> = T["insert"] extends true ? keyof Pick<TableHandler, "insert"> : never;
281
+ declare type UpsertMethods<T extends DBTableSchema> = T["insert"] extends true ? T["update"] extends true ? keyof Pick<TableHandler, "upsert"> : never : never;
282
+ declare type DeleteMethods<T extends DBTableSchema> = T["delete"] extends true ? keyof Pick<TableHandler, "delete"> : never;
283
+ declare type ValidatedMethods<T extends DBTableSchema> = SelectMethods<T> | UpdateMethods<T> | InsertMethods<T> | UpsertMethods<T> | DeleteMethods<T>;
284
+ declare type ValidatedTableHandler<T extends DBTableSchema> = Pick<TableHandler<DBSchemaColumns<T["columns"]>, DBSchemaInsertColumns<T["columns"]>>, ValidatedMethods<T>>;
285
+ export declare type DBHandler<S extends DBSchema = never> = (S extends DBSchema ? {
286
+ [k in keyof S]: S[k]["is_view"] extends true ? ViewHandler<DBSchemaColumns<S[k]["columns"]>> : ValidatedTableHandler<S[k]>;
287
+ } : {
253
288
  [key: string]: Partial<TableHandler>;
254
- } & DbJoinMaker;
289
+ }) & DbJoinMaker;
255
290
  export declare type DBHandlerBasic = {
256
291
  [key: string]: Partial<TableHandlerBasic>;
257
292
  } & {
@@ -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":"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"}
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 n=t();for(var i in n)("object"==typeof exports?exports:e)[i]=n[i]}}(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.CompareInFilterKeys=t.CompareFilterKeys=void 0,t.CompareFilterKeys=["=","$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"],t.CompareInFilterKeys=["$in","$nin"],t.TextFilter_FullTextSearchFilterKeys=["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"],t.TextFilterFTSKeys=["@@","@>","<@","$contains","$containedBy"],t.GeomFilterKeys=["~","~=","@","|&>","|>>",">>","=","<<|","<<","&>","&<|","&<","&&&","&&"];const n=["ST_MakeEnvelope","ST_MakePolygon"];t.GeomFilter_Funcs=n.concat(n.map((e=>e.toLowerCase()))),t.EXISTS_KEYS=["$exists","$notExists","$existsJoined","$notExistsJoined"]},590:function(e,t,n){var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n);var r=Object.getOwnPropertyDescriptor(t,n);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,i,r)}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||i(t,e,n)};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=n(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(n(444),t)},899:(e,t)=>{function n(e,t){var n=e[0],i=e[1],a=e[2],l=e[3];n=r(n,i,a,l,t[0],7,-680876936),l=r(l,n,i,a,t[1],12,-389564586),a=r(a,l,n,i,t[2],17,606105819),i=r(i,a,l,n,t[3],22,-1044525330),n=r(n,i,a,l,t[4],7,-176418897),l=r(l,n,i,a,t[5],12,1200080426),a=r(a,l,n,i,t[6],17,-1473231341),i=r(i,a,l,n,t[7],22,-45705983),n=r(n,i,a,l,t[8],7,1770035416),l=r(l,n,i,a,t[9],12,-1958414417),a=r(a,l,n,i,t[10],17,-42063),i=r(i,a,l,n,t[11],22,-1990404162),n=r(n,i,a,l,t[12],7,1804603682),l=r(l,n,i,a,t[13],12,-40341101),a=r(a,l,n,i,t[14],17,-1502002290),n=s(n,i=r(i,a,l,n,t[15],22,1236535329),a,l,t[1],5,-165796510),l=s(l,n,i,a,t[6],9,-1069501632),a=s(a,l,n,i,t[11],14,643717713),i=s(i,a,l,n,t[0],20,-373897302),n=s(n,i,a,l,t[5],5,-701558691),l=s(l,n,i,a,t[10],9,38016083),a=s(a,l,n,i,t[15],14,-660478335),i=s(i,a,l,n,t[4],20,-405537848),n=s(n,i,a,l,t[9],5,568446438),l=s(l,n,i,a,t[14],9,-1019803690),a=s(a,l,n,i,t[3],14,-187363961),i=s(i,a,l,n,t[8],20,1163531501),n=s(n,i,a,l,t[13],5,-1444681467),l=s(l,n,i,a,t[2],9,-51403784),a=s(a,l,n,i,t[7],14,1735328473),n=o(n,i=s(i,a,l,n,t[12],20,-1926607734),a,l,t[5],4,-378558),l=o(l,n,i,a,t[8],11,-2022574463),a=o(a,l,n,i,t[11],16,1839030562),i=o(i,a,l,n,t[14],23,-35309556),n=o(n,i,a,l,t[1],4,-1530992060),l=o(l,n,i,a,t[4],11,1272893353),a=o(a,l,n,i,t[7],16,-155497632),i=o(i,a,l,n,t[10],23,-1094730640),n=o(n,i,a,l,t[13],4,681279174),l=o(l,n,i,a,t[0],11,-358537222),a=o(a,l,n,i,t[3],16,-722521979),i=o(i,a,l,n,t[6],23,76029189),n=o(n,i,a,l,t[9],4,-640364487),l=o(l,n,i,a,t[12],11,-421815835),a=o(a,l,n,i,t[15],16,530742520),n=c(n,i=o(i,a,l,n,t[2],23,-995338651),a,l,t[0],6,-198630844),l=c(l,n,i,a,t[7],10,1126891415),a=c(a,l,n,i,t[14],15,-1416354905),i=c(i,a,l,n,t[5],21,-57434055),n=c(n,i,a,l,t[12],6,1700485571),l=c(l,n,i,a,t[3],10,-1894986606),a=c(a,l,n,i,t[10],15,-1051523),i=c(i,a,l,n,t[1],21,-2054922799),n=c(n,i,a,l,t[8],6,1873313359),l=c(l,n,i,a,t[15],10,-30611744),a=c(a,l,n,i,t[6],15,-1560198380),i=c(i,a,l,n,t[13],21,1309151649),n=c(n,i,a,l,t[4],6,-145523070),l=c(l,n,i,a,t[11],10,-1120210379),a=c(a,l,n,i,t[2],15,718787259),i=c(i,a,l,n,t[9],21,-343485551),e[0]=f(n,e[0]),e[1]=f(i,e[1]),e[2]=f(a,e[2]),e[3]=f(l,e[3])}function i(e,t,n,i,r,s){return t=f(f(t,e),f(i,s)),f(t<<r|t>>>32-r,n)}function r(e,t,n,r,s,o,c){return i(t&n|~t&r,e,t,s,o,c)}function s(e,t,n,r,s,o,c){return i(t&r|n&~r,e,t,s,o,c)}function o(e,t,n,r,s,o,c){return i(t^n^r,e,t,s,o,c)}function c(e,t,n,r,s,o,c){return i(n^(t|~r),e,t,s,o,c)}function a(e){var t,n=[];for(t=0;t<64;t+=4)n[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return n}Object.defineProperty(t,"__esModule",{value:!0}),t.md5=t.md5cycle=void 0,t.md5cycle=n;var l="0123456789abcdef".split("");function u(e){for(var t="",n=0;n<4;n++)t+=l[e>>8*n+4&15]+l[e>>8*n&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,i=e.length,r=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=e.length;t+=64)n(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(n(r,s),t=0;t<16;t++)s[t]=0;return s[14]=8*i,n(r,s),r}(e))}function f(e,t){return e+t&4294967295}t.md5=d,d("hello")},128:(e,t,n)=>{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 i=n(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 n,i="boolean"==typeof t.cycles&&t.cycles,r=t.cmp&&(n=t.cmp,function(e){return function(t,i){var r={key:t,value:e[t]},s={key:i,value:e[i]};return n(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 n,o;if(Array.isArray(t)){for(o="[",n=0;n<t.length;n++)n&&(o+=","),o+=e(t[n])||"null";return o+"]"}if(null===t)return"null";if(-1!==s.indexOf(t)){if(i)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="",n=0;n<a.length;n++){var l=a[n],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,i.md5)(t)};function n(n=1){let i=n<1?-1:0,r=!1;for(;!r&&Math.abs(i)<=t.length;){const s=n<1?[i]:[0,i];e.slice(...s)!==t.slice(...s)?r=!0:i+=1*Math.sign(n)}return i}let r=n()-1,s=e.length+n(-1)+1,o=t.length+n(-1)+1;return{from:r,to:s,text:t.slice(r,o),md5:(0,i.md5)(t)}},t.unpatchText=function(e,t){if(!t||"string"==typeof t)return t;const{from:n,to:r,text:s,md5:o}=t;if(null===s||null===e)return s;let c=e.slice(0,n)+s+e.slice(r);if(o&&(0,i.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:n}=this.options;return n&&e&&t&&n.map((n=>{if(!(n.fieldName in e)||!(n.fieldName in t))throw"Replication error: \n some orderBy fields missing from data";let i=n.asc?e[n.fieldName]:t[n.fieldName],r=n.asc?t[n.fieldName]:e[n.fieldName],s=+i-+r,o=i<r?-1:i==r?0:1;return"number"===n.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 n=this.sentHistory[this.getIdStr(e)],i=n?.[this.options.synced_field];if(n){if(!Number.isFinite(+i))throw"Provided historic item Synced field value is missing/invalid";if(+i==+t)return!0}return!1},this.addData=e=>{r(this.changed)&&this.options.onSendStart&&this.options.onSendStart(),e.map((e=>{var t;const{initial:n,current:i}={...e};if(!i)throw"Expecting { current: object, initial?: object }";const r=this.getIdStr(i);this.changed??(this.changed={}),(t=this.changed)[r]??(t[r]={initial:n,current:i}),this.changed[r].current={...this.changed[r].current,...i}})),this.sendItems()},this.isOnSending=!1,this.isSendingTimeout=void 0,this.willDeleteHistory=void 0,this.sendItems=async()=>{const{DEBUG_MODE:e,onSend:t,onSendEnd:n,batch_size:i,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,i).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,n)=>{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)?n&&n(a,l,c):this.sendItems()},this.options={...e},!this.options.orderBy){const{synced_field:t,id_fields:n}=e;this.options.orderBy=[t,...n.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((n=>{t[n]=e[n]})),t}getDeltaObj(e){let t={};return Object.keys(e).map((n=>{this.options.id_fields.includes(n)||(t[n]=e[n])})),t}},t.isEmpty=r,t.get=function(e,t){let n=t,i=e;return e?("string"==typeof n&&(n=n.split(".")),n.reduce(((e,t)=>e&&e[t]?e[t]:void 0),i)):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 n(i){var r=t[i];if(void 0!==r)return r.exports;var s=t[i]={exports:{}};return e[i].call(s.exports,s,s.exports,n),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.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)})()));
package/lib/filters.ts CHANGED
@@ -19,8 +19,9 @@
19
19
  | { "$nin": T[] }
20
20
  | { "$between": [T, T] }
21
21
  ;
22
- export const CompareFilterKeys = ["=", "$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"];
23
- export const CompareInFilterKeys = ["$in", "$nin"]
22
+ export const CompareFilterKeys = ["=", "$eq","<>",">",">=","<=","$eq","$ne","$gt","$gte","$lte"] as const;
23
+ export const CompareInFilterKeys = ["$in", "$nin"] as const;
24
+ export const TextFilterKeys = ["$ilike", "$like"] as const;
24
25
 
25
26
  export type FullTextSearchFilter =
26
27
  | { "to_tsquery": string[] }
@@ -28,7 +29,7 @@ export type FullTextSearchFilter =
28
29
  | { "phraseto_tsquery": string[] }
29
30
  | { "websearch_to_tsquery": string[] }
30
31
  ;
31
- export const TextFilter_FullTextSearchFilterKeys = ["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"];
32
+ export const TextFilter_FullTextSearchFilterKeys = ["to_tsquery","plainto_tsquery","phraseto_tsquery","websearch_to_tsquery"] as const;
32
33
 
33
34
  export type TextFilter =
34
35
  | CompareFilter<string>
@@ -39,7 +40,7 @@ export type TextFilter =
39
40
  | { "@>": FullTextSearchFilter } | { "$contains": FullTextSearchFilter }
40
41
  | { "<@": FullTextSearchFilter } | { "$containedBy": FullTextSearchFilter }
41
42
  ;
42
- export const TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"];
43
+ export const TextFilterFTSKeys = ["@@", "@>", "<@", "$contains", "$containedBy"] as const;
43
44
 
44
45
  export type ArrayFilter<T = (number | boolean | string)[]> =
45
46
  | CompareFilter<T>
@@ -91,7 +92,7 @@ export type GeomFilter =
91
92
  // | { "~": GeoBBox }
92
93
  // | { "~=": GeoBBox }
93
94
  ;
94
- export const GeomFilterKeys = ["~","~=","@","|&>","|>>", ">>", "=", "<<|", "<<", "&>", "&<|", "&<", "&&&", "&&"]
95
+ export const GeomFilterKeys = ["~","~=","@","|&>","|>>", ">>", "=", "<<|", "<<", "&>", "&<|", "&<", "&&&", "&&"] as const;
95
96
  const _GeomFilter_Funcs = ["ST_MakeEnvelope", "ST_MakePolygon"]
96
97
  export const GeomFilter_Funcs = _GeomFilter_Funcs.concat(_GeomFilter_Funcs.map(v => v.toLowerCase()));
97
98
 
@@ -105,12 +106,32 @@ export type FilterDataType<T = any> =
105
106
  : T extends boolean ? CompareFilter<T>
106
107
  : T extends Date ? CompareFilter<T>
107
108
  : T extends any[] ? ArrayFilter<T>
108
- : (CompareFilter<T> & ArrayFilter<T> & TextFilter & GeomFilter)
109
+ : (CompareFilter<T> | ArrayFilter<T> | TextFilter | GeomFilter)
109
110
  ;
110
111
 
111
112
  export const EXISTS_KEYS = ["$exists", "$notExists", "$existsJoined", "$notExistsJoined"] as const;
112
113
  export type EXISTS_KEY = typeof EXISTS_KEYS[number];
113
114
 
115
+
116
+ /**
117
+ * Shortened filter operands
118
+ */
119
+ type BasicFilter<Field extends string, DataType extends any> = Partial<{
120
+ [K in Extract<typeof CompareFilterKeys[number], string> as `${Field}.${K}`]: DataType
121
+ }> | Partial<{
122
+ [K in Extract<typeof CompareInFilterKeys[number], string> as `${Field}.${K}`]: DataType[]
123
+ }>;
124
+ type StringFilter<Field extends string, DataType extends any> = BasicFilter<Field, DataType> & (Partial<{
125
+ [K in Extract<typeof TextFilterKeys[number], string> as `${Field}.${K}`]: DataType
126
+ }> | Partial<{
127
+ [K in Extract<typeof TextFilterFTSKeys[number], string> as `${Field}.${K}`]: any
128
+ }>);
129
+ type ValueOf<T> = T[keyof T];
130
+
131
+ type ShorthandFilter<Obj extends Record<string, any>> = ValueOf<{
132
+ [K in keyof Obj]: Obj[K] extends string? StringFilter<K, Obj[K]> : BasicFilter<K, Obj[K]>;
133
+ }>
134
+
114
135
  /* Traverses object keys to make filter */
115
136
  export type FilterForObject<T = AnyObject> = {
116
137
  [K in keyof Partial<T>]: FilterDataType<T[K]>
@@ -119,7 +140,8 @@ export type FilterForObject<T = AnyObject> = {
119
140
  * Filters with shorthand notation
120
141
  * @example: { "name.$ilike": 'abc' }
121
142
  */
122
- { [K in keyof Omit<{ [key: string]: any }, keyof T>]: (FilterDataType | Date | string | number | (Date | string | number)[]) };
143
+ ShorthandFilter<T>
144
+
123
145
 
124
146
 
125
147
  /**
@@ -136,12 +158,13 @@ export type FilterItem<T = AnyObject> =
136
158
  * @example { $or: [ { id: 1 }, { status: 'live' } ] }
137
159
  */
138
160
  export type FullFilter<T = AnyObject> =
139
- | FilterItem<T>
140
- | { $and: (FilterItem<T> | FullFilter)[] }
141
- | { $or: (FilterItem<T> | FullFilter)[] }
161
+ | { $and: (FilterItem<T> | FullFilter<T>)[] }
162
+ | { $or: (FilterItem<T> | FullFilter<T>)[] }
142
163
  | { $not: FilterItem<T> }
164
+ | FilterItem<T>
143
165
  ;
144
166
 
167
+
145
168
  /**
146
169
  * Simpler FullFilter to reduce load on compilation
147
170
  */
package/lib/index.ts CHANGED
@@ -30,6 +30,60 @@ export const TS_PG_Types = {
30
30
  } as const;
31
31
  export type TS_COLUMN_DATA_TYPES = keyof typeof TS_PG_Types;
32
32
 
33
+
34
+ /**
35
+ * Generated Typescript schema for the tables and views in the database
36
+ * Example:
37
+ *
38
+ *
39
+ * type DBSchema = {
40
+ * ..view_name: {
41
+ * is_view: boolean;
42
+ * select: boolean;
43
+ * insert: boolean;
44
+ * update: boolean;
45
+ * delete: boolean;
46
+ * dataTypes: { col1: number | null; col2: string; }
47
+ * columns: {
48
+ * ..col_Name: {
49
+ * is_nullable?: boolean;
50
+ * is_nullable_or_has_default?: boolean;
51
+ * type: any;
52
+ * }
53
+ * }
54
+ * }
55
+ * }
56
+ */
57
+
58
+ export type DBColumnSchema = {
59
+ [col_name: string]: {
60
+ is_nullable?: boolean;
61
+ is_nullable_or_has_default?: boolean;
62
+ type: any;
63
+ }
64
+ }
65
+ export type DBTableSchema = {
66
+ is_view?: boolean;
67
+ select?: boolean;
68
+ insert?: boolean;
69
+ update?: boolean;
70
+ delete?: boolean;
71
+ dataTypes?: Record<string, any>;
72
+ columns: DBColumnSchema;
73
+ }
74
+ export type DBSchema = {
75
+ [tov_name: string]: DBTableSchema
76
+ }
77
+
78
+ export type DBSchemaColumns<Cols extends DBColumnSchema> = {
79
+ [key in keyof Cols]: Cols[key]["is_nullable"] extends true? (null | Cols[key]["type"]) : Cols[key]["type"];
80
+ }
81
+ export type DBSchemaInsertColumns<Cols extends DBColumnSchema> = {
82
+ [key in keyof Cols as Cols[key]["is_nullable_or_has_default"] extends true? key : never]?: Cols[key]["type"] | null
83
+ } & {
84
+ [key in keyof Cols as Cols[key]["is_nullable_or_has_default"] extends true? never : key]: Cols[key]["type"]
85
+ }
86
+
33
87
  export type ColumnInfo = {
34
88
  name: string;
35
89
 
@@ -176,19 +230,23 @@ export type OrderBy<T = AnyObject> =
176
230
  | _OrderBy<AnyObject>
177
231
  ;
178
232
 
179
- export type SelectTyped<T extends AnyObject> =
233
+ type CommonSelect =
234
+ | "*"
235
+ | ""
236
+
237
+ export type SelectTyped<T extends AnyObject> =
180
238
  | { [K in keyof Partial<T>]: 1 }
181
239
  | { [K in keyof Partial<T>]: 0 }
182
240
  | { [K in keyof Partial<T>]: false }
183
- | { [K in keyof Partial<T>]: true }
184
- | "*"
241
+ | { [K in keyof Partial<T>]: true }
185
242
  | (keyof T)[]
243
+ | CommonSelect
186
244
  ;
187
245
 
188
- export type Select<T extends AnyObject = AnyObject> =
189
- | SelectTyped<T>
190
- | ""
246
+ export type Select<T extends AnyObject = never> = T extends AnyObject? SelectTyped<T> : (
191
247
  | AnyObject
248
+ | CommonSelect
249
+ )
192
250
  ;
193
251
 
194
252
  export type SelectBasic =
@@ -200,12 +258,10 @@ export type SelectBasic =
200
258
  ;
201
259
 
202
260
  /* Simpler types */
261
+ type CommonSelectParams = {
203
262
 
204
- export type SelectParamsBasic = {
205
- select?: SelectBasic;
206
263
  limit?: number;
207
264
  offset?: number;
208
- orderBy?: OrderBy;
209
265
 
210
266
  /**
211
267
  * Will group by all non aggregated fields specified in select (or all fields by default)
@@ -228,10 +284,15 @@ export type SelectBasic =
228
284
  * Will return an array of values from the selected field. Similar to array_agg(field).
229
285
  */
230
286
  | "values"
231
- ;
287
+
232
288
  }
289
+ // export type SelectParamsBasic = {
290
+ // select?: SelectBasic;
291
+ // orderBy?: OrderBy;
292
+ // ;
293
+ // }
233
294
 
234
- export type SelectParams<T = AnyObject> = SelectParamsBasic & {
295
+ export type SelectParams<T extends AnyObject = never> = CommonSelectParams & {
235
296
  select?: Select<T>;
236
297
  orderBy?: OrderBy<T>;
237
298
  }
@@ -256,7 +317,7 @@ export type DeleteParams<T = AnyObject> = {
256
317
  returning?: Select<T>;
257
318
  }
258
319
 
259
- export type SubscribeParamsBasic = SelectParamsBasic & {
320
+ export type SubscribeParamsBasic = CommonSelectParams & {
260
321
  throttle?: number;
261
322
  };
262
323
 
@@ -325,7 +386,7 @@ type GetSelectReturnType<O extends SelectParams<TD>, TD extends AnyObject> =
325
386
  O extends { select: Record<string, 0> }? Omit<TD, keyof O["select"]> :
326
387
  TD;
327
388
 
328
- type GetUpdateReturnType<O extends UpdateParams<TD>, TD extends AnyObject> =
389
+ type GetUpdateReturnType<O extends UpdateParams, TD extends AnyObject> =
329
390
  O extends { returning: "*" }? TD :
330
391
  O extends { returning: "" }? Record<string, never> :
331
392
  O extends { returning: Record<string, 1> }? Pick<TD, keyof O["returning"]> :
@@ -366,15 +427,15 @@ export type TableHandler<TD = AnyObject, InsertType = TD> = ViewHandler<TD> & {
366
427
  export type ViewHandlerBasic = {
367
428
  getInfo?: (lang?: string) => Promise<TableInfo>;
368
429
  getColumns?: GetColumns
369
- find: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<PartialLax<TD>[]>;
370
- findOne: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<PartialLax<TD>>;
430
+ find: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<PartialLax<TD>[]>;
431
+ findOne: <TD = AnyObject>(filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<PartialLax<TD>>;
371
432
  subscribe: <TD = AnyObject>(filter: FullFilterBasic, params: SubscribeParamsBasic, onData: (items: PartialLax<TD>[], onError?: OnError) => any) => Promise<{ unsubscribe: () => any }>;
372
433
  subscribeOne: <TD = AnyObject>(filter: FullFilterBasic, params: SubscribeParamsBasic, onData: (item: PartialLax<TD>, onError?: OnError) => any) => Promise<{ unsubscribe: () => any }>;
373
434
  count: (filter?: FullFilterBasic) => Promise<number>;
374
435
  /**
375
436
  * Returns result size in bits
376
437
  */
377
- size: (filter?: FullFilterBasic, selectParams?: SelectParamsBasic) => Promise<string>;
438
+ size: (filter?: FullFilterBasic, selectParams?: SelectParams) => Promise<string>;
378
439
  }
379
440
 
380
441
  export type TableHandlerBasic = ViewHandlerBasic & {
@@ -390,7 +451,7 @@ export type MethodHandler = {
390
451
  }
391
452
 
392
453
  export type JoinMaker<TT = AnyObject> = (filter?: FullFilter<TT>, select?: Select<TT>, options?: SelectParams<TT>) => any;
393
- export type JoinMakerBasic = (filter?: FullFilterBasic, select?: SelectBasic, options?: SelectParamsBasic) => any;
454
+ export type JoinMakerBasic = (filter?: FullFilterBasic, select?: SelectBasic, options?: SelectParams) => any;
394
455
 
395
456
  export type TableJoin = {
396
457
  [key: string]: JoinMaker;
@@ -456,10 +517,29 @@ export type SQLHandler =
456
517
  }
457
518
  ) => Promise<GetSQLReturnType<Opts>>
458
519
 
459
-
460
- export type DBHandler = {
520
+ type SelectMethods<T extends DBTableSchema> = T["select"] extends true? keyof Pick<TableHandler, "count" | "find" | "findOne" | "getColumns" | "getInfo" | "size" | "subscribe" | "subscribeOne"> : never;
521
+ type UpdateMethods<T extends DBTableSchema> = T["update"] extends true? keyof Pick<TableHandler, "update" | "updateBatch"> : never;
522
+ type InsertMethods<T extends DBTableSchema> = T["insert"] extends true? keyof Pick<TableHandler, "insert"> : never;
523
+ type UpsertMethods<T extends DBTableSchema> = T["insert"] extends true? T["update"] extends true? keyof Pick<TableHandler, "upsert"> : never : never;
524
+ type DeleteMethods<T extends DBTableSchema> = T["delete"] extends true? keyof Pick<TableHandler, "delete"> : never;
525
+ // type SyncMethods<T extends DBTableSchema> = T["select"] extends true? T["is_view"] extends true? keyof Pick<TableHandler, "sync"> : never : never;
526
+ type ValidatedMethods<T extends DBTableSchema> =
527
+ | SelectMethods<T>
528
+ | UpdateMethods<T>
529
+ | InsertMethods<T>
530
+ | UpsertMethods<T>
531
+ | DeleteMethods<T>
532
+ // | SyncMethods<T>
533
+
534
+ type ValidatedTableHandler<T extends DBTableSchema> = Pick<
535
+ TableHandler<DBSchemaColumns<T["columns"]>, DBSchemaInsertColumns<T["columns"]>>,
536
+ ValidatedMethods<T>
537
+ >;
538
+ export type DBHandler<S extends DBSchema = never> = (S extends DBSchema? {
539
+ [k in keyof S]: S[k]["is_view"] extends true ? ViewHandler<DBSchemaColumns<S[k]["columns"]>> : ValidatedTableHandler<S[k]>
540
+ } : {
461
541
  [key: string]: Partial<TableHandler>;
462
- } & DbJoinMaker;
542
+ }) & DbJoinMaker;
463
543
 
464
544
 
465
545
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-types",
3
- "version": "1.5.144",
3
+ "version": "1.5.147",
4
4
  "description": "",
5
5
  "main": "dist/index_umd.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,8 @@
18
18
  // "outFile": "bundle.js",
19
19
  // "moduleResolution": "node"
20
20
  "declaration": true,
21
- "declarationMap": true
21
+ "declarationMap": true,
22
+ "keyofStringsOnly": true
22
23
  },
23
24
  "exclude": [
24
25
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"typeTests.d.ts","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"AAyFA,eAAO,MAAM,WAAW,YAAW,CAAC"}
1
+ {"version":3,"file":"typeTests.d.ts","sourceRoot":"","sources":["typeTests.ts"],"names":[],"mappings":"AA8HA,eAAO,MAAM,WAAW,YAAW,CAAC"}
@@ -13,12 +13,18 @@ exports.typeTestsOK = void 0;
13
13
  (() => __awaiter(void 0, void 0, void 0, function* () {
14
14
  var _a, _b;
15
15
  const tableHandler = undefined;
16
+ const f = {
17
+ $and: [
18
+ { a: "d", num: { ">": 232 } },
19
+ { "num.$eq": 2, }
20
+ ]
21
+ };
16
22
  if (tableHandler) {
17
23
  const newRow = yield ((_a = tableHandler.insert) === null || _a === void 0 ? void 0 : _a.call(tableHandler, { h: 2 }, { returning: { b: 1, c: 1 } }));
18
24
  newRow.b;
19
25
  newRow.c;
20
26
  newRow.h;
21
- const row = yield ((_b = tableHandler.findOne) === null || _b === void 0 ? void 0 : _b.call(tableHandler, {}, { select: { b: 0 } }));
27
+ const row = yield ((_b = tableHandler.findOne) === null || _b === void 0 ? void 0 : _b.call(tableHandler, { "c.$nin": [2] }, { select: { b: 0 } }));
22
28
  row.c;
23
29
  row.h;
24
30
  row.b;
@@ -61,6 +67,12 @@ exports.typeTestsOK = void 0;
61
67
  handles.socketUnsubChannel;
62
68
  }
63
69
  }
70
+ const db = 1;
71
+ const s = { a: 1 };
72
+ db.view1.find({ "c1.$in": ["2", null] }, { select: { c1: 1, c2: 1 } });
73
+ db.table1.insert({ c1: "2" });
74
+ db.table1.update;
75
+ db.table1.find;
64
76
  }));
65
77
  const typeTestsOK = () => { };
66
78
  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,13 +1,22 @@
1
1
 
2
- import type { TableHandler, SQLHandler } from "../dist/index";
2
+ import type { TableHandler, SQLHandler, FullFilter, DBHandler, Select, SelectTyped } from "../dist/index";
3
3
 
4
4
  /**
5
5
  * Test select/return type inference
6
6
  */
7
7
  (async () => {
8
+
9
+ type TableData = { h: number; b: number; c: number; }
8
10
 
9
- const tableHandler: TableHandler<{ h: number; b: number; c: number; }, { h: number; b?: number; c?: number; }> = undefined as any;
11
+ const tableHandler: TableHandler<TableData, { h: number; b?: number; c?: number; }> = undefined as any;
10
12
 
13
+ const f: FullFilter<{ a: string | null; num: number }> = {
14
+ $and: [
15
+ { a: "d", num: { ">": 232 } },
16
+ { "num.$eq": 2, }
17
+ ]
18
+ };
19
+
11
20
  if(tableHandler){
12
21
  const newRow = await tableHandler.insert?.({ h: 2 }, { returning: {b: 1, c: 1} });
13
22
  newRow.b;
@@ -17,7 +26,7 @@ import type { TableHandler, SQLHandler } from "../dist/index";
17
26
  newRow.h;
18
27
 
19
28
  // const f: FullFilter<Partial<{ a: number; s: string}>> = { }
20
- const row = await tableHandler.findOne?.({ }, { select: {b: 0} });
29
+ const row = await tableHandler.findOne?.({ "c.$nin": [2] }, { select: {b: 0} });
21
30
  row.c;
22
31
  row.h;
23
32
 
@@ -85,6 +94,34 @@ import type { TableHandler, SQLHandler } from "../dist/index";
85
94
  }
86
95
  }
87
96
 
97
+ const db: DBHandler<{
98
+ table1: {
99
+ select: true;
100
+ insert: true;
101
+ update: false;
102
+ columns: {
103
+ c1: { type: string; is_nullable: true };
104
+ c2: { type: number; is_nullable_or_has_default: true };
105
+ }
106
+ };
107
+ view1: {
108
+ is_view: true
109
+ columns: {
110
+ c1: { type: string; is_nullable: true };
111
+ c2: { type: number; };
112
+ }
113
+ }
114
+ }> = 1 as any;
115
+
116
+ const s: SelectTyped<{ a: number; c: string }> = { a: 1 }
117
+ db.view1.find({ "c1.$in": ["2", null] }, { select: { c1: 1, c2: 1 } });
118
+ db.table1.insert({ c1: "2" });
119
+
120
+ // @ts-expect-error
121
+ db.table1.update
122
+
123
+ db.table1.find
124
+
88
125
  });
89
126
 
90
127
  export const typeTestsOK = () => {};
package/tsconfig.json CHANGED
@@ -19,7 +19,8 @@
19
19
  // "moduleResolution": "node"
20
20
  "declaration": true,
21
21
  "declarationMap": true,
22
- "isolatedModules": true
22
+ "isolatedModules": true,
23
+ "keyofStringsOnly": true
23
24
  },
24
25
  "exclude": [
25
26
  ],