braid-text 0.2.2 → 0.2.4
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.js +18 -8
- package/package.json +1 -1
- package/test.js +2 -0
package/index.js
CHANGED
|
@@ -487,6 +487,7 @@ braid_text.put = async (key, options) => {
|
|
|
487
487
|
}
|
|
488
488
|
|
|
489
489
|
for (let b of bytes) resource.doc.mergeBytes(b)
|
|
490
|
+
resource.val = resource.doc.get()
|
|
490
491
|
|
|
491
492
|
resource.need_defrag = true
|
|
492
493
|
|
|
@@ -589,8 +590,6 @@ braid_text.put = async (key, options) => {
|
|
|
589
590
|
}
|
|
590
591
|
|
|
591
592
|
await resource.db_delta(resource.doc.getPatchSince(v_before))
|
|
592
|
-
|
|
593
|
-
resource.val = resource.doc.get()
|
|
594
593
|
}
|
|
595
594
|
|
|
596
595
|
braid_text.list = async () => {
|
|
@@ -866,17 +865,28 @@ function dt_get(doc, version, agent = null) {
|
|
|
866
865
|
) {
|
|
867
866
|
for (; i < I; i++) {
|
|
868
867
|
let version = versions[i].join("-")
|
|
869
|
-
if (
|
|
868
|
+
if (after_versions[version]) continue
|
|
869
|
+
let og_i = i
|
|
870
|
+
let content = []
|
|
871
|
+
if (op_run.content?.[i - base_i]) content.push(op_run.content[i - base_i])
|
|
872
|
+
if (!!op_run.content === op_run.fwd)
|
|
873
|
+
while (i + 1 < I && !after_versions[versions[i + 1].join("-")]) {
|
|
874
|
+
i++
|
|
875
|
+
if (op_run.content?.[i - base_i]) content.push(op_run.content[i - base_i])
|
|
876
|
+
}
|
|
877
|
+
content = content.length ? content.join("") : null
|
|
878
|
+
|
|
879
|
+
new_doc.mergeBytes(
|
|
870
880
|
dt_create_bytes(
|
|
871
881
|
version,
|
|
872
|
-
parentss[
|
|
882
|
+
parentss[og_i].map((x) => x.join("-")),
|
|
873
883
|
op_run.fwd ?
|
|
874
884
|
(op_run.content ?
|
|
875
|
-
op_run.start + (
|
|
885
|
+
op_run.start + (og_i - base_i) :
|
|
876
886
|
op_run.start) :
|
|
877
887
|
op_run.end - 1 - (i - base_i),
|
|
878
|
-
op_run.content
|
|
879
|
-
|
|
888
|
+
op_run.content ? 0 : i - og_i + 1,
|
|
889
|
+
content
|
|
880
890
|
)
|
|
881
891
|
)
|
|
882
892
|
}
|
|
@@ -1569,7 +1579,7 @@ function decode_filename(encodedFilename) {
|
|
|
1569
1579
|
function validate_version_array(x) {
|
|
1570
1580
|
if (!Array.isArray(x)) throw new Error(`invalid version array: not an array`)
|
|
1571
1581
|
x.sort()
|
|
1572
|
-
for (xx of x) validate_actor_seq(xx)
|
|
1582
|
+
for (var xx of x) validate_actor_seq(xx)
|
|
1573
1583
|
}
|
|
1574
1584
|
|
|
1575
1585
|
function validate_actor_seq(x) {
|
package/package.json
CHANGED
package/test.js
CHANGED
|
@@ -16,6 +16,7 @@ async function main() {
|
|
|
16
16
|
let best_seed = NaN
|
|
17
17
|
let best_n = Infinity
|
|
18
18
|
let base = Math.floor(Math.random() * 10000000)
|
|
19
|
+
let st = Date.now()
|
|
19
20
|
|
|
20
21
|
let og_log = console.log
|
|
21
22
|
console.log = () => {}
|
|
@@ -113,6 +114,7 @@ async function main() {
|
|
|
113
114
|
}
|
|
114
115
|
}
|
|
115
116
|
og_log(`best_seed = ${best_seed}, best_n = ${best_n}`)
|
|
117
|
+
og_log(`time = ${Date.now() - st}`)
|
|
116
118
|
}
|
|
117
119
|
|
|
118
120
|
function make_random_edit(doc) {
|