@ai-matrx/office 0.8.30 → 0.8.32
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/CHANGELOG.md +15 -3
- package/dist/collab-sheets-transform.cjs +24 -21
- package/dist/collab-sheets-transform.cjs.map +1 -1
- package/dist/collab-sheets-transform.js +24 -21
- package/dist/collab-sheets-transform.js.map +1 -1
- package/dist/univer-collab.cjs +24 -21
- package/dist/univer-collab.cjs.map +1 -1
- package/dist/univer-collab.js +24 -21
- package/dist/univer-collab.js.map +1 -1
- package/package.json +2 -2
package/dist/univer-collab.cjs
CHANGED
|
@@ -2367,7 +2367,8 @@ registerRangedResource({
|
|
|
2367
2367
|
}),
|
|
2368
2368
|
removeOf: (sheet, key) => ({ id: "sheet.mutation.delete-conditional-rule", params: { subUnitId: sheet, cfId: key, derived: true } }),
|
|
2369
2369
|
hasFormula: (m) => CF_FORMULA(cfRule(m)),
|
|
2370
|
-
orderedAdds: true
|
|
2370
|
+
orderedAdds: true,
|
|
2371
|
+
setsOverwrite: true
|
|
2371
2372
|
});
|
|
2372
2373
|
var DV = { add: "data-validation.mutation.addRule", update: "data-validation.mutation.updateRule", remove: "data-validation.mutation.removeRule" };
|
|
2373
2374
|
var DV_RANGE = 1;
|
|
@@ -3599,6 +3600,24 @@ function transformMutation(x, y, side) {
|
|
|
3599
3600
|
return ok2([x]);
|
|
3600
3601
|
}
|
|
3601
3602
|
var blocked = (p) => !Array.isArray(p);
|
|
3603
|
+
function compactDerivedSets(ops) {
|
|
3604
|
+
if (ops.length < 2) return ops;
|
|
3605
|
+
const later = /* @__PURE__ */ new Set();
|
|
3606
|
+
const out = [];
|
|
3607
|
+
for (let i = ops.length - 1; i >= 0; i--) {
|
|
3608
|
+
const m = ops[i];
|
|
3609
|
+
const spec = rangedSpecOf(m.id);
|
|
3610
|
+
if (spec?.setsOverwrite && spec.ids[m.id] === "set") {
|
|
3611
|
+
const at = (k, facet2) => `${spec.family}|${sheetOf(m)}|${k}|${facet2}`;
|
|
3612
|
+
const facet = spec.facet?.(m) ?? "all";
|
|
3613
|
+
const keys = spec.keys(m);
|
|
3614
|
+
if (isDerived(m) && keys.every((k) => later.has(at(k, facet)) || later.has(at(k, "all")))) continue;
|
|
3615
|
+
for (const k of keys) later.add(at(k, facet));
|
|
3616
|
+
}
|
|
3617
|
+
out.push(m);
|
|
3618
|
+
}
|
|
3619
|
+
return out.length === ops.length ? ops : out.reverse();
|
|
3620
|
+
}
|
|
3602
3621
|
function tSeq(xs, ys, side, acc) {
|
|
3603
3622
|
if (xs.length === 0 || ys.length === 0) return [xs, ys];
|
|
3604
3623
|
if (xs.length === 1 && ys.length === 1) {
|
|
@@ -3622,33 +3641,17 @@ function tSeq(xs, ys, side, acc) {
|
|
|
3622
3641
|
}
|
|
3623
3642
|
const r = tSeq(curX, [y], side, acc);
|
|
3624
3643
|
if (blocked(r)) return r;
|
|
3625
|
-
curX = r[0];
|
|
3644
|
+
curX = r[0].length > 1 ? compactDerivedSets(r[0]) : r[0];
|
|
3626
3645
|
for (const m of r[1]) nextY.push(m);
|
|
3627
3646
|
}
|
|
3628
3647
|
for (const m of curX) outX.push(m);
|
|
3629
|
-
curY = nextY;
|
|
3648
|
+
curY = compactDerivedSets(nextY);
|
|
3630
3649
|
}
|
|
3631
|
-
return [outX, curY];
|
|
3632
|
-
}
|
|
3633
|
-
function tSeqOld(xs, ys, side, acc) {
|
|
3634
|
-
if (xs.length === 0 || ys.length === 0) return [xs, ys];
|
|
3635
|
-
if (xs.length === 1 && ys.length === 1) return tSeq(xs, ys, side, acc);
|
|
3636
|
-
if (xs.length > 1) {
|
|
3637
|
-
const first2 = tSeqOld([xs[0]], ys, side, acc);
|
|
3638
|
-
if (blocked(first2)) return first2;
|
|
3639
|
-
const rest2 = tSeqOld(xs.slice(1), first2[1], side, acc);
|
|
3640
|
-
if (blocked(rest2)) return rest2;
|
|
3641
|
-
return [[...first2[0], ...rest2[0]], rest2[1]];
|
|
3642
|
-
}
|
|
3643
|
-
const first = tSeqOld(xs, [ys[0]], side, acc);
|
|
3644
|
-
if (blocked(first)) return first;
|
|
3645
|
-
const rest = tSeqOld(first[0], ys.slice(1), side, acc);
|
|
3646
|
-
if (blocked(rest)) return rest;
|
|
3647
|
-
return [rest[0], [...first[1], ...rest[1]]];
|
|
3650
|
+
return [compactDerivedSets(outX), curY];
|
|
3648
3651
|
}
|
|
3649
3652
|
function transformGroup(x, y, side) {
|
|
3650
3653
|
const acc = { lost: [], dropped: [] };
|
|
3651
|
-
const r =
|
|
3654
|
+
const r = tSeq([...x], [...y], side, acc);
|
|
3652
3655
|
if (blocked(r)) return r;
|
|
3653
3656
|
return { op: r[0], lost: [...new Set(acc.lost)], dropped: [...new Set(acc.dropped)] };
|
|
3654
3657
|
}
|