prostgles-client 4.0.358 → 4.0.359

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.
@@ -1,6 +1,6 @@
1
- import type { AnyObject, EqualityFilter, FieldFilter, NormalizedRow, SyncBatchParams, TableHandler } from "prostgles-types";
2
- import { WAL } from "prostgles-types";
1
+ import type { AnyObject, EqualityFilter, FieldFilter, NormalizedRow, SyncBatchParams, TableHandler, ValidatedColumnInfo } from "prostgles-types";
3
2
  import type { DBHandlerClient, SyncDebugEvent } from "../prostgles";
3
+ import { WAL } from "prostgles-types/dist/WAL";
4
4
  type OmittedSyncProps = "onDebug" | "name" | "filter" | "db" | "onError";
5
5
  export type SyncOptions = Partial<Omit<SyncedTableOptions, OmittedSyncProps>> & {
6
6
  select?: FieldFilter;
@@ -13,18 +13,18 @@ export type OnErrorHandler = (error: any) => void;
13
13
  /**
14
14
  * Creates a local synchronized table
15
15
  */
16
- export type OnChange<T extends Record<string, unknown>, Opts extends SyncOptions> = (data: SyncDataItem<T, Opts>[], delta?: Partial<T>[]) => any;
16
+ export type OnChange<T extends Record<string, unknown>, Opts extends SyncOptions> = (data: SyncDataItem<T, Opts>[], delta?: Partial<NormalizedRow<T>>[]) => any;
17
17
  export type SyncHandler<T> = {
18
18
  $unsync: () => void;
19
19
  $upsert: (newData: T[]) => void | Promise<void>;
20
20
  getItems: () => T[];
21
21
  };
22
22
  export type Sync<T extends AnyObject = AnyObject> = <TD extends T, Opts extends SyncOptions>(basicFilter: EqualityFilter<TD>, options: SyncOptions, onChange: OnChange<TD, Opts>, onError?: OnErrorHandler) => Promise<SyncHandler<TD>>;
23
- export type OnchangeOne<T extends Record<string, unknown>, Opts extends SyncOptions> = (data: SyncDataItem<NormalizedRow<T>, Opts>, delta?: Partial<NormalizedRow<T>>) => void | Promise<void>;
23
+ export type OnChangeOne<T extends Record<string, unknown>, Opts extends SyncOptions> = (data: SyncDataItem<T, Opts>, delta?: Partial<NormalizedRow<T>>) => void | Promise<void>;
24
24
  /**
25
25
  * Creates a local synchronized record
26
26
  */
27
- export type SyncOne<T extends AnyObject = AnyObject> = <TD extends T, Opts extends SyncOptions>(basicFilter: Partial<TD>, options: Opts, onChange: OnchangeOne<TD, Opts>, onError?: OnErrorHandler) => Promise<SingleSyncHandles<TD, Opts["handlesOnData"]>>;
27
+ export type SyncOne<T extends AnyObject = AnyObject> = <TD extends T, Opts extends SyncOneOptions>(basicFilter: Partial<TD>, options: Opts, onChange: OnChangeOne<TD, Opts>, onError?: OnErrorHandler) => Promise<SingleSyncHandles<TD, Opts["handlesOnData"]>>;
28
28
  export type SyncBatchRequest = {
29
29
  from_synced?: string | number;
30
30
  to_synced?: string | number;
@@ -73,7 +73,7 @@ export type MultiSyncHandles<T extends AnyObject> = {
73
73
  };
74
74
  export type SubscriptionSingle<T extends AnyObject = AnyObject, Full extends boolean = false> = {
75
75
  _onChange: SingleChangeListener<T, Full>;
76
- notify: (data: T, delta?: DeepPartial<T>) => T;
76
+ notify: (data: T, delta?: DeepPartial<NormalizedRow<T>>) => void | Promise<void>;
77
77
  idObj: Partial<T>;
78
78
  handlesOnData?: boolean;
79
79
  handles?: SingleSyncHandles<T, Full>;
@@ -88,7 +88,7 @@ export type SubscriptionMulti<T extends AnyObject = AnyObject> = {
88
88
  export type MultiChangeListener<T extends AnyObject = AnyObject> = (items: NormalizedRow<T>[], delta: DeepPartial<T>[]) => any;
89
89
  export type SingleChangeListener<T extends AnyObject = AnyObject, Full extends boolean | undefined = false> = (item: SyncDataItem<T, {
90
90
  handlesOnData: Full;
91
- }>, delta?: DeepPartial<T>) => any;
91
+ }>, delta?: DeepPartial<NormalizedRow<T>>) => void | Promise<void>;
92
92
  export type SyncedTableOptions = {
93
93
  /**
94
94
  * Table name
@@ -97,7 +97,7 @@ export type SyncedTableOptions = {
97
97
  /**
98
98
  * Basic filter
99
99
  */
100
- filter?: EqualityFilter<AnyObject>;
100
+ filter: undefined | EqualityFilter<AnyObject>;
101
101
  /**
102
102
  * Data change listener.
103
103
  * Called on first sync and every time the data changes
@@ -105,9 +105,10 @@ export type SyncedTableOptions = {
105
105
  onChange?: MultiChangeListener;
106
106
  onError?: OnErrorHandler;
107
107
  db: DBHandlerClient | Partial<DBHandlerClient>;
108
- select?: "*" | AnyObject;
108
+ select: FieldFilter | undefined;
109
+ columns: ValidatedColumnInfo[];
109
110
  onReady: () => void;
110
- onDebug?: (event: SyncDebugEvent, tbl: SyncedTable) => Promise<void> | void;
111
+ onDebug?: (event: SyncDebugEvent) => Promise<void> | void;
111
112
  };
112
113
  export type DbTableSync = {
113
114
  unsync: () => void;
@@ -116,7 +117,7 @@ export type DbTableSync = {
116
117
  export declare class SyncedTable {
117
118
  db: DBHandlerClient | Partial<DBHandlerClient>;
118
119
  name: string;
119
- select?: "*" | AnyObject;
120
+ select?: FieldFilter;
120
121
  filter?: EqualityFilter<AnyObject>;
121
122
  id_fields: string[];
122
123
  synced_field: string;
@@ -141,8 +142,8 @@ export declare class SyncedTable {
141
142
  itemsMap: Map<string, AnyObject>;
142
143
  isSynced: boolean;
143
144
  onError: SyncedTableOptions["onError"];
144
- onDebug?: (evt: Omit<SyncDebugEvent, "type" | "tableName" | "channelName" | "syncedTable">) => Promise<void> | void;
145
- constructor({ name, filter, onReady, onDebug, db, select, onError, }: SyncedTableOptions);
145
+ onDebug?: (evt: Omit<SyncDebugEvent, "type" | "tableName" | "channelName" | "options">) => Promise<void> | void;
146
+ constructor(options: SyncedTableOptions);
146
147
  static create(opts: Omit<SyncedTableOptions, "onReady">): Promise<SyncedTable>;
147
148
  /**
148
149
  * Returns a sync handler to all records within the SyncedTable instance
@@ -1 +1 @@
1
- {"version":3,"file":"SyncedTable.d.ts","sourceRoot":"","sources":["../../lib/SyncedTable/SyncedTable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncedTable.d.ts","sourceRoot":"","sources":["../../lib/SyncedTable/SyncedTable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EAGT,cAAc,EACd,WAAW,EACX,aAAa,EACb,eAAe,EACf,YAAY,EACZ,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AASzB,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,EAAE,GAAG,EAAgB,MAAM,0BAA0B,CAAC;AAI7D,KAAK,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;AAEzE,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,GAAG;IAC9E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC,GAAG;IACjF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,SAAS,WAAW,IAAI,CAClF,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAC7B,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,KAChC,GAAG,CAAC;AAET,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,EAAE,IAAI,SAAS,WAAW,EACzF,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC,EAC/B,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,EAC5B,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;AAE9B,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,SAAS,WAAW,IAAI,CACrF,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,EAC3B,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAC9B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B;;GAEG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,CAAC,EAAE,SAAS,CAAC,EAAE,IAAI,SAAS,cAAc,EAC/F,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,EACxB,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,EAC/B,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,OAAO,EAAE,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IACzD,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,SAAS,OAAO,GAAG,SAAS,IAAI,CAC7E,QAAQ,EAAE,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,EACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAC3B,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAEhC,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,IAAI,CAChD,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAChC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,KAC3B,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAEzB,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AACF,KAAK,WAAW,CAAC,CAAC,IAChB,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GACtB,CAAC,SAAS,MAAM,GAChB;KACG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACnC,GACD,CAAC,CAAC;AAEN;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAC3B,CAAC,SAAS,SAAS,GAAG,SAAS,EAC/B,IAAI,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,IACtC;IACF,IAAI,EAAE,MAAM,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACzC,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAC1E,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,SAAS,WAAW,EAChC,OAAO,EAAE,IAAI,SAAS;QAAE,SAAS,EAAE,IAAI,CAAA;KAAE,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACvE,IAAI,CAAC,EAAE,IAAI,KACR,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/B,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;CACpC,CAAC;AAEF,KAAK,qBAAqB,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,WAAW,CAAC,QAAQ,CAAC,IAC7E,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAClC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,GACvD,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAC9C,CAAC,CAAC;AAEN,MAAM,MAAM,YAAY,CACtB,CAAC,SAAS,SAAS,EACnB,IAAI,SAAS,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,QAAQ,CAAC,IACxD,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GACzD,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,IAAI,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,GAC9F,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzE,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,SAAS,IAAI;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC;IAC9C,QAAQ,EAAE,MAAM,SAAS,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,IAAI,SAAS,OAAO,GAAG,KAAK,IAAI;IAC9F,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;CACtC,CAAC;AACF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI;IAC/D,SAAS,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAClC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;IACpD,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI,CACjE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EACzB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KACpB,GAAG,CAAC;AACT,MAAM,MAAM,oBAAoB,CAC9B,CAAC,SAAS,SAAS,GAAG,SAAS,EAC/B,IAAI,SAAS,OAAO,GAAG,SAAS,GAAG,KAAK,IACtC,CACF,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE;IAAE,aAAa,EAAE,IAAI,CAAA;CAAE,CAAC,EAC9C,KAAK,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAClC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAE9C;;;OAGG;IACH,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE/C,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,IAAI,KAAK,IAAI,CAAC;CACzF,CAAC;AAEF,qBAAa,WAAW;IACtB,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,SAAO;IACf,UAAU,SAAM;IAEhB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAM;IAEpD,GAAG,CAAC,EAAE,GAAG,CAAC;IAEV,SAAS,CAAC,EAAE,GAAG,CAAC;IAEhB,mBAAmB,EAAE,iBAAiB,EAAE,CAAM;IAC9C,oBAAoB,EAAE,kBAAkB,EAAE,CAAM;IAEhD;;OAEG;IACH,IAAI,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAEhD;IACD,IAAI,kBAAkB,IAAI,iBAAiB,EAAE,CAE5C;IAED,IAAI,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,EAElD;IACD,IAAI,mBAAmB,IAAI,kBAAkB,EAAE,CAE9C;IAED,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,QAAQ,yBAAgC;IACxC,QAAQ,UAAS;IACjB,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACvC,OAAO,CAAC,EAAE,CACR,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC,KACxE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;gBAEd,OAAO,EAAE,kBAAkB;IA2JvC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAqB9E;;;;OAIG;IACH,IAAI,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAClC,QAAQ,EAAE,mBAAmB,CAAC,CAAC,CAAC,EAChC,aAAa,UAAO,GACnB,gBAAgB,CAAC,CAAC,CAAC;IActB,qBAAqB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,IAAI,SAAS,OAAO,GAAG,KAAK,EACjF,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,QAAQ,EAAE,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAC/D,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC;IA+B7B;;;;;OAKG;IACH,OAAO,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,IAAI,SAAS,OAAO,GAAG,KAAK,EACnE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EACjB,QAAQ,EAAE,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,EACvC,aAAa,UAAO,GACnB,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC;IAkC7B;;;OAGG;IACH,kBAAkB,GAAI,UAAS,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,EAAO,UAkDpF;IAEF,WAAW,GAAI,UAAU,oBAAoB,GAAG,mBAAmB,YAIjE;IAEF,QAAQ,CAAC,CAAC,EAAE,SAAS;IAMrB,QAAQ,CAAC,CAAC,EAAE,SAAS;IAOrB,aAAa,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS;IAQtC,MAAM,aAEJ;IAEF,OAAO,aAKL;IAEF,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IAQzC,YAAY,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IA+B/D;;;;OAIG;IACH,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAkB/C,SAAS;IAIT,IAAI,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,aAAa,GAAG,QAAQ,CAAC,GAAG,SAAS,CAOtF;IAED,MAAM,GAAU,MAAM,SAAS,EAAE,qBAAmB,sBAQlD;IAEF;;OAEG;IACH,aAAa,GAAI,MAAM,SAAS,UAS9B;IAEF;;;;;OAKG;IACH,MAAM,GAAU,OAAO,UAAU,EAAE,EAAE,qBAAmB,KAAG,OAAO,CAAC,IAAI,CAAC,CA6HtE;IAGF,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS;IAMxD;;;;;;OAMG;IACH,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,UAAQ,EAAE,UAAU,UAAQ;IAYhE;;OAEG;IACH,QAAQ,GAAI,QAAQ,SAAS,EAAE,KAAG,IAAI,CASpC;IAEF;;OAEG;IACH,QAAQ,GAAI,CAAC,SAAS,SAAS,GAAG,SAAS,OAAK,CAAC,EAAE,CAsBjD;IAEF;;OAEG;IACH,QAAQ,GACN,4CAA2C,eAAiD;;QAe5F;CACH;AAED,eAAO,MAAM,SAAS,GACpB,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;CAkB7C,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,KAAK,CAAC,KAAG,CAetC,CAAC"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.quickClone = exports.mergeDeep = exports.SyncedTable = void 0;
4
4
  const prostgles_types_1 = require("prostgles-types");
5
5
  const getMultiSyncSubscription_1 = require("./getMultiSyncSubscription");
6
+ const WAL_1 = require("prostgles-types/dist/WAL");
6
7
  const hasWnd = typeof window !== "undefined";
7
8
  class SyncedTable {
8
9
  /**
@@ -20,7 +21,8 @@ class SyncedTable {
20
21
  get singleSubscriptions() {
21
22
  return this._singleSubscriptions;
22
23
  }
23
- constructor({ name, filter = {}, onReady, onDebug, db, select = "*", onError, }) {
24
+ constructor(options) {
25
+ var _a;
24
26
  this.throttle = 100;
25
27
  this.batch_size = 50;
26
28
  this.columns = [];
@@ -274,6 +276,7 @@ class SyncedTable {
274
276
  }
275
277
  return res;
276
278
  };
279
+ const { name, filter = {}, onReady, onDebug, db, select = "*", onError } = options;
277
280
  this.name = name;
278
281
  this.filter = filter;
279
282
  this.select = select;
@@ -283,20 +286,23 @@ class SyncedTable {
283
286
  type: "sync",
284
287
  tableName: name,
285
288
  channelName: (0, prostgles_types_1.getSyncChannelName)({ filter, select, tableName: name }),
286
- syncedTable: this,
287
- }, this);
289
+ options,
290
+ });
288
291
  this.onDebug({ command: "create", data: { name, filter, select } });
289
292
  }
290
293
  const tableHandler = db[name];
291
- if (!tableHandler)
294
+ if (!tableHandler) {
292
295
  throw `${name} table not found in db`;
296
+ }
293
297
  this.db = db;
294
298
  const { _sync, _syncInfo } = tableHandler;
295
- if (!_sync || !_syncInfo)
299
+ if (!_sync || !_syncInfo) {
296
300
  throw `${name} table does not support sync`;
301
+ }
297
302
  const { id_fields, synced_field, throttle = 100, batch_size = 50 } = _syncInfo;
298
- if (!id_fields.length || !synced_field)
303
+ if (!id_fields.length || !synced_field) {
299
304
  throw "id_fields/synced_field missing";
305
+ }
300
306
  this.id_fields = id_fields;
301
307
  this.synced_field = synced_field;
302
308
  this.batch_size = batch_size;
@@ -373,7 +379,7 @@ class SyncedTable {
373
379
  /**
374
380
  * Some syncs can be read only. Any changes are local
375
381
  */
376
- this.wal = new prostgles_types_1.WAL({
382
+ this.wal = new WAL_1.WAL({
377
383
  ...opts,
378
384
  batch_size,
379
385
  onSendStart: () => {
@@ -384,18 +390,18 @@ class SyncedTable {
384
390
  const _data = walData.map((d) => d.current);
385
391
  if (!_data.length)
386
392
  return [];
387
- return this.dbSync.syncData(data);
393
+ return s.syncData(data);
388
394
  }, //, deletedData);,
389
395
  onSendEnd: () => {
390
396
  if (hasWnd)
391
397
  window.onbeforeunload = null;
392
398
  },
393
399
  });
394
- this.notifyWal = new prostgles_types_1.WAL({
400
+ this.notifyWal = new WAL_1.WAL({
395
401
  ...opts,
396
402
  batch_size: Infinity,
397
403
  throttle: 5,
398
- onSend: async (items, fullItems) => {
404
+ onSend: async (_, fullItems) => {
399
405
  this._notifySubscribers(fullItems.map((d) => {
400
406
  var _a;
401
407
  return ({
@@ -408,11 +414,9 @@ class SyncedTable {
408
414
  });
409
415
  onReady();
410
416
  });
411
- if (tableHandler.getColumns) {
412
- tableHandler.getColumns().then((cols) => {
413
- this.columns = cols;
414
- });
415
- }
417
+ (_a = tableHandler.getColumns) === null || _a === void 0 ? void 0 : _a.call(tableHandler).then((cols) => {
418
+ this.columns = cols;
419
+ });
416
420
  }
417
421
  static create(opts) {
418
422
  return new Promise((resolve, reject) => {
@@ -0,0 +1,9 @@
1
+ import { WAL } from "prostgles-types/dist/WAL";
2
+ import { type SyncedTableOptions } from "./SyncedTable";
3
+ import type { Socket } from "socket.io-client";
4
+ export declare const createSync: (socket: Socket, options: Omit<SyncedTableOptions, "onReady">) => Promise<{
5
+ sync: <T extends import("prostgles-types").AnyObject = import("prostgles-types").AnyObject>(onChange: import("./SyncedTable").MultiChangeListener<T>, handlesOnData?: boolean) => import("./SyncedTable").MultiSyncHandles<T>;
6
+ syncOne: <T extends import("prostgles-types").AnyObject = import("prostgles-types").AnyObject, Full extends boolean = false>(idObj: Partial<T>, onChange: import("./SyncedTable").SingleChangeListener<T, Full>, handlesOnData?: boolean) => import("./SyncedTable").SingleSyncHandles<T, Full>;
7
+ notifyWal: WAL;
8
+ }>;
9
+ //# sourceMappingURL=createSync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSync.d.ts","sourceRoot":"","sources":["../../lib/SyncedTable/createSync.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,GAAG,EAAgB,MAAM,0BAA0B,CAAC;AAI7D,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,eAAO,MAAM,UAAU,GAAU,QAAQ,MAAM,EAAE,SAAS,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC;;;;EA0N5F,CAAC"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSync = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const WAL_1 = require("prostgles-types/dist/WAL");
6
+ const createSyncDataStore_1 = require("./createSyncDataStore");
7
+ const createSyncStateUtils_1 = require("./createSyncStateUtils");
8
+ const createSyncSubscriptionManager_1 = require("./createSyncSubscriptionManager");
9
+ const SyncedTable_1 = require("./SyncedTable");
10
+ const createSync = async (socket, options) => {
11
+ var _a;
12
+ const stateUtils = (0, createSyncStateUtils_1.createSyncStateUtils)(socket, options);
13
+ const { state, onDebug, id_fields, synced_field, throttle, batch_size, columns, _syncInfo, _sync, filter, } = stateUtils;
14
+ const store = (0, createSyncDataStore_1.createSyncDataStore)({ ..._syncInfo, columns, filter });
15
+ const onError = (_a = options.onError) !== null && _a !== void 0 ? _a : function (err) {
16
+ console.error("Sync internal error: ", err);
17
+ };
18
+ const onSyncRequest = (syncBatchParams) => {
19
+ let clientSyncInfo = { c_lr: undefined, c_fr: undefined, c_count: 0 };
20
+ const batch = store.getBatch(syncBatchParams);
21
+ if (batch.length) {
22
+ clientSyncInfo = {
23
+ c_fr: store.getRowSyncObj(batch[0]),
24
+ c_lr: store.getRowSyncObj(batch[batch.length - 1]),
25
+ c_count: batch.length,
26
+ };
27
+ }
28
+ onDebug({ command: "onUpdates", data: { syncBatchParams, batch, clientSyncInfo } });
29
+ return clientSyncInfo;
30
+ };
31
+ const onPullRequest = async (syncBatchParams) => {
32
+ // if(this.getDeleted().length){
33
+ // await this.syncDeleted();
34
+ // }
35
+ const data = store.getBatch(syncBatchParams);
36
+ await onDebug({ command: "onPullRequest", data: { syncBatchParams, data } });
37
+ return { data };
38
+ };
39
+ const onUpdates = async (onUpdatesParams) => {
40
+ await onDebug({ command: "onUpdates", data: { onUpdatesParams } });
41
+ if ("err" in onUpdatesParams && onUpdatesParams.err) {
42
+ onError(onUpdatesParams.err);
43
+ }
44
+ else if ("isSynced" in onUpdatesParams && onUpdatesParams.isSynced && !state.isSynced) {
45
+ state.isSynced = onUpdatesParams.isSynced;
46
+ const items = store.getItems().map((d) => ({ ...d }));
47
+ store.setItems([]);
48
+ const updateItems = items.map((d) => ({
49
+ idObj: store.getIdObj(d),
50
+ delta: { ...d },
51
+ }));
52
+ await upsert(updateItems, true);
53
+ }
54
+ else if ("data" in onUpdatesParams) {
55
+ /* Delta left empty so we can prepare it here */
56
+ const updateItems = onUpdatesParams.data.map((d) => {
57
+ return {
58
+ idObj: store.getIdObj(d),
59
+ delta: d,
60
+ };
61
+ });
62
+ await upsert(updateItems, true);
63
+ }
64
+ else {
65
+ console.error("Unexpected onUpdates");
66
+ }
67
+ return true;
68
+ };
69
+ const opts = {
70
+ id_fields,
71
+ synced_field,
72
+ throttle,
73
+ };
74
+ const dbSync = await _sync({ onSyncRequest, onPullRequest, onUpdates });
75
+ /**
76
+ * Some syncs can be read only. Any changes are local
77
+ */
78
+ const wal = new WAL_1.WAL({
79
+ ...opts,
80
+ batch_size,
81
+ onSendStart: () => {
82
+ if (isWindowDefined) {
83
+ window.onbeforeunload = function confirmExit() {
84
+ return "Data may be lost. Are you sure?";
85
+ };
86
+ }
87
+ },
88
+ onSend: async (data, walData) => {
89
+ const _data = walData.map((d) => d.current);
90
+ if (!_data.length)
91
+ return [];
92
+ return dbSync.syncData(data);
93
+ },
94
+ onSendEnd: () => {
95
+ if (isWindowDefined)
96
+ window.onbeforeunload = null;
97
+ },
98
+ });
99
+ /**
100
+ * Upserts data locally -> notify subs -> sends to server if required
101
+ * synced_field is populated if data is not from server
102
+ * @param items <{ idObj: object, delta: object }[]> Data items that changed
103
+ * @param from_server : <boolean> If false then updates will be sent to server
104
+ */
105
+ const upsert = async (items, from_server = false) => {
106
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
107
+ if ((!items || !items.length) && !from_server)
108
+ throw "No data provided for upsert";
109
+ /* If data has been deleted then wait for it to sync with server before continuing */
110
+ // if(from_server && this.getDeleted().length){
111
+ // await this.syncDeleted();
112
+ // }
113
+ const results = [];
114
+ let status;
115
+ const walItems = [];
116
+ await Promise.all(items.map(async (item, i) => {
117
+ var _a;
118
+ // let d = { ...item.idObj, ...item.delta };
119
+ const idObj = { ...item.idObj };
120
+ let delta = { ...item.delta };
121
+ /* Convert undefined to null because:
122
+ 1) JSON.stringify drops these keys
123
+ 2) Postgres does not have undefined
124
+ */
125
+ Object.keys(delta).map((k) => {
126
+ if (delta[k] === undefined)
127
+ delta[k] = null;
128
+ });
129
+ if (!from_server) {
130
+ store.checkItemCols({ ...item.delta, ...item.idObj });
131
+ }
132
+ const oldItem = store.getItem(idObj);
133
+ /* Calc delta if missing or if from server */
134
+ if ((from_server || (0, prostgles_types_1.isEmpty)(delta)) && !(0, prostgles_types_1.isEmpty)(oldItem)) {
135
+ delta = store.getDelta(oldItem || {}, delta);
136
+ }
137
+ /* Add synced if local update */
138
+ /** Will need to check client clock shift */
139
+ if (!from_server) {
140
+ delta[synced_field] = Date.now();
141
+ }
142
+ let newItem = { ...oldItem, ...delta, ...idObj };
143
+ if (oldItem && !from_server) {
144
+ /**
145
+ * Merge deep
146
+ */
147
+ if ((_a = item.opts) === null || _a === void 0 ? void 0 : _a.deepMerge) {
148
+ newItem = (0, SyncedTable_1.mergeDeep)({ ...oldItem, ...idObj }, { ...delta });
149
+ }
150
+ }
151
+ /* Update existing -> Expecting delta */
152
+ if (oldItem) {
153
+ status = oldItem[synced_field] < newItem[synced_field] ? "updated" : "unchanged";
154
+ /* Insert new item */
155
+ }
156
+ else {
157
+ status = "inserted";
158
+ }
159
+ store.setItem(newItem);
160
+ // if(!status) throw "changeInfo status missing"
161
+ const changeInfo = { idObj, delta, oldItem, newItem, status, from_server };
162
+ /* IF Local updates then Keep any existing oldItem to revert to the earliest working item */
163
+ if (!from_server) {
164
+ walItems.push({
165
+ initial: oldItem,
166
+ current: { ...newItem },
167
+ });
168
+ }
169
+ if (!(0, prostgles_types_1.isEmpty)(changeInfo.delta)) {
170
+ results.push(changeInfo);
171
+ }
172
+ /* TODO: Deletes from server */
173
+ // if(allow_deletes){
174
+ // items = this.getItems();
175
+ // }
176
+ return true;
177
+ })).catch((err) => {
178
+ console.error("SyncedTable failed upsert: ", err);
179
+ });
180
+ subscriptionManager.notifyWal.addData(results.map((d) => ({ initial: d.oldItem, current: d.newItem })));
181
+ /* Push to server */
182
+ if (!from_server && walItems.length) {
183
+ wal.addData(walItems);
184
+ }
185
+ };
186
+ const subscriptionManager = (0, createSyncSubscriptionManager_1.createSyncSubscriptionManager)({ id_fields, synced_field }, store, stateUtils, upsert);
187
+ return subscriptionManager;
188
+ };
189
+ exports.createSync = createSync;
190
+ const isWindowDefined = typeof window !== "undefined";
@@ -0,0 +1,19 @@
1
+ import type { SyncInfo } from "lib/prostgles";
2
+ import { type AnyObject, type SyncBatchParams } from "prostgles-types";
3
+ import { type SyncedTableOptions } from "./SyncedTable";
4
+ export declare const createSyncDataStore: ({ id_fields, synced_field, filter, columns, }: Pick<SyncInfo, "id_fields" | "synced_field"> & Pick<SyncedTableOptions, "filter" | "columns">) => {
5
+ getItems: <T extends AnyObject = AnyObject>() => T[];
6
+ getBatch: ({ from_synced, to_synced, offset, limit }?: SyncBatchParams) => {
7
+ [x: string]: any;
8
+ }[];
9
+ getIdObj: (d: AnyObject) => AnyObject;
10
+ getRowSyncObj: (d: AnyObject) => AnyObject;
11
+ getDelta: (o: AnyObject, n: AnyObject) => AnyObject;
12
+ setItems: (_items: AnyObject[]) => void;
13
+ checkItemCols: (item: AnyObject) => void;
14
+ setItem: (_item: AnyObject, isFullData?: boolean, deleteItem?: boolean) => void;
15
+ getItem: <T = AnyObject>(idObj: Partial<T>) => T | undefined;
16
+ matchesIdObj: (a: AnyObject | undefined, b: AnyObject | undefined) => boolean;
17
+ matchesFilter: (item: AnyObject | undefined) => boolean;
18
+ };
19
+ //# sourceMappingURL=createSyncDataStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSyncDataStore.d.ts","sourceRoot":"","sources":["../../lib/SyncedTable/createSyncDataStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAML,KAAK,SAAS,EACd,KAAK,eAAe,EACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAc,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEpE,eAAO,MAAM,mBAAmB,GAAI,+CAKjC,IAAI,CAAC,QAAQ,EAAE,WAAW,GAAG,cAAc,CAAC,GAC7C,IAAI,CAAC,kBAAkB,EAAE,QAAQ,GAAG,SAAS,CAAC;eA2B5B,CAAC,SAAS,SAAS,mBAAiB,CAAC,EAAE;2DAyBZ,eAAe;;;kBA3CvC,SAAS;uBAOJ,SAAS;kBA0Fd,SAAS,KAAK,SAAS,KAAG,SAAS;uBA3B9B,SAAS,EAAE,KAAG,IAAI;0BAkBf,SAAS;qBA7Bd,SAAS;cAoBhB,CAAC,qBAAqB,OAAO,CAAC,CAAC,CAAC,KAAG,CAAC,GAAG,SAAS;sBA0CxC,SAAS,GAAG,SAAS,KAAK,SAAS,GAAG,SAAS;0BAN3C,SAAS,GAAG,SAAS;CAuBnD,CAAC"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSyncDataStore = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const SyncedTable_1 = require("./SyncedTable");
6
+ const createSyncDataStore = ({ id_fields, synced_field, filter, columns, }) => {
7
+ const itemsMap = new Map();
8
+ const idFieldsSorted = id_fields.sort();
9
+ const syncFieldSorted = [synced_field, ...id_fields].sort();
10
+ const getIdStr = (d) => {
11
+ return idFieldsSorted.map((key) => `${d[key] || ""}`).join(".");
12
+ };
13
+ const getIdObj = (d) => {
14
+ const res = {};
15
+ idFieldsSorted.map((key) => {
16
+ res[key] = d[key];
17
+ });
18
+ return res;
19
+ };
20
+ const getRowSyncObj = (d) => {
21
+ const res = {};
22
+ syncFieldSorted.map((key) => {
23
+ res[key] = d[key];
24
+ });
25
+ return res;
26
+ };
27
+ /**
28
+ * Returns the current data ordered by synced_field ASC and matching the main filter;
29
+ */
30
+ const getItems = () => {
31
+ let items = [];
32
+ items = Array.from(itemsMap.values()).map((d) => ({ ...d }));
33
+ const syncFields = [synced_field, ...id_fields.sort()];
34
+ items = items
35
+ .filter((d) => {
36
+ return !filter || !(0, prostgles_types_1.getKeys)(filter).find((key) => d[key] !== filter[key]);
37
+ })
38
+ .sort((a, b) => syncFields
39
+ .map((key) => (a[key] < b[key] ? -1
40
+ : a[key] > b[key] ? 1
41
+ : 0))
42
+ .find((v) => v));
43
+ return (0, SyncedTable_1.quickClone)(items);
44
+ };
45
+ const getBatch = ({ from_synced, to_synced, offset, limit } = { offset: 0, limit: undefined }) => {
46
+ const items = getItems();
47
+ let res = items
48
+ .map((c) => ({ ...c }))
49
+ .filter((c) => (!Number.isFinite(from_synced) || +c[synced_field] >= +from_synced) &&
50
+ (!Number.isFinite(to_synced) || +c[synced_field] <= +to_synced));
51
+ if (offset || limit) {
52
+ res = res.splice(offset !== null && offset !== void 0 ? offset : 0, limit || res.length);
53
+ }
54
+ return res;
55
+ };
56
+ const setItem = (_item, isFullData = false, deleteItem = false) => {
57
+ var _a;
58
+ const item = (0, SyncedTable_1.quickClone)(_item);
59
+ const id = getIdStr(item);
60
+ if (deleteItem) {
61
+ itemsMap.delete(id);
62
+ }
63
+ else {
64
+ const existing = (_a = itemsMap.get(id)) !== null && _a !== void 0 ? _a : {};
65
+ itemsMap.set(id, isFullData ? { ...item } : { ...existing, ...item });
66
+ }
67
+ };
68
+ const setItems = (_items) => {
69
+ const items = (0, SyncedTable_1.quickClone)(_items);
70
+ itemsMap.clear();
71
+ items.forEach((item) => {
72
+ const id = getIdStr(item);
73
+ itemsMap.set(id, { ...item });
74
+ });
75
+ };
76
+ const getItem = (idObj) => {
77
+ const d = itemsMap.get(getIdStr(idObj));
78
+ return (0, SyncedTable_1.quickClone)(d);
79
+ };
80
+ /**
81
+ * Ensures that all object keys match valid column names
82
+ */
83
+ const checkItemCols = (item) => {
84
+ if (columns.length) {
85
+ const badCols = Object.keys({ ...item }).filter((k) => !columns.find((c) => c.name === k));
86
+ if (badCols.length) {
87
+ throw `Unexpected columns in sync item update: ` + badCols.join(", ");
88
+ }
89
+ }
90
+ };
91
+ const getDelta = (o, n) => {
92
+ if ((0, prostgles_types_1.isEmpty)(o))
93
+ return { ...n };
94
+ return Object.fromEntries(Object.entries({ ...n })
95
+ .filter(([k]) => !id_fields.includes(k))
96
+ .map(([k, v]) => {
97
+ if (!(0, prostgles_types_1.isEqual)(v, o[k])) {
98
+ const vClone = (0, prostgles_types_1.isObject)(v) ? { ...v }
99
+ : Array.isArray(v) ? v.slice(0)
100
+ : v;
101
+ return [k, vClone];
102
+ }
103
+ })
104
+ .filter(prostgles_types_1.isDefined));
105
+ };
106
+ const matchesFilter = (item) => {
107
+ return Boolean(item &&
108
+ (!filter || (0, prostgles_types_1.isEmpty)(filter) || !Object.keys(filter).find((k) => filter[k] !== item[k])));
109
+ };
110
+ const matchesIdObj = (a, b) => {
111
+ return Boolean(a && b && !id_fields.sort().find((k) => a[k] !== b[k]));
112
+ };
113
+ return {
114
+ getItems,
115
+ getBatch,
116
+ getIdObj,
117
+ getRowSyncObj,
118
+ getDelta,
119
+ setItems,
120
+ checkItemCols,
121
+ setItem,
122
+ getItem,
123
+ matchesIdObj,
124
+ matchesFilter,
125
+ };
126
+ };
127
+ exports.createSyncDataStore = createSyncDataStore;
@@ -0,0 +1,25 @@
1
+ import { type SyncDebugEvent, type SyncInfo } from "lib/prostgles";
2
+ import { type ClientSyncHandles } from "prostgles-types";
3
+ import type { Socket } from "socket.io-client";
4
+ import type { SyncedTableOptions } from "./SyncedTable";
5
+ export declare const createSyncStateUtils: (socket: Socket, options: Omit<SyncedTableOptions, "onReady">) => {
6
+ state: {
7
+ isSynced: boolean;
8
+ };
9
+ onDebug: (evt: Omit<SyncDebugEvent, "type" | "tableName" | "channelName" | "options">) => void | Promise<void> | undefined;
10
+ id_fields: string[];
11
+ synced_field: string;
12
+ throttle: number;
13
+ batch_size: number;
14
+ columns: import("prostgles-types").ValidatedColumnInfo[];
15
+ _syncInfo: import("prostgles-types").SyncTableInfo;
16
+ _sync: (handles: ClientSyncHandles) => Promise<{
17
+ sync_info: SyncInfo;
18
+ unsync: () => Promise<unknown>;
19
+ syncData: (data?: import("prostgles-types").AnyObject[], deleted?: import("prostgles-types").AnyObject[], cb?: (err?: any) => void) => void;
20
+ }>;
21
+ filter: import("prostgles-types").EqualityFilter<import("prostgles-types").AnyObject>;
22
+ select: import("prostgles-types").FieldFilter;
23
+ tableHandler: Partial<import("prostgles-types").TableHandler & import("lib/prostgles").TableHandlerClientMethods<import("prostgles-types").AnyObject, void>>;
24
+ };
25
+ //# sourceMappingURL=createSyncStateUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSyncStateUtils.d.ts","sourceRoot":"","sources":["../../lib/SyncedTable/createSyncStateUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAGL,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAErE,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,MAAM,EACd,SAAS,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC;;;;mBAKtB,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;;;;;;;qBAyB9D,iBAAiB;;;2HAkIi6B,CAAC;;;;;CADl9B,CAAC"}