@omegup/msync 0.0.99 → 0.1.0
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/index.esm.js +12 -3
- package/index.js +12 -3
- package/package.json +1 -1
package/index.esm.js
CHANGED
|
@@ -1367,10 +1367,11 @@ const $replaceWith = (expr) => ({
|
|
|
1367
1367
|
const $mergeX = (out, keys, f, map, whenNotMatched = 'fail', ext) => {
|
|
1368
1368
|
const patch = mapExact(keys, v => sub(v, f));
|
|
1369
1369
|
const filter = mapExactToObject(ext, v => ({ $eq: v }));
|
|
1370
|
+
const setDeleted = whenNotMatched === 'discard';
|
|
1370
1371
|
const replacer = map(field(omitPick().backward(spread(patch, {
|
|
1371
1372
|
_id: ['_id', f.of('_id').expr()],
|
|
1372
1373
|
touchedAt: ['touchedAt', current],
|
|
1373
|
-
deletedAt: ['deletedAt', current],
|
|
1374
|
+
deletedAt: [setDeleted ? 'deletedAt' : 'touchedAt', current],
|
|
1374
1375
|
}))));
|
|
1375
1376
|
return {
|
|
1376
1377
|
raw: (first) => link()
|
|
@@ -1383,8 +1384,16 @@ const $mergeX = (out, keys, f, map, whenNotMatched = 'fail', ext) => {
|
|
|
1383
1384
|
whenMatched: asStages([
|
|
1384
1385
|
{
|
|
1385
1386
|
$replaceWith: {
|
|
1386
|
-
old:
|
|
1387
|
-
|
|
1387
|
+
old: setDeleted
|
|
1388
|
+
? { $mergeObjects: ['$$ROOT', { deletedAt: '$deletedAt' }] }
|
|
1389
|
+
: '$$ROOT',
|
|
1390
|
+
merged: {
|
|
1391
|
+
$mergeObjects: [
|
|
1392
|
+
'$$ROOT',
|
|
1393
|
+
'$$new',
|
|
1394
|
+
...(setDeleted ? [{ deletedAt: '$deletedAt' }] : []),
|
|
1395
|
+
],
|
|
1396
|
+
},
|
|
1388
1397
|
},
|
|
1389
1398
|
},
|
|
1390
1399
|
{
|
package/index.js
CHANGED
|
@@ -1369,10 +1369,11 @@ const $replaceWith = (expr) => ({
|
|
|
1369
1369
|
const $mergeX = (out, keys, f, map, whenNotMatched = 'fail', ext) => {
|
|
1370
1370
|
const patch = mapExact(keys, v => sub(v, f));
|
|
1371
1371
|
const filter = mapExactToObject(ext, v => ({ $eq: v }));
|
|
1372
|
+
const setDeleted = whenNotMatched === 'discard';
|
|
1372
1373
|
const replacer = map(field(omitPick().backward(spread(patch, {
|
|
1373
1374
|
_id: ['_id', f.of('_id').expr()],
|
|
1374
1375
|
touchedAt: ['touchedAt', current],
|
|
1375
|
-
deletedAt: ['deletedAt', current],
|
|
1376
|
+
deletedAt: [setDeleted ? 'deletedAt' : 'touchedAt', current],
|
|
1376
1377
|
}))));
|
|
1377
1378
|
return {
|
|
1378
1379
|
raw: (first) => link()
|
|
@@ -1385,8 +1386,16 @@ const $mergeX = (out, keys, f, map, whenNotMatched = 'fail', ext) => {
|
|
|
1385
1386
|
whenMatched: asStages([
|
|
1386
1387
|
{
|
|
1387
1388
|
$replaceWith: {
|
|
1388
|
-
old:
|
|
1389
|
-
|
|
1389
|
+
old: setDeleted
|
|
1390
|
+
? { $mergeObjects: ['$$ROOT', { deletedAt: '$deletedAt' }] }
|
|
1391
|
+
: '$$ROOT',
|
|
1392
|
+
merged: {
|
|
1393
|
+
$mergeObjects: [
|
|
1394
|
+
'$$ROOT',
|
|
1395
|
+
'$$new',
|
|
1396
|
+
...(setDeleted ? [{ deletedAt: '$deletedAt' }] : []),
|
|
1397
|
+
],
|
|
1398
|
+
},
|
|
1390
1399
|
},
|
|
1391
1400
|
},
|
|
1392
1401
|
{
|