solid-ui 3.0.5-test.7 → 3.0.5-test.8

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/pad.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pad.d.ts","sourceRoot":"","sources":["../src/pad.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAa,SAAS,EAAM,cAAc,EAAE,MAAM,QAAQ,CAAA;AAMjE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAMnH,KAAK,cAAc,GAAG;IACpB,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAgBD;;;;GAIG;AACH,wBAAgB,cAAc,CAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAU1D;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAE,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,OAusBzH;AAED;;;GAGG;AAGH,wBAAgB,SAAS,CAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,cAAc,SAUhE;AAED;;GAEG;AAEH,wBAAgB,SAAS,CAAE,GAAG,KAAA,OAE7B;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,cAAc,UA6C1D"}
1
+ {"version":3,"file":"pad.d.ts","sourceRoot":"","sources":["../src/pad.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAa,SAAS,EAAM,cAAc,EAAE,MAAM,QAAQ,CAAA;AAMjE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,iBAAiB,CAAA;AAMxB,KAAK,cAAc,GAAG;IACpB,UAAU,CAAC,EAAE,cAAc,CAAA;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAgBD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAUzD;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CACrB,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,SAAS,EAClB,EAAE,EAAE,SAAS,EACb,OAAO,CAAC,EAAE,cAAc,OAgvBzB;AAED;;;GAGG;AAGH,wBAAgB,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,cAAc,SAU/D;AAED;;GAEG;AAEH,wBAAgB,SAAS,CAAC,GAAG,KAAA,OAE5B;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,cAAc,UAiDzD"}
package/dist/pad.js CHANGED
@@ -72,18 +72,21 @@ export function notepad(dom, padDoc, subject, me, options) {
72
72
  }
73
73
  }
74
74
  /* @@ TODO want to look into this, it seems upstream should be a boolean and default to false ?
75
- *
76
- */
75
+ *
76
+ */
77
77
  const complain = function (message, upstream = false) {
78
78
  log(message);
79
79
  if (options.statusArea) {
80
80
  ;
81
- (upstream ? upstreamStatus : downstreamStatus).appendChild(errorMessageBlock(dom, message, 'pink'));
81
+ (upstream
82
+ ? upstreamStatus
83
+ : downstreamStatus).appendChild(errorMessageBlock(dom, message, 'pink'));
82
84
  }
83
85
  };
84
86
  // @@ TODO need to refactor so that we don't have to type cast
85
87
  const clearStatus = function (_upsteam) {
86
88
  if (options.statusArea) {
89
+ ;
87
90
  options.statusArea.innerHTML = '';
88
91
  }
89
92
  };
@@ -122,7 +125,7 @@ export function notepad(dom, padDoc, subject, me, options) {
122
125
  const next = kb.any(chunk, PAD('next'));
123
126
  if (prev.sameTerm(subject) && next.sameTerm(subject)) {
124
127
  // Last one
125
- log('You can\'t delete the only line.');
128
+ log("You can't delete the only line.");
126
129
  return;
127
130
  }
128
131
  const del = kb
@@ -167,10 +170,12 @@ export function notepad(dom, padDoc, subject, me, options) {
167
170
  }
168
171
  else {
169
172
  log(' removePart FAILED ' + chunk + ': ' + errorMessage);
170
- log(' removePart was deleteing :\'' + del);
173
+ log(" removePart was deleting :'" + del);
171
174
  setPartStyle(part, 'color: black; background-color: #fdd;'); // failed
172
- const res = response ? response.status : ' [no response field] ';
173
- complain('Error ' + res + ' saving changes: ' + errorMessage.true); // upstream,
175
+ const res = response
176
+ ? response.status
177
+ : ' [no response field] ';
178
+ complain('Error ' + res + ' saving changes: ' + String(errorMessage)); // upstream,
174
179
  // updater.requestDownstreamAction(padDoc, reloadAndSync);
175
180
  }
176
181
  });
@@ -187,9 +192,9 @@ export function notepad(dom, padDoc, subject, me, options) {
187
192
  }
188
193
  updater.update(del, ins, function (uri, ok, errorBody) {
189
194
  if (!ok) {
190
- log('Indent change FAILED \'' +
195
+ log("Indent change FAILED '" +
191
196
  newIndent +
192
- '\' for ' +
197
+ "' for " +
193
198
  padDoc +
194
199
  ': ' +
195
200
  errorBody);
@@ -202,6 +207,7 @@ export function notepad(dom, padDoc, subject, me, options) {
202
207
  });
203
208
  };
204
209
  const addListeners = function (part, chunk) {
210
+ let inputDebounceTimer = null;
205
211
  part.addEventListener('keydown', function (event) {
206
212
  if (!updater) {
207
213
  throw new Error('no updater');
@@ -209,28 +215,27 @@ export function notepad(dom, padDoc, subject, me, options) {
209
215
  let queueProperty, queue;
210
216
  // up 38; down 40; left 37; right 39 tab 9; shift 16; escape 27
211
217
  switch (event.keyCode) {
212
- case 13: // Return
213
- {
214
- const before = event.shiftKey;
215
- log('enter'); // Shift-return inserts before -- only way to add to top of pad.
216
- if (before) {
217
- queue = kb.any(undefined, PAD('next'), chunk);
218
- queueProperty = 'newlinesAfter';
219
- }
220
- else {
221
- queue = kb.any(chunk, PAD('next'));
222
- queueProperty = 'newlinesBefore';
223
- }
224
- queue[queueProperty] = queue[queueProperty] || 0;
225
- queue[queueProperty] += 1;
226
- if (queue[queueProperty] > 1) {
227
- log(' queueing newline queue = ' + queue[queueProperty]);
228
- return;
229
- }
230
- log(' go ahead line before ' + queue[queueProperty]);
231
- newChunk(part, before); // was document.activeElement
232
- break;
218
+ case 13: { // Return
219
+ const before = event.shiftKey;
220
+ log('enter'); // Shift-return inserts before -- only way to add to top of pad.
221
+ if (before) {
222
+ queue = kb.any(undefined, PAD('next'), chunk);
223
+ queueProperty = 'newlinesAfter';
233
224
  }
225
+ else {
226
+ queue = kb.any(chunk, PAD('next'));
227
+ queueProperty = 'newlinesBefore';
228
+ }
229
+ queue[queueProperty] = queue[queueProperty] || 0;
230
+ queue[queueProperty] += 1;
231
+ if (queue[queueProperty] > 1) {
232
+ log(' queueing newline queue = ' + queue[queueProperty]);
233
+ return;
234
+ }
235
+ log(' go ahead line before ' + queue[queueProperty]);
236
+ newChunk(part, before); // was document.activeElement
237
+ break;
238
+ }
234
239
  case 8: // Delete
235
240
  if (part.value.length === 0) {
236
241
  log('Delete key line ' + chunk.uri.slice(-4) + ' state ' + part.state);
@@ -253,13 +258,12 @@ export function notepad(dom, padDoc, subject, me, options) {
253
258
  }
254
259
  }
255
260
  break;
256
- case 9: // Tab
257
- {
258
- const delta = event.shiftKey ? -1 : 1;
259
- changeIndent(part, chunk, delta);
260
- event.preventDefault(); // default is to highlight next field
261
- break;
262
- }
261
+ case 9: { // Tab
262
+ const delta = event.shiftKey ? -1 : 1;
263
+ changeIndent(part, chunk, delta);
264
+ event.preventDefault(); // default is to highlight next field
265
+ break;
266
+ }
263
267
  case 27: // ESC
264
268
  log('escape');
265
269
  updater.requestDownstreamAction(padDoc, reloadAndSync);
@@ -293,11 +297,12 @@ export function notepad(dom, padDoc, subject, me, options) {
293
297
  // DEBUGGING ONLY
294
298
  if (part.lastSent) {
295
299
  if (old !== part.lastSent) {
296
- throw new Error('Out of order, last sent expected \'' +
300
+ // Non-fatal: log a warning instead of throwing, to avoid crashing the pad UI.
301
+ console.warn("Out of order, last sent expected '" +
297
302
  old +
298
- '\' but found \'' +
303
+ "' but found '" +
299
304
  part.lastSent +
300
- '\'');
305
+ "'");
301
306
  }
302
307
  }
303
308
  part.lastSent = newOne;
@@ -318,11 +323,11 @@ export function notepad(dom, padDoc, subject, me, options) {
318
323
  // alert("clash " + errorBody);
319
324
  log(' patch FAILED ' +
320
325
  xhr.status +
321
- ' for \'' +
326
+ " for '" +
322
327
  old +
323
- '\' -> \'' +
328
+ "' -> '" +
324
329
  newOne +
325
- '\': ' +
330
+ "': " +
326
331
  errorBody);
327
332
  if (xhr.status === 409) {
328
333
  // Conflict - @@ we assume someone else
@@ -335,16 +340,30 @@ export function notepad(dom, padDoc, subject, me, options) {
335
340
  }
336
341
  else {
337
342
  setPartStyle(part, 'color: black; background-color: #fdd;'); // failed pink
338
- part.state = 0;
339
- complain(' Error ' + xhr.status + ' sending data: ' + errorBody, true);
340
- beep(1.0, 128); // Other
341
- // @@@ Do soemthing more serious with other errors eg auth, etc
343
+ const status = xhr === null || xhr === void 0 ? void 0 : xhr.status;
344
+ if (!status || status === 502 || status === 503) {
345
+ // Transient server error – retry after a short delay
346
+ part.lastSent = undefined;
347
+ part.state = 0;
348
+ setTimeout(() => {
349
+ if (part.state === 0 || part.state === undefined) {
350
+ part.state = 1;
351
+ updateStore(part);
352
+ }
353
+ }, 2000);
354
+ }
355
+ else {
356
+ part.state = 0;
357
+ complain(' Error ' + status + ' sending data: ' + errorBody, true);
358
+ beep(1.0, 128); // Other
359
+ // @@@ Do something more serious with other errors eg auth, etc
360
+ }
342
361
  }
343
362
  }
344
363
  else {
345
364
  clearStatus(true); // upstream
346
365
  setPartStyle(part); // synced
347
- log(' Patch ok \'' + old + '\' -> \'' + newOne + '\' ');
366
+ log(" Patch ok '" + old + "' -> '" + newOne + "' ");
348
367
  if (part.state === 4) {
349
368
  // delete me
350
369
  part.state = 3;
@@ -367,7 +386,7 @@ export function notepad(dom, padDoc, subject, me, options) {
367
386
  part.addEventListener('input', function inputChangeListener(_event) {
368
387
  // debug.log("input changed "+part.value);
369
388
  setPartStyle(part, undefined, true); // grey out - not synced
370
- log('Input event state ' + part.state + ' value \'' + part.value + '\'');
389
+ log('Input event state ' + part.state + " value '" + part.value + "'");
371
390
  switch (part.state) {
372
391
  case 3: // being deleted
373
392
  return;
@@ -380,8 +399,16 @@ export function notepad(dom, padDoc, subject, me, options) {
380
399
  return;
381
400
  case 0:
382
401
  case undefined:
383
- part.state = 1; // being upadted
384
- updateStore(part);
402
+ // Debounce: wait for a pause in typing before sending PATCH
403
+ if (inputDebounceTimer !== null)
404
+ clearTimeout(inputDebounceTimer);
405
+ inputDebounceTimer = setTimeout(() => {
406
+ inputDebounceTimer = null;
407
+ if (part.state === 0 || part.state === undefined) {
408
+ part.state = 1; // being updated
409
+ updateStore(part);
410
+ }
411
+ }, 400);
385
412
  }
386
413
  }); // listener
387
414
  }; // addlisteners
@@ -413,12 +440,12 @@ export function notepad(dom, padDoc, subject, me, options) {
413
440
  }
414
441
  else {
415
442
  setPartStyle(part, 'color: #222; background-color: #fff');
416
- log('Note can\'t add listeners - not logged in');
443
+ log("Note can't add listeners - not logged in");
417
444
  }
418
445
  return part;
419
446
  };
420
447
  /* @@ TODO we need to look at indent, it can be a Number or an Object this doesn't seem correct.
421
- */
448
+ */
422
449
  const newChunk = function (ele, before) {
423
450
  // element of chunk being split
424
451
  const kb = store;
@@ -554,7 +581,9 @@ export function notepad(dom, padDoc, subject, me, options) {
554
581
  kb.each(subject, PAD('next')).length;
555
582
  log(msg);
556
583
  if (options.statusArea) {
557
- options.statusArea.textContent += msg;
584
+ ;
585
+ options.statusArea.textContent +=
586
+ msg;
558
587
  }
559
588
  return;
560
589
  }
@@ -744,24 +773,28 @@ export function notepadToHTML(pad, kb) {
744
773
  html += '</ul>\n';
745
774
  }
746
775
  }
747
- chunks.forEach(chunk => {
776
+ chunks.forEach((chunk) => {
748
777
  const indent = kb.anyJS(chunk, PAD('indent'));
749
778
  const rawContent = kb.anyJS(chunk, ns.sioc('content'));
750
779
  if (!rawContent)
751
780
  return; // seed chunk is dummy
752
781
  const content = xmlEncode(rawContent);
753
- if (indent < 0) { // negative indent levels represent heading levels
782
+ if (indent < 0) {
783
+ // negative indent levels represent heading levels
754
784
  decreaseLevel(0);
755
785
  const h = indent >= -3 ? 4 + indent : 1; // -1 -> h4, -2 -> h3
756
786
  html += `\n<h${h}>${content}</h${h}>\n`;
757
787
  }
758
- else { // >= 0
759
- if (indent > 0) { // Lists
788
+ else {
789
+ // >= 0
790
+ if (indent > 0) {
791
+ // Lists
760
792
  decreaseLevel(indent);
761
793
  increaseLevel(indent);
762
794
  html += `<li>${content}</li>\n`;
763
795
  }
764
- else { // indent 0
796
+ else {
797
+ // indent 0
765
798
  decreaseLevel(indent);
766
799
  html += `<p>${content}</p>\n`;
767
800
  }
package/dist/pad.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pad.js","sourceRoot":"","sources":["../src/pad.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pad.js","sourceRoot":"","sources":["../src/pad.ts"],"names":[],"mappings":"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"}
@@ -21957,8 +21957,8 @@ function notepad(dom, padDoc, subject, me, options) {
21957
21957
  }
21958
21958
  }
21959
21959
  /* @@ TODO want to look into this, it seems upstream should be a boolean and default to false ?
21960
- *
21961
- */
21960
+ *
21961
+ */
21962
21962
  var complain = function complain(message) {
21963
21963
  var upstream = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
21964
21964
  (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(message);
@@ -21970,6 +21970,7 @@ function notepad(dom, padDoc, subject, me, options) {
21970
21970
  // @@ TODO need to refactor so that we don't have to type cast
21971
21971
  var clearStatus = function clearStatus(_upsteam) {
21972
21972
  if (options.statusArea) {
21973
+ ;
21973
21974
  options.statusArea.innerHTML = '';
21974
21975
  }
21975
21976
  };
@@ -22001,7 +22002,7 @@ function notepad(dom, padDoc, subject, me, options) {
22001
22002
  var next = kb.any(chunk, PAD('next'));
22002
22003
  if (prev.sameTerm(subject) && next.sameTerm(subject)) {
22003
22004
  // Last one
22004
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('You can\'t delete the only line.');
22005
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)("You can't delete the only line.");
22005
22006
  return;
22006
22007
  }
22007
22008
  var del = kb.statementsMatching(chunk, undefined, undefined, padDoc).concat(kb.statementsMatching(undefined, undefined, chunk, padDoc));
@@ -22043,10 +22044,10 @@ function notepad(dom, padDoc, subject, me, options) {
22043
22044
  }, 1000);
22044
22045
  } else {
22045
22046
  (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(' removePart FAILED ' + chunk + ': ' + errorMessage);
22046
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(' removePart was deleteing :\'' + del);
22047
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(" removePart was deleting :'" + del);
22047
22048
  setPartStyle(part, 'color: black; background-color: #fdd;'); // failed
22048
22049
  var res = response ? response.status : ' [no response field] ';
22049
- complain('Error ' + res + ' saving changes: ' + errorMessage["true"]); // upstream,
22050
+ complain('Error ' + res + ' saving changes: ' + String(errorMessage)); // upstream,
22050
22051
  // updater.requestDownstreamAction(padDoc, reloadAndSync);
22051
22052
  }
22052
22053
  });
@@ -22063,7 +22064,7 @@ function notepad(dom, padDoc, subject, me, options) {
22063
22064
  }
22064
22065
  updater.update(del, ins, function (uri, ok, errorBody) {
22065
22066
  if (!ok) {
22066
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('Indent change FAILED \'' + newIndent + '\' for ' + padDoc + ': ' + errorBody);
22067
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)("Indent change FAILED '" + newIndent + "' for " + padDoc + ': ' + errorBody);
22067
22068
  setPartStyle(part, 'color: black; background-color: #fdd;'); // failed
22068
22069
  updater.requestDownstreamAction(padDoc, reloadAndSync);
22069
22070
  } else {
@@ -22072,6 +22073,7 @@ function notepad(dom, padDoc, subject, me, options) {
22072
22073
  });
22073
22074
  };
22074
22075
  var addListeners = function addListeners(part, chunk) {
22076
+ var inputDebounceTimer = null;
22075
22077
  part.addEventListener('keydown', function (event) {
22076
22078
  if (!updater) {
22077
22079
  throw new Error('no updater');
@@ -22080,8 +22082,8 @@ function notepad(dom, padDoc, subject, me, options) {
22080
22082
  // up 38; down 40; left 37; right 39 tab 9; shift 16; escape 27
22081
22083
  switch (event.keyCode) {
22082
22084
  case 13:
22083
- // Return
22084
22085
  {
22086
+ // Return
22085
22087
  var before = event.shiftKey;
22086
22088
  (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('enter'); // Shift-return inserts before -- only way to add to top of pad.
22087
22089
  if (before) {
@@ -22128,8 +22130,8 @@ function notepad(dom, padDoc, subject, me, options) {
22128
22130
  }
22129
22131
  break;
22130
22132
  case 9:
22131
- // Tab
22132
22133
  {
22134
+ // Tab
22133
22135
  var delta = event.shiftKey ? -1 : 1;
22134
22136
  changeIndent(part, chunk, delta);
22135
22137
  event.preventDefault(); // default is to highlight next field
@@ -22172,7 +22174,8 @@ function notepad(dom, padDoc, subject, me, options) {
22172
22174
  // DEBUGGING ONLY
22173
22175
  if (part.lastSent) {
22174
22176
  if (old !== part.lastSent) {
22175
- throw new Error('Out of order, last sent expected \'' + old + '\' but found \'' + part.lastSent + '\'');
22177
+ // Non-fatal: log a warning instead of throwing, to avoid crashing the pad UI.
22178
+ console.warn("Out of order, last sent expected '" + old + "' but found '" + part.lastSent + "'");
22176
22179
  }
22177
22180
  }
22178
22181
  part.lastSent = newOne;
@@ -22192,7 +22195,7 @@ function notepad(dom, padDoc, subject, me, options) {
22192
22195
  updater.update(del, ins, function (uri, ok, errorBody, xhr) {
22193
22196
  if (!ok) {
22194
22197
  // alert("clash " + errorBody);
22195
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(' patch FAILED ' + xhr.status + ' for \'' + old + '\' -> \'' + newOne + '\': ' + errorBody);
22198
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(' patch FAILED ' + xhr.status + " for '" + old + "' -> '" + newOne + "': " + errorBody);
22196
22199
  if (xhr.status === 409) {
22197
22200
  // Conflict - @@ we assume someone else
22198
22201
  setPartStyle(part, 'color: black; background-color: #fdd;');
@@ -22203,15 +22206,28 @@ function notepad(dom, padDoc, subject, me, options) {
22203
22206
  }, 1000);
22204
22207
  } else {
22205
22208
  setPartStyle(part, 'color: black; background-color: #fdd;'); // failed pink
22206
- part.state = 0;
22207
- complain(' Error ' + xhr.status + ' sending data: ' + errorBody, true);
22208
- (0,_utils__WEBPACK_IMPORTED_MODULE_4__.beep)(1.0, 128); // Other
22209
- // @@@ Do soemthing more serious with other errors eg auth, etc
22209
+ var status = xhr === null || xhr === void 0 ? void 0 : xhr.status;
22210
+ if (!status || status === 502 || status === 503) {
22211
+ // Transient server error – retry after a short delay
22212
+ part.lastSent = undefined;
22213
+ part.state = 0;
22214
+ setTimeout(function () {
22215
+ if (part.state === 0 || part.state === undefined) {
22216
+ part.state = 1;
22217
+ _updateStore(part);
22218
+ }
22219
+ }, 2000);
22220
+ } else {
22221
+ part.state = 0;
22222
+ complain(' Error ' + status + ' sending data: ' + errorBody, true);
22223
+ (0,_utils__WEBPACK_IMPORTED_MODULE_4__.beep)(1.0, 128); // Other
22224
+ // @@@ Do something more serious with other errors eg auth, etc
22225
+ }
22210
22226
  }
22211
22227
  } else {
22212
22228
  clearStatus(true); // upstream
22213
22229
  setPartStyle(part); // synced
22214
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(' Patch ok \'' + old + '\' -> \'' + newOne + '\' ');
22230
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(" Patch ok '" + old + "' -> '" + newOne + "' ");
22215
22231
  if (part.state === 4) {
22216
22232
  // delete me
22217
22233
  part.state = 3;
@@ -22231,7 +22247,7 @@ function notepad(dom, padDoc, subject, me, options) {
22231
22247
  part.addEventListener('input', function inputChangeListener(_event) {
22232
22248
  // debug.log("input changed "+part.value);
22233
22249
  setPartStyle(part, undefined, true); // grey out - not synced
22234
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('Input event state ' + part.state + ' value \'' + part.value + '\'');
22250
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('Input event state ' + part.state + " value '" + part.value + "'");
22235
22251
  switch (part.state) {
22236
22252
  case 3:
22237
22253
  // being deleted
@@ -22247,8 +22263,15 @@ function notepad(dom, padDoc, subject, me, options) {
22247
22263
  return;
22248
22264
  case 0:
22249
22265
  case undefined:
22250
- part.state = 1; // being upadted
22251
- _updateStore(part);
22266
+ // Debounce: wait for a pause in typing before sending PATCH
22267
+ if (inputDebounceTimer !== null) clearTimeout(inputDebounceTimer);
22268
+ inputDebounceTimer = setTimeout(function () {
22269
+ inputDebounceTimer = null;
22270
+ if (part.state === 0 || part.state === undefined) {
22271
+ part.state = 1; // being updated
22272
+ _updateStore(part);
22273
+ }
22274
+ }, 400);
22252
22275
  }
22253
22276
  }); // listener
22254
22277
  }; // addlisteners
@@ -22278,13 +22301,13 @@ function notepad(dom, padDoc, subject, me, options) {
22278
22301
  addListeners(part, chunk);
22279
22302
  } else {
22280
22303
  setPartStyle(part, 'color: #222; background-color: #fff');
22281
- (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)('Note can\'t add listeners - not logged in');
22304
+ (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)("Note can't add listeners - not logged in");
22282
22305
  }
22283
22306
  return part;
22284
22307
  };
22285
22308
 
22286
22309
  /* @@ TODO we need to look at indent, it can be a Number or an Object this doesn't seem correct.
22287
- */
22310
+ */
22288
22311
  var _newChunk = function newChunk(ele, before) {
22289
22312
  // element of chunk being split
22290
22313
  var kb = store;
@@ -22409,6 +22432,7 @@ function notepad(dom, padDoc, subject, me, options) {
22409
22432
  var msg = 'Pad: Inconsistent data - NEXT pointers: ' + kb.each(subject, PAD('next')).length;
22410
22433
  (0,_debug__WEBPACK_IMPORTED_MODULE_5__/* .log */ .Rm)(msg);
22411
22434
  if (options.statusArea) {
22435
+ ;
22412
22436
  options.statusArea.textContent += msg;
22413
22437
  }
22414
22438
  return;