prostgles-client 4.0.166 → 4.0.167

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.
@@ -98,7 +98,10 @@ type DebugEvent = {
98
98
  type: "method";
99
99
  command: string;
100
100
  data: AnyObject;
101
- } | SyncDebugEvent;
101
+ } | SyncDebugEvent | {
102
+ type: "schemaChanged";
103
+ data: AnyObject;
104
+ };
102
105
  export type InitOptions<DBSchema = void> = {
103
106
  socket: any;
104
107
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prostgles.d.ts","sourceRoot":"","sources":["../lib/prostgles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prostgles.d.ts","sourceRoot":"","sources":["../lib/prostgles.ts"],"names":[],"mappings":"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"}
package/dist/prostgles.js CHANGED
@@ -22,10 +22,10 @@ exports.prostgles = exports.asName = exports.debug = exports.hasWnd = void 0;
22
22
  const prostgles_types_1 = require("prostgles-types");
23
23
  Object.defineProperty(exports, "asName", { enumerable: true, get: function () { return prostgles_types_1.asName; } });
24
24
  const Auth_1 = require("./Auth");
25
- const FunctionQueuer_1 = require("./FunctionQueuer");
26
25
  const react_hooks_1 = require("./react-hooks");
27
26
  const SQL_1 = require("./SQL");
28
27
  const subscriptionHandler_1 = require("./subscriptionHandler");
28
+ const syncHandler_1 = require("./syncHandler");
29
29
  const DEBUG_KEY = "DEBUG_SYNCEDTABLE";
30
30
  exports.hasWnd = typeof window !== "undefined";
31
31
  const debug = function (...args) {
@@ -50,168 +50,11 @@ function prostgles(initOpts, syncedTable) {
50
50
  socket.on(prostgles_types_1.CHANNELS.SCHEMA_CHANGED, cb);
51
51
  }
52
52
  const preffix = prostgles_types_1.CHANNELS._preffix;
53
- let syncedTables = {};
54
53
  //@ts-ignore
55
54
  const subscriptionHandler = (0, subscriptionHandler_1.getSubscriptionHandler)(initOpts);
56
- let syncs = {};
55
+ const syncHandler = (0, syncHandler_1.getSyncHandler)(initOpts);
57
56
  let state;
58
57
  const sql = new SQL_1.SQL();
59
- const destroySyncs = async () => {
60
- (0, exports.debug)("destroySyncs", { syncedTables });
61
- // await subscriptionHandler.destroy();
62
- syncs = {};
63
- Object.values(syncedTables).map((s) => {
64
- if (s && s.destroy)
65
- s.destroy();
66
- });
67
- syncedTables = {};
68
- };
69
- function _unsync(channelName, triggers) {
70
- (0, exports.debug)("_unsync", { channelName, triggers });
71
- return new Promise((resolve, reject) => {
72
- if (syncs[channelName]) {
73
- syncs[channelName].triggers = syncs[channelName].triggers.filter(tr => (tr.onPullRequest !== triggers.onPullRequest &&
74
- tr.onSyncRequest !== triggers.onSyncRequest &&
75
- tr.onUpdates !== triggers.onUpdates));
76
- if (!syncs[channelName].triggers.length) {
77
- socket.emit(channelName + "unsync", {}, (err, res) => {
78
- if (err)
79
- reject(err);
80
- else
81
- resolve(res);
82
- });
83
- socket.removeListener(channelName, syncs[channelName].onCall);
84
- delete syncs[channelName];
85
- }
86
- }
87
- });
88
- }
89
- function addServerSync({ tableName, command, param1, param2 }, onSyncRequest) {
90
- return new Promise((resolve, reject) => {
91
- socket.emit(preffix, { tableName, command, param1, param2 }, (err, res) => {
92
- if (err) {
93
- console.error(err);
94
- reject(err);
95
- }
96
- else if (res) {
97
- const { id_fields, synced_field, channelName } = res;
98
- socket.emit(channelName, { onSyncRequest: onSyncRequest({}) }, (response) => {
99
- console.log(response);
100
- });
101
- resolve({ id_fields, synced_field, channelName });
102
- }
103
- });
104
- });
105
- }
106
- // /**
107
- // * Obtaines subscribe channel from server
108
- // */
109
- // function addServerSub({ tableName, command, param1, param2 }: CoreParams): Promise<SubscriptionChannels> {
110
- // return new Promise((resolve, reject) => {
111
- // socket.emit(preffix, { tableName, command, param1, param2 }, (err?: any, res?: SubscriptionChannels) => {
112
- // if (err) {
113
- // console.error(err);
114
- // reject(err);
115
- // } else if (res) {
116
- // resolve(res);
117
- // }
118
- // });
119
- // });
120
- // }
121
- const addSyncQueuer = new FunctionQueuer_1.FunctionQueuer(_addSync, ([{ tableName }]) => tableName);
122
- async function addSync(params, triggers) {
123
- return addSyncQueuer.run([params, triggers]);
124
- }
125
- async function _addSync({ tableName, command, param1, param2 }, triggers) {
126
- const { onSyncRequest } = triggers;
127
- function makeHandler(channelName) {
128
- const unsync = function () {
129
- _unsync(channelName, triggers);
130
- };
131
- const syncData = function (data, deleted, cb) {
132
- socket.emit(channelName, {
133
- onSyncRequest: {
134
- ...onSyncRequest({}),
135
- ...({ data }),
136
- ...({ deleted })
137
- },
138
- }, !cb ? null : (response) => {
139
- cb(response);
140
- });
141
- };
142
- return Object.freeze({ unsync, syncData });
143
- }
144
- const existingChannel = Object.keys(syncs).find(ch => {
145
- const s = syncs[ch];
146
- return (s &&
147
- s.tableName === tableName &&
148
- s.command === command &&
149
- (0, react_hooks_1.isEqual)(s.param1, param1) &&
150
- (0, react_hooks_1.isEqual)(s.param2, param2));
151
- });
152
- if (existingChannel) {
153
- syncs[existingChannel].triggers.push(triggers);
154
- return makeHandler(existingChannel);
155
- }
156
- else {
157
- const sync_info = await addServerSync({ tableName, command, param1, param2 }, onSyncRequest);
158
- const { channelName } = sync_info;
159
- const onCall = function (data, cb) {
160
- /*
161
- Client will:
162
- 1. Send last_synced on(onSyncRequest)
163
- 2. Send data >= server_synced on(onPullRequest)
164
- 3. Send data on CRUD emit(data.data)
165
- 4. Upsert data.data on(data.data)
166
- */
167
- if (!data)
168
- return;
169
- if (!syncs[channelName])
170
- return;
171
- syncs[channelName].triggers.map(({ onUpdates, onSyncRequest, onPullRequest }) => {
172
- if (data.data) {
173
- Promise.resolve(onUpdates(data))
174
- .then(() => {
175
- cb({ ok: true });
176
- })
177
- .catch(err => {
178
- cb({ err });
179
- });
180
- }
181
- else if (data.onSyncRequest) {
182
- Promise.resolve(onSyncRequest(data.onSyncRequest))
183
- .then(res => cb({ onSyncRequest: res }))
184
- .catch(err => {
185
- cb({ err });
186
- });
187
- }
188
- else if (data.onPullRequest) {
189
- Promise.resolve(onPullRequest(data.onPullRequest))
190
- .then(arr => {
191
- cb({ data: arr });
192
- })
193
- .catch(err => {
194
- cb({ err });
195
- });
196
- }
197
- else {
198
- console.log("unexpected response");
199
- }
200
- });
201
- };
202
- syncs[channelName] = {
203
- tableName,
204
- command,
205
- param1,
206
- param2,
207
- triggers: [triggers],
208
- syncInfo: sync_info,
209
- onCall
210
- };
211
- socket.on(channelName, onCall);
212
- return makeHandler(channelName);
213
- }
214
- }
215
58
  return new Promise((resolve, reject) => {
216
59
  socket.removeAllListeners(prostgles_types_1.CHANNELS.CONNECTION);
217
60
  socket.on(prostgles_types_1.CHANNELS.CONNECTION, error => {
@@ -234,11 +77,12 @@ function prostgles(initOpts, syncedTable) {
234
77
  }
235
78
  /* Schema = published schema */
236
79
  socket.on(prostgles_types_1.CHANNELS.SCHEMA, async ({ joinTables = [], ...clientSchema }) => {
80
+ await (onDebug === null || onDebug === void 0 ? void 0 : onDebug({ type: "schemaChanged", data: clientSchema }));
237
81
  const { schema, methods, tableSchema, auth: authConfig, rawSQL, err } = clientSchema;
238
82
  /** Only destroy existing syncs if schema changed */
239
83
  const schemaDidNotChange = (schemaAge === null || schemaAge === void 0 ? void 0 : schemaAge.clientSchema) && (0, react_hooks_1.isEqual)(schemaAge.clientSchema, clientSchema);
240
84
  if (!schemaDidNotChange) {
241
- await destroySyncs();
85
+ await syncHandler.destroySyncs();
242
86
  }
243
87
  if ((state === "connected" || state === "reconnected") && onReconnect) {
244
88
  onReconnect(socket, err);
@@ -313,8 +157,8 @@ function prostgles(initOpts, syncedTable) {
313
157
  };
314
158
  const upsertSyncTable = async (basicFilter = {}, options = {}, onError) => {
315
159
  const syncName = `${tableName}.${JSON.stringify(basicFilter)}.${JSON.stringify((0, prostgles_types_1.omitKeys)(options, ["handlesOnData"]))}`;
316
- if (!syncedTables[syncName]) {
317
- syncedTables[syncName] = await syncedTable.create({
160
+ if (!syncHandler.syncedTables[syncName]) {
161
+ syncHandler.syncedTables[syncName] = await syncedTable.create({
318
162
  ...options,
319
163
  onDebug: onDebug,
320
164
  name: tableName,
@@ -323,7 +167,7 @@ function prostgles(initOpts, syncedTable) {
323
167
  onError
324
168
  });
325
169
  }
326
- return syncedTables[syncName];
170
+ return syncHandler.syncedTables[syncName];
327
171
  };
328
172
  const sync = async (basicFilter, options = { handlesOnData: true, select: "*" }, onChange, onError) => {
329
173
  await (onDebug === null || onDebug === void 0 ? void 0 : onDebug({ type: "table", command: "sync", tableName, data: { basicFilter, options } }));
@@ -346,7 +190,7 @@ function prostgles(initOpts, syncedTable) {
346
190
  }
347
191
  dboTable._sync = async function (param1, param2, syncHandles) {
348
192
  await (onDebug === null || onDebug === void 0 ? void 0 : onDebug({ type: "table", command: "_sync", tableName, data: { param1, param2, syncHandles } }));
349
- return addSync({ tableName, command, param1, param2 }, syncHandles);
193
+ return syncHandler.addSync({ tableName, command, param1, param2 }, syncHandles);
350
194
  };
351
195
  }
352
196
  else if (sub_commands.includes(command)) {
@@ -406,18 +250,7 @@ function prostgles(initOpts, syncedTable) {
406
250
  });
407
251
  });
408
252
  await subscriptionHandler.reAttachAll();
409
- Object.entries(syncs).forEach(async ([ch, s]) => {
410
- const firstTrigger = s.triggers[0];
411
- if (firstTrigger) {
412
- try {
413
- await addServerSync(s, firstTrigger.onSyncRequest);
414
- socket.on(ch, s.onCall);
415
- }
416
- catch (err) {
417
- console.error("There was an issue reconnecting olf subscriptions", err);
418
- }
419
- }
420
- });
253
+ await syncHandler.reAttachAll();
421
254
  joinTables.flat().map(table => {
422
255
  var _a, _b, _c, _d;
423
256
  (_a = dbo.innerJoin) !== null && _a !== void 0 ? _a : (dbo.innerJoin = {});
@@ -11,7 +11,7 @@ type Subscription = CoreParams & {
11
11
  type Subscriptions = {
12
12
  [key: string]: Subscription;
13
13
  };
14
- export declare const getSubscriptionHandler: <DBSchema>(initOpts: InitOptions<DBSchema>) => {
14
+ export declare const getSubscriptionHandler: (initOpts: Pick<InitOptions, "socket" | "onDebug">) => {
15
15
  addSub: (dbo: any, params: CoreParams, onChange: AnyFunction, _onError?: AnyFunction) => Promise<SubscriptionHandler>;
16
16
  subscriptions: Subscriptions;
17
17
  addServerSub: ({ tableName, command, param1, param2 }: CoreParams) => Promise<SubscriptionChannels>;
@@ -1 +1 @@
1
- {"version":3,"file":"subscriptionHandler.d.ts","sourceRoot":"","sources":["../lib/subscriptionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+C,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAqB,MAAM,iBAAiB,CAAC;AACtJ,OAAO,EAAkB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlG,KAAK,YAAY,GAAG,UAAU,GAAG;IAC/B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;CAC5B,CAAC;AAIF,eAAO,MAAM,sBAAsB;kBAiEN,GAAG,UAAU,UAAU,YAAY,WAAW,aAAa,WAAW,KAAG,QAAQ,mBAAmB,CAAC;;2DAlBlE,UAAU,KAAG,QAAQ,oBAAoB,CAAC;gCA7BrE,MAAM,gBAAgB,MAAM,WAAW,WAAW,WAAW,WAAW,CAAC,SAAS,CAAC,KAAG,QAAQ,IAAI,CAAC;;CAyKvI,CAAA"}
1
+ {"version":3,"file":"subscriptionHandler.d.ts","sourceRoot":"","sources":["../lib/subscriptionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+C,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAqB,MAAM,iBAAiB,CAAC;AACtJ,OAAO,EAAkB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlG,KAAK,YAAY,GAAG,UAAU,GAAG;IAC/B,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,CAAC,WAAW,GAAG,SAAS,CAAC,EAAE,CAAC;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,CAAA;CAC5B,CAAC;AAIF,eAAO,MAAM,sBAAsB,aAAc,KAAK,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;kBAiE3D,GAAG,UAAU,UAAU,YAAY,WAAW,aAAa,WAAW,KAAG,QAAQ,mBAAmB,CAAC;;2DAlBlE,UAAU,KAAG,QAAQ,oBAAoB,CAAC;gCA7BrE,MAAM,gBAAgB,MAAM,WAAW,WAAW,WAAW,WAAW,CAAC,SAAS,CAAC,KAAG,QAAQ,IAAI,CAAC;;CA6KvI,CAAA"}
@@ -160,6 +160,10 @@ const getSubscriptionHandler = (initOpts) => {
160
160
  socket.emit(channelNameReady, { now: Date.now() });
161
161
  return makeHandler(channelName, channelNameUnsubscribe);
162
162
  }
163
+ /**
164
+ * Reconnect all subscriptions
165
+ * Used when connection is lost and re-established or schema changes
166
+ */
163
167
  const reAttachAll = async () => {
164
168
  for await (const s of Object.values(subscriptions)) {
165
169
  try {
@@ -0,0 +1,9 @@
1
+ import { type ClientSyncHandles } from "prostgles-types";
2
+ import type { CoreParams, InitOptions } from "./prostgles";
3
+ export declare const getSyncHandler: ({ socket, onDebug }: Pick<InitOptions, "socket" | "onDebug">) => {
4
+ destroySyncs: () => Promise<void>;
5
+ syncedTables: Record<string, any>;
6
+ addSync: (params: CoreParams, triggers: ClientSyncHandles) => Promise<any>;
7
+ reAttachAll: () => Promise<void>;
8
+ };
9
+ //# sourceMappingURL=syncHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncHandler.d.ts","sourceRoot":"","sources":["../lib/syncHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAe,UAAU,EAAE,WAAW,EAAY,MAAM,aAAa,CAAC;AAgBlF,eAAO,MAAM,cAAc,wBAAyB,KAAK,WAAW,EAAE,QAAQ,GAAG,SAAS,CAAC;;;sBAsD1D,UAAU,YAAY,iBAAiB,KAAG,QAAQ,GAAG,CAAC;;CA+HtF,CAAA"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSyncHandler = void 0;
4
+ const prostgles_types_1 = require("prostgles-types");
5
+ const prostgles_1 = require("./prostgles");
6
+ const FunctionQueuer_1 = require("./FunctionQueuer");
7
+ const preffix = prostgles_types_1.CHANNELS._preffix;
8
+ const getSyncHandler = ({ socket, onDebug }) => {
9
+ let syncedTables = {};
10
+ let syncs = {};
11
+ const destroySyncs = async () => {
12
+ (0, prostgles_1.debug)("destroySyncs", { syncedTables });
13
+ syncs = {};
14
+ Object.values(syncedTables).map((s) => {
15
+ if (s && s.destroy)
16
+ s.destroy();
17
+ });
18
+ syncedTables = {};
19
+ };
20
+ function _unsync(channelName, triggers) {
21
+ (0, prostgles_1.debug)("_unsync", { channelName, triggers });
22
+ return new Promise((resolve, reject) => {
23
+ if (syncs[channelName]) {
24
+ syncs[channelName].triggers = syncs[channelName].triggers.filter(tr => (tr.onPullRequest !== triggers.onPullRequest &&
25
+ tr.onSyncRequest !== triggers.onSyncRequest &&
26
+ tr.onUpdates !== triggers.onUpdates));
27
+ if (!syncs[channelName].triggers.length) {
28
+ socket.emit(channelName + "unsync", {}, (err, res) => {
29
+ if (err)
30
+ reject(err);
31
+ else
32
+ resolve(res);
33
+ });
34
+ socket.removeListener(channelName, syncs[channelName].onCall);
35
+ delete syncs[channelName];
36
+ }
37
+ }
38
+ });
39
+ }
40
+ function addServerSync({ tableName, command, param1, param2 }, onSyncRequest) {
41
+ return new Promise((resolve, reject) => {
42
+ socket.emit(preffix, { tableName, command, param1, param2 }, (err, res) => {
43
+ if (err) {
44
+ console.error(err);
45
+ reject(err);
46
+ }
47
+ else if (res) {
48
+ const { id_fields, synced_field, channelName } = res;
49
+ socket.emit(channelName, { onSyncRequest: onSyncRequest({}) }, (response) => {
50
+ console.log(response);
51
+ });
52
+ resolve({ id_fields, synced_field, channelName });
53
+ }
54
+ });
55
+ });
56
+ }
57
+ const addSyncQueuer = new FunctionQueuer_1.FunctionQueuer(_addSync, ([{ tableName }]) => tableName);
58
+ async function addSync(params, triggers) {
59
+ return addSyncQueuer.run([params, triggers]);
60
+ }
61
+ async function _addSync({ tableName, command, param1, param2 }, triggers) {
62
+ const { onSyncRequest } = triggers;
63
+ function makeHandler(channelName) {
64
+ const unsync = function () {
65
+ _unsync(channelName, triggers);
66
+ };
67
+ const syncData = function (data, deleted, cb) {
68
+ socket.emit(channelName, {
69
+ onSyncRequest: {
70
+ ...onSyncRequest({}),
71
+ ...({ data }),
72
+ ...({ deleted })
73
+ },
74
+ }, !cb ? null : (response) => {
75
+ cb(response);
76
+ });
77
+ };
78
+ return Object.freeze({ unsync, syncData });
79
+ }
80
+ const existingChannel = Object.keys(syncs).find(ch => {
81
+ const s = syncs[ch];
82
+ return (s &&
83
+ s.tableName === tableName &&
84
+ s.command === command &&
85
+ (0, prostgles_1.isEqual)(s.param1, param1) &&
86
+ (0, prostgles_1.isEqual)(s.param2, param2));
87
+ });
88
+ if (existingChannel) {
89
+ syncs[existingChannel].triggers.push(triggers);
90
+ return makeHandler(existingChannel);
91
+ }
92
+ else {
93
+ const sync_info = await addServerSync({ tableName, command, param1, param2 }, onSyncRequest);
94
+ const { channelName } = sync_info;
95
+ const onCall = function (data, cb) {
96
+ /*
97
+ Client will:
98
+ 1. Send last_synced on(onSyncRequest)
99
+ 2. Send data >= server_synced on(onPullRequest)
100
+ 3. Send data on CRUD emit(data.data)
101
+ 4. Upsert data.data on(data.data)
102
+ */
103
+ if (!data)
104
+ return;
105
+ if (!syncs[channelName])
106
+ return;
107
+ syncs[channelName].triggers.map(({ onUpdates, onSyncRequest, onPullRequest }) => {
108
+ if (data.data) {
109
+ Promise.resolve(onUpdates(data))
110
+ .then(() => {
111
+ cb({ ok: true });
112
+ })
113
+ .catch(err => {
114
+ cb({ err });
115
+ });
116
+ }
117
+ else if (data.onSyncRequest) {
118
+ Promise.resolve(onSyncRequest(data.onSyncRequest))
119
+ .then(res => cb({ onSyncRequest: res }))
120
+ .catch(err => {
121
+ cb({ err });
122
+ });
123
+ }
124
+ else if (data.onPullRequest) {
125
+ Promise.resolve(onPullRequest(data.onPullRequest))
126
+ .then(arr => {
127
+ cb({ data: arr });
128
+ })
129
+ .catch(err => {
130
+ cb({ err });
131
+ });
132
+ }
133
+ else {
134
+ console.log("unexpected response");
135
+ }
136
+ });
137
+ };
138
+ syncs[channelName] = {
139
+ tableName,
140
+ command,
141
+ param1,
142
+ param2,
143
+ triggers: [triggers],
144
+ syncInfo: sync_info,
145
+ onCall
146
+ };
147
+ socket.on(channelName, onCall);
148
+ return makeHandler(channelName);
149
+ }
150
+ }
151
+ const reAttachAll = async () => {
152
+ let reAttached = 0;
153
+ Object.entries(syncs).forEach(async ([ch, s]) => {
154
+ const firstTrigger = s.triggers[0];
155
+ if (firstTrigger) {
156
+ try {
157
+ await addServerSync(s, firstTrigger.onSyncRequest);
158
+ socket.on(ch, s.onCall);
159
+ reAttached++;
160
+ }
161
+ catch (err) {
162
+ console.error("There was an issue reconnecting olf subscriptions", err);
163
+ }
164
+ }
165
+ });
166
+ console.log("reAttached", reAttached, " syncs", syncs);
167
+ };
168
+ return {
169
+ destroySyncs,
170
+ syncedTables,
171
+ addSync,
172
+ reAttachAll,
173
+ };
174
+ };
175
+ exports.getSyncHandler = getSyncHandler;