@amalgm/live 0.2.81-main.43088917913 → 0.2.81-main.43165964618
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/PURPOSE.md +10 -5
- package/dist/detection/package-proposal.d.ts +3 -3
- package/dist/detection/package-proposal.d.ts.map +1 -1
- package/dist/detection/package-proposal.js +1 -1
- package/dist/detection/package-proposal.js.map +1 -1
- package/dist/detection/record-proposal.d.ts +1 -1
- package/dist/detection/record-proposal.d.ts.map +1 -1
- package/dist/drive/contracts.d.ts +21 -6
- package/dist/drive/contracts.d.ts.map +1 -1
- package/dist/drive/contracts.js.map +1 -1
- package/dist/drive/drive.d.ts +2 -2
- package/dist/drive/drive.d.ts.map +1 -1
- package/dist/drive/drive.js +13 -11
- package/dist/drive/drive.js.map +1 -1
- package/dist/drive/listing.d.ts +6 -10
- package/dist/drive/listing.d.ts.map +1 -1
- package/dist/drive/listing.js +31 -30
- package/dist/drive/listing.js.map +1 -1
- package/dist/drive/map-index.d.ts +47 -14
- package/dist/drive/map-index.d.ts.map +1 -1
- package/dist/drive/map-index.js +111 -28
- package/dist/drive/map-index.js.map +1 -1
- package/dist/drive/where.d.ts +29 -14
- package/dist/drive/where.d.ts.map +1 -1
- package/dist/drive/where.js +53 -31
- package/dist/drive/where.js.map +1 -1
- package/dist/entities/accepted-view.d.ts +64 -0
- package/dist/entities/accepted-view.d.ts.map +1 -0
- package/dist/entities/accepted-view.js +221 -0
- package/dist/entities/accepted-view.js.map +1 -0
- package/dist/entities/cloud.d.ts +18 -22
- package/dist/entities/cloud.d.ts.map +1 -1
- package/dist/entities/cloud.js +28 -28
- package/dist/entities/cloud.js.map +1 -1
- package/dist/entities/graph-head.d.ts +22 -73
- package/dist/entities/graph-head.d.ts.map +1 -1
- package/dist/entities/graph-head.js +30 -160
- package/dist/entities/graph-head.js.map +1 -1
- package/dist/entities/graph-pages.d.ts +123 -0
- package/dist/entities/graph-pages.d.ts.map +1 -0
- package/dist/entities/graph-pages.js +239 -0
- package/dist/entities/graph-pages.js.map +1 -0
- package/dist/entities/index.d.ts +6 -1
- package/dist/entities/index.d.ts.map +1 -1
- package/dist/entities/index.js +6 -1
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/package-pages.d.ts +5 -4
- package/dist/entities/package-pages.d.ts.map +1 -1
- package/dist/entities/package-pages.js +11 -15
- package/dist/entities/package-pages.js.map +1 -1
- package/dist/history/version.d.ts +1 -1
- package/dist/history/version.d.ts.map +1 -1
- package/dist/records/contracts.js +3 -3
- package/dist/records/contracts.js.map +1 -1
- package/dist/transfer/artifacts.d.ts +1 -1
- package/dist/transfer/artifacts.d.ts.map +1 -1
- package/dist/transfer/upload.js +1 -1
- package/dist/transfer/upload.js.map +1 -1
- package/dist-cjs/detection/package-proposal.js +1 -1
- package/dist-cjs/detection/package-proposal.js.map +1 -1
- package/dist-cjs/drive/contracts.js.map +1 -1
- package/dist-cjs/drive/drive.js +13 -11
- package/dist-cjs/drive/drive.js.map +1 -1
- package/dist-cjs/drive/listing.js +30 -29
- package/dist-cjs/drive/listing.js.map +1 -1
- package/dist-cjs/drive/map-index.js +111 -28
- package/dist-cjs/drive/map-index.js.map +1 -1
- package/dist-cjs/drive/where.js +54 -30
- package/dist-cjs/drive/where.js.map +1 -1
- package/dist-cjs/entities/accepted-view.js +225 -0
- package/dist-cjs/entities/accepted-view.js.map +1 -0
- package/dist-cjs/entities/cloud.js +30 -30
- package/dist-cjs/entities/cloud.js.map +1 -1
- package/dist-cjs/entities/graph-head.js +29 -167
- package/dist-cjs/entities/graph-head.js.map +1 -1
- package/dist-cjs/entities/graph-pages.js +257 -0
- package/dist-cjs/entities/graph-pages.js.map +1 -0
- package/dist-cjs/entities/index.js +6 -1
- package/dist-cjs/entities/index.js.map +1 -1
- package/dist-cjs/entities/package-pages.js +12 -16
- package/dist-cjs/entities/package-pages.js.map +1 -1
- package/dist-cjs/records/contracts.js +4 -4
- package/dist-cjs/records/contracts.js.map +1 -1
- package/dist-cjs/transfer/upload.js +2 -2
- package/dist-cjs/transfer/upload.js.map +1 -1
- package/package.json +4 -4
package/PURPOSE.md
CHANGED
|
@@ -506,11 +506,16 @@ or certify a new wire contract, cloud migration or cross-machine rollout.
|
|
|
506
506
|
Outbox mutation.
|
|
507
507
|
|
|
508
508
|
42. **The registry graph is immutable pages, and its head is the snapshot.**
|
|
509
|
-
A
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
509
|
+
A root has two page lists: its records in (parentUUID, uuid) order, so a
|
|
510
|
+
folder's children lie together, and a parent index of [uuid, parentUUID]
|
|
511
|
+
pairs in uuid order. Each page is a contiguous slice serialized
|
|
512
|
+
canonically under a fixed byte budget, identified by the hash of its own
|
|
513
|
+
bytes, and stored as ordinary immutable content. The head names each
|
|
514
|
+
root's ordered pages and each page's first key, and nothing else, so a
|
|
515
|
+
reader picks the pages one folder or one entity needs from the head
|
|
516
|
+
alone; its checksum proves the head bytes, never a reassembled record
|
|
517
|
+
list. A reader proves each page it reads and believes the head for the
|
|
518
|
+
rest. A publication rebuilds only roots it walked and carries every
|
|
514
519
|
other root's committed page list forward byte-identically. The authority
|
|
515
520
|
verifies every replaced root from its pages and requires unchanged roots
|
|
516
521
|
to match the committed head exactly. A first head over a records-shaped
|
|
@@ -15,14 +15,14 @@
|
|
|
15
15
|
* every change to an existing entity stay ordinary records. A package takes
|
|
16
16
|
* its anchor's place in the order, so cause still precedes effect.
|
|
17
17
|
*/
|
|
18
|
-
import type {
|
|
18
|
+
import type { RecordPage } from '../entities/graph-pages.js';
|
|
19
19
|
import { type Sha256Hex } from '../entities/types.js';
|
|
20
20
|
import { type Steps } from '../steps.js';
|
|
21
21
|
import { type DetectedChangeProposal } from './record-proposal.js';
|
|
22
22
|
export interface PackageProposal {
|
|
23
23
|
readonly proposal: DetectedChangeProposal;
|
|
24
24
|
/** The pages the proposal names, with their bytes, for upload. */
|
|
25
|
-
readonly pages: readonly
|
|
25
|
+
readonly pages: readonly RecordPage[];
|
|
26
26
|
}
|
|
27
27
|
/** The package that creates `anchorId` with every record of its new
|
|
28
28
|
* subtree, `records` holding the anchor's own result too. */
|
|
@@ -32,7 +32,7 @@ export interface PackagedProposals {
|
|
|
32
32
|
/** What to record, in order: each package in its anchor's place. */
|
|
33
33
|
readonly proposals: readonly DetectedChangeProposal[];
|
|
34
34
|
/** Every page the packages name, with its bytes. */
|
|
35
|
-
readonly pages: readonly
|
|
35
|
+
readonly pages: readonly RecordPage[];
|
|
36
36
|
}
|
|
37
37
|
/** Detect's proposals with each new subtree packaged (see the rule above). */
|
|
38
38
|
export declare function packageProposalsSteps(proposals: readonly DetectedChangeProposal[], sha256Hex: Sha256Hex): Steps<PackagedProposals>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/package-proposal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"package-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/package-proposal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAyB,KAAK,KAAK,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAKL,KAAK,sBAAsB,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;CACvC;AAED;6DAC6D;AAC7D,wBAAiB,oBAAoB,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,SAAS,EAAE,SAAS,GACnB,KAAK,CAAC,eAAe,CAAC,CAmBxB;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,OAAO,EAAE,EAC3B,SAAS,EAAE,SAAS,GACnB,eAAe,CAEjB;AAED,MAAM,WAAW,iBAAiB;IAChC,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACtD,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;CACvC;AAED,8EAA8E;AAC9E,wBAAiB,qBAAqB,CACpC,SAAS,EAAE,SAAS,sBAAsB,EAAE,EAC5C,SAAS,EAAE,SAAS,GACnB,KAAK,CAAC,iBAAiB,CAAC,CA8C1B;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,SAAS,sBAAsB,EAAE,EAC5C,SAAS,EAAE,SAAS,GACnB,iBAAiB,CAEnB"}
|
|
@@ -26,7 +26,7 @@ export function* packageProposalSteps(anchorId, records, sha256Hex) {
|
|
|
26
26
|
const pages = yield* packagePagesSteps(anchorId, records, sha256Hex);
|
|
27
27
|
let result;
|
|
28
28
|
for (const page of pages)
|
|
29
|
-
result ??= page.
|
|
29
|
+
result ??= page.items.find((record) => record.uuid === anchorId.toLowerCase());
|
|
30
30
|
const anchor = assertRecord(result);
|
|
31
31
|
const replay = { kind: 'package', pages: Object.freeze(pages.map((page) => page.ref)) };
|
|
32
32
|
const proposal = Object.freeze({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-proposal.js","sourceRoot":"","sources":["../../src/detection/package-proposal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAA0B,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAkB,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,EACX,SAAS,GAEV,MAAM,sBAAsB,CAAC;AAQ9B;6DAC6D;AAC7D,MAAM,SAAS,CAAC,CAAC,oBAAoB,CACnC,QAAgB,EAChB,OAA2B,EAC3B,SAAoB;IAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACrE,IAAI,MAAqC,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,MAAM,KAAK,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"package-proposal.js","sourceRoot":"","sources":["../../src/detection/package-proposal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAA0B,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAkB,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AAChE,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,EACX,SAAS,GAEV,MAAM,sBAAsB,CAAC;AAQ9B;6DAC6D;AAC7D,MAAM,SAAS,CAAC,CAAC,oBAAoB,CACnC,QAAgB,EAChB,OAA2B,EAC3B,SAAoB;IAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACrE,IAAI,MAAqC,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACzG,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,SAAkB,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;IACjG,MAAM,QAAQ,GAA2B,MAAM,CAAC,MAAM,CAAC;QACrD,QAAQ,EAAE,wBAAwB;QAClC,MAAM,EAAE,UAAU;QAClB,QAAQ,EAAE,MAAM,CAAC,IAAI;QACrB,YAAY,EAAE,IAAI;QAClB,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAU,CAAC;QAC1C,MAAM;QACN,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAClD,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;QAAE,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACjE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,OAA2B,EAC3B,SAAoB;IAEpB,OAAO,WAAW,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AACzE,CAAC;AASD,8EAA8E;AAC9E,MAAM,SAAS,CAAC,CAAC,qBAAqB,CACpC,SAA4C,EAC5C,SAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkC,CAAC;IAC1D,KAAK,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;QACtC,IAAI,QAAQ,CAAC,YAAY,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,CAAC,IAAmB,EAAW,EAAE,CACnD,IAAI,KAAK,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACxE,0EAA0E;IAC1E,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAClD,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,MAAM,GAAkB,IAAI,CAAC;QACjC,KAAK,IAAI,EAAE,GAAG,KAAK,IAAK,CAAC;YACvB,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAAC,MAAM,GAAG,KAAK,CAAC;gBAAC,MAAM;YAAC,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC,MAAM,CAAC,UAAU,CAAC;YAClD,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAO,CAAC,EAAE,CAAC;gBAAC,EAAE,GAAG,MAAO,CAAC;gBAAC,SAAS;YAAC,CAAC;YAClF,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,MAAM;QACR,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,OAAO;YAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAC;IACxD,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;QAChD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO;QAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,MAAM,CAAC,CAAC;QACxC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5F,IAAI,CAAC,QAAQ,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAClD,IAAI,MAAM,CAAC,GAAG,CAAC,MAAO,CAAC;YAAE,OAAO;QAChC,MAAM,CAAC,GAAG,CAAC,MAAO,CAAC,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACrG,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,SAA4C,EAC5C,SAAoB;IAEpB,OAAO,WAAW,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
import { type CloudEntityRecord } from '../entities/cloud.js';
|
|
11
11
|
import { type ConstructType } from '../entities/types.js';
|
|
12
12
|
import { type ContentManifest } from '../contracts/content.js';
|
|
13
|
-
import type { GraphPageRef } from '../entities/graph-
|
|
13
|
+
import type { GraphPageRef } from '../entities/graph-pages.js';
|
|
14
14
|
import { type TransferArtifact } from '../transfer/artifacts.js';
|
|
15
15
|
/** One proposal contract for both authors; `origin` says which. `@6` results
|
|
16
16
|
* carry an ordinary file's size and a link's target (null on every other
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAoC,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC5F,OAAO,EAAwB,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"record-proposal.d.ts","sourceRoot":"","sources":["../../src/detection/record-proposal.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,13 +36,28 @@ export interface MapEntity {
|
|
|
36
36
|
}
|
|
37
37
|
/** One root's map, and what this computer has placed of it. The host
|
|
38
38
|
* chooses which accepted graph it shows; it must never list a newer result
|
|
39
|
-
* than the bytes it would place for it.
|
|
39
|
+
* than the bytes it would place for it. The map reads a container's children
|
|
40
|
+
* when the drive enters it, so a look costs the containers it goes through,
|
|
41
|
+
* never the whole root. */
|
|
40
42
|
export interface MapPort {
|
|
41
43
|
/** The root this map stands over. */
|
|
42
44
|
root(): MapEntity;
|
|
43
|
-
/**
|
|
45
|
+
/** Reads a container's children whole, so `children` and `holders` answer
|
|
46
|
+
* for it from then on, and says whether the map holds the container: false
|
|
47
|
+
* when a change took it away before its children were read, so it has
|
|
48
|
+
* none. The drive enters each container before it reads beneath it;
|
|
49
|
+
* entering one already entered costs nothing. The children are the
|
|
50
|
+
* container's at the map's own position, so no change the map accepts is
|
|
51
|
+
* lost between reading them and answering for them. A container's version
|
|
52
|
+
* moves with membership only where its children are read: an entered
|
|
53
|
+
* container shows the membership version of the children it lists, and
|
|
54
|
+
* one never entered its record's. */
|
|
55
|
+
enter(parentUUID: string): Promise<boolean>;
|
|
56
|
+
/** Every child of an entered container, any status; none of any other.
|
|
57
|
+
* The drive lists active ones. */
|
|
44
58
|
children(parentUUID: string): readonly MapEntity[];
|
|
45
|
-
/** The children holding exactly this name, any
|
|
59
|
+
/** The children of an entered container holding exactly this name, any
|
|
60
|
+
* status; none of any other. */
|
|
46
61
|
holders(parentUUID: string, name: string): readonly MapEntity[];
|
|
47
62
|
/** Whether this computer holds the entity: it has admitted a row for it,
|
|
48
63
|
* so the shelf speaks for it from then on, whether its ground stands there
|
|
@@ -71,9 +86,9 @@ export interface Root {
|
|
|
71
86
|
* computer holds it, and its shelf. It is what a look at the reference
|
|
72
87
|
* itself needs, a stat of it or a listing of the folder it stands in, so a
|
|
73
88
|
* host answers it from the root's own record, never its whole map, until
|
|
74
|
-
* the root is entered. From then its entity is the entered map's root,
|
|
75
|
-
*
|
|
76
|
-
*
|
|
89
|
+
* the root is entered. From then its entity is the entered map's root, whose
|
|
90
|
+
* version moves with membership once the drive lists inside it
|
|
91
|
+
* (`MapPort.enter`). */
|
|
77
92
|
export interface Top {
|
|
78
93
|
readonly uuid: string;
|
|
79
94
|
readonly entity: MapEntity;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/drive/contracts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEvF;;kBAEkB;AAClB,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,iEAAiE;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;qEACiE;IACjE,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CACxC;AAED
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/drive/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/drive/contracts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../src/drive/contracts.ts"],"names":[],"mappings":"AAoPA;iEACiE;AACjE,MAAM,OAAO,UAAW,SAAQ,KAAK;IAC1B,IAAI,CAAuB;IACpC,oCAAoC;IAC3B,IAAI,CAAO;IACpB;sEACkE;IACzD,MAAM,CAAS;IAExB,YAAY,IAA0B,EAAE,OAAe,EAAE,IAAU,EAAE,SAAiB,IAAI,CAAC,IAAI;QAC7F,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;sDACkD;IAClD,MAAM,CAAC,IAAI,CAAC,KAAc,EAAE,IAAU;QACpC,IAAI,KAAK,YAAY,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9C,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAkC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxG,MAAM,KAAK,GAAG,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtG,MAAM,OAAO,GAAG,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,KAAK,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACjH,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAA4B,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvG,CAAC;CACF;AAED,MAAM,aAAa,GAAwB,IAAI,GAAG,CAChD,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAkC,CACrE,CAAC"}
|
package/dist/drive/drive.d.ts
CHANGED
|
@@ -49,8 +49,8 @@ export declare class Drive {
|
|
|
49
49
|
* A directory is empty only when the drive shows nothing in it, whatever
|
|
50
50
|
* its shelf holds: a placed folder's directory stands empty on the shelf
|
|
51
51
|
* while its children wait on the map, and removing it would remove them.
|
|
52
|
-
* 'not-empty', placing nothing, when a listing here shows an entry
|
|
53
|
-
*
|
|
52
|
+
* 'not-empty', placing nothing, when a listing here shows an entry;
|
|
53
|
+
* otherwise as `change`. The shelf's own names the host's removal
|
|
54
54
|
* meets for itself. */
|
|
55
55
|
vacate(path: readonly string[]): Promise<Touched | 'not-empty' | null>;
|
|
56
56
|
/** Whether a removal may happen at this address, placing nothing: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drive.d.ts","sourceRoot":"","sources":["../../src/drive/drive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"drive.d.ts","sourceRoot":"","sources":["../../src/drive/drive.ts"],"names":[],"mappings":"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"}
|
package/dist/drive/drive.js
CHANGED
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
* shows, and the one effect, a touch, that makes the shelf whole at an
|
|
4
4
|
* address before an ordinary operation runs there.
|
|
5
5
|
*
|
|
6
|
-
* Looking, listing and stat never place, except
|
|
7
|
-
* repository's `.git`,
|
|
6
|
+
* Looking, listing and stat never place, except inside an unplaced
|
|
7
|
+
* repository's `.git`, whose names only the shelf holds; `.git` itself the
|
|
8
|
+
* map answers as the repository's Git directory. Every operation that opens, reads,
|
|
8
9
|
* writes, renames, removes, changes or follows an address touches it first,
|
|
9
10
|
* and a creation touches the address it creates at, so its ancestors stand.
|
|
10
11
|
* After a touch the shelf speaks, and the host does what it would do on any
|
|
@@ -63,8 +64,8 @@ export class Drive {
|
|
|
63
64
|
* A directory is empty only when the drive shows nothing in it, whatever
|
|
64
65
|
* its shelf holds: a placed folder's directory stands empty on the shelf
|
|
65
66
|
* while its children wait on the map, and removing it would remove them.
|
|
66
|
-
* 'not-empty', placing nothing, when a listing here shows an entry
|
|
67
|
-
*
|
|
67
|
+
* 'not-empty', placing nothing, when a listing here shows an entry;
|
|
68
|
+
* otherwise as `change`. The shelf's own names the host's removal
|
|
68
69
|
* meets for itself. */
|
|
69
70
|
async vacate(path) {
|
|
70
71
|
const before = await this.judged(path);
|
|
@@ -232,7 +233,7 @@ export class Drive {
|
|
|
232
233
|
if (unit?.uuid !== at.entity.uuid)
|
|
233
234
|
return null;
|
|
234
235
|
const root = await rootOf(this.ports.roots, at.root);
|
|
235
|
-
if (root === null || !outsideRepositories(root.map, at.address))
|
|
236
|
+
if (root === null || !await outsideRepositories(root.map, at.address))
|
|
236
237
|
return null;
|
|
237
238
|
return { unit, root, entity: at.entity };
|
|
238
239
|
}
|
|
@@ -240,7 +241,7 @@ export class Drive {
|
|
|
240
241
|
* alone in its slot, so its leaving moves no sibling's address. */
|
|
241
242
|
async leavable(at) {
|
|
242
243
|
const found = await this.own(at);
|
|
243
|
-
return found !== null && aloneInSlot(found.root.map, found.entity) ? found : null;
|
|
244
|
+
return found !== null && await aloneInSlot(found.root.map, found.entity) ? found : null;
|
|
244
245
|
}
|
|
245
246
|
/** A file of its own and the content it lists, or null: a folder or a
|
|
246
247
|
* link comes down with none of its bytes, and the host changes it on the
|
|
@@ -292,9 +293,9 @@ export class Drive {
|
|
|
292
293
|
if (at.kind === 'shelf' && root.shelf.names(at.address) === null)
|
|
293
294
|
return null;
|
|
294
295
|
const address = [...at.address, name];
|
|
295
|
-
const top = at.address.length === 0 ? name : childAt(root.map, root.map.root().uuid, at.address[0])?.name;
|
|
296
|
-
if (top === undefined || !freeName(root.map, parent.uuid, name, unit.uuid) || root.shelf.has(address)
|
|
297
|
-
|| !outsideRepositories(root.map, at.address) || (root.uuid === this.ports.roots.home.uuid && placedAtHome(top, address.length > 1))
|
|
296
|
+
const top = at.address.length === 0 ? name : (await childAt(root.map, root.map.root().uuid, at.address[0]))?.name;
|
|
297
|
+
if (top === undefined || !await freeName(root.map, parent.uuid, name, unit.uuid) || root.shelf.has(address)
|
|
298
|
+
|| !await outsideRepositories(root.map, at.address) || (root.uuid === this.ports.roots.home.uuid && placedAtHome(top, address.length > 1))
|
|
298
299
|
|| addressOnly(this.ports.roots, to, { root: root.uuid, address }))
|
|
299
300
|
return null;
|
|
300
301
|
return { parentUUID: parent.uuid, name, address };
|
|
@@ -337,8 +338,9 @@ function unnamed(at) {
|
|
|
337
338
|
function noFolder(at) {
|
|
338
339
|
return at.kind === 'nowhere' ? 'nowhere' : at.kind === 'notdir' ? 'not-directory' : null;
|
|
339
340
|
}
|
|
340
|
-
/** Whether a listing shows anything beside the shelf's own names
|
|
341
|
+
/** Whether a listing shows anything beside the shelf's own names, which the
|
|
342
|
+
* host's own removal meets for itself. */
|
|
341
343
|
function shows(listed) {
|
|
342
|
-
return listed.kind === 'entries' &&
|
|
344
|
+
return listed.kind === 'entries' && listed.entries.length > 0;
|
|
343
345
|
}
|
|
344
346
|
//# sourceMappingURL=drive.js.map
|
package/dist/drive/drive.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drive.js","sourceRoot":"","sources":["../../src/drive/drive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"drive.js","sourceRoot":"","sources":["../../src/drive/drive.ts"],"names":[],"mappings":"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"}
|
package/dist/drive/listing.d.ts
CHANGED
|
@@ -1,22 +1,18 @@
|
|
|
1
1
|
import type { RootsPort, Unit } from './contracts.js';
|
|
2
2
|
import { type Entry } from './where.js';
|
|
3
3
|
export type Listing =
|
|
4
|
-
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* beside it. `doors` are names the map cannot describe, an unplaced
|
|
8
|
-
* repository's `.git`: listed by name, and a look at one places it.
|
|
9
|
-
* `hidden` are shelf names the host leaves out of its listing. */
|
|
4
|
+
/** A folder's listing, in the root and at the address named: `shelf`, the
|
|
5
|
+
* names standing on that shelf's directory, which the host describes;
|
|
6
|
+
* `entries`, what the map adds. Together they are the whole listing. */
|
|
10
7
|
{
|
|
11
8
|
readonly kind: 'entries';
|
|
12
9
|
readonly root: string;
|
|
13
10
|
readonly address: readonly string[];
|
|
11
|
+
readonly shelf: readonly string[];
|
|
14
12
|
readonly entries: readonly Entry[];
|
|
15
|
-
readonly doors: readonly string[];
|
|
16
|
-
readonly hidden: readonly string[];
|
|
17
|
-
readonly complete: boolean;
|
|
18
13
|
}
|
|
19
|
-
/**
|
|
14
|
+
/** An unplaced repository's `.git`, or a folder inside it: place
|
|
15
|
+
* `placing`, then list the shelf. */
|
|
20
16
|
| {
|
|
21
17
|
readonly kind: 'place-first';
|
|
22
18
|
readonly placing: readonly Unit[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listing.d.ts","sourceRoot":"","sources":["../../src/drive/listing.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAa,SAAS,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"listing.d.ts","sourceRoot":"","sources":["../../src/drive/listing.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAa,SAAS,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAuE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAE7G,MAAM,MAAM,OAAO;AACjB;;wEAEwE;AACtE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,KAAK,EAAE,CAAA;CAAE;AACjK;qCACqC;GACnC;IAAE,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEhC,wBAAsB,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAkCzF"}
|
package/dist/drive/listing.js
CHANGED
|
@@ -1,33 +1,40 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* What a program sees when it lists a folder: the
|
|
3
|
-
* them the map's children this computer has not placed,
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
2
|
+
* What a program sees when it lists a folder: the names standing on the
|
|
3
|
+
* shelf, and beside them the map's children this computer has not placed,
|
|
4
|
+
* each at its derived name. The drive judges every name it lists, the
|
|
5
|
+
* shelf's too, by the walk's one rule (`unshown`), so no host lists a name
|
|
6
|
+
* the drive has not judged and a name a look finds nowhere is never listed.
|
|
7
|
+
* A listing never hides a person's ground: a map child whose name the shelf
|
|
8
|
+
* holds is shadowed and left out. A reference whose target this person's
|
|
9
|
+
* graph holds is listed as a directory, since the walk shows that root
|
|
10
|
+
* inline where the reference stands; only listing inside it enters it. An
|
|
11
|
+
* unplaced repository lists its files from the map and its `.git` as its
|
|
12
|
+
* Git directory, so finding a repository needs no bytes; only listing
|
|
13
|
+
* inside `.git`, whose names the map does not hold, places it first.
|
|
12
14
|
*/
|
|
13
|
-
import { REPOSITORY_METADATA } from '../detection/classify.js';
|
|
14
15
|
import { CONTAINERS } from '../entities/types.js';
|
|
15
|
-
import {
|
|
16
|
-
import { active, derivedNames, entryOf, rootOf, where } from './where.js';
|
|
16
|
+
import { active, derivedNames, entryOf, gitDirectory, rootOf, unshown, where } from './where.js';
|
|
17
17
|
export async function listing(roots, path) {
|
|
18
|
+
const shown = (name) => !unshown(roots, [...path, name]);
|
|
18
19
|
const at = await where(roots, path);
|
|
19
20
|
switch (at.kind) {
|
|
20
21
|
case 'shelf': {
|
|
21
|
-
const hidden = hiddenAt(roots, at.root, at.address);
|
|
22
|
-
if (at.entity === null || !CONTAINERS.has(at.entity.type))
|
|
23
|
-
return { kind: 'entries', root: at.root, address: at.address, entries: [], doors: [], hidden, complete: false };
|
|
24
22
|
const root = await rootOf(roots, at.root);
|
|
25
23
|
if (root === null)
|
|
26
24
|
return { kind: 'nowhere' };
|
|
27
|
-
const
|
|
25
|
+
const standing = root.shelf.names(at.address);
|
|
26
|
+
if (standing === null)
|
|
27
|
+
return root.shelf.has(at.address) ? { kind: 'notdir' } : { kind: 'nowhere' };
|
|
28
|
+
const shelf = standing.filter(shown);
|
|
29
|
+
const listed = { kind: 'entries', root: at.root, address: at.address, shelf };
|
|
30
|
+
if (at.entity === null || !CONTAINERS.has(at.entity.type))
|
|
31
|
+
return { ...listed, entries: [] };
|
|
32
|
+
if (!await root.map.enter(at.entity.uuid))
|
|
33
|
+
return { kind: 'nowhere' };
|
|
34
|
+
const held = new Set(standing);
|
|
28
35
|
const unplaced = derivedNames(active(root.map.children(at.entity.uuid)))
|
|
29
|
-
.filter(([child, name]) => !root.map.placed(child.uuid) && !
|
|
30
|
-
return {
|
|
36
|
+
.filter(([child, name]) => !root.map.placed(child.uuid) && !held.has(name) && shown(name));
|
|
37
|
+
return { ...listed, entries: await entries(roots, unplaced) };
|
|
31
38
|
}
|
|
32
39
|
case 'listed': {
|
|
33
40
|
if (at.entry.kind !== 'directory')
|
|
@@ -35,11 +42,11 @@ export async function listing(roots, path) {
|
|
|
35
42
|
const root = await rootOf(roots, at.root);
|
|
36
43
|
if (root === null)
|
|
37
44
|
return { kind: 'nowhere' };
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
const
|
|
42
|
-
return { kind: 'entries', root: at.root, address: at.address, entries: await entries(roots, children),
|
|
45
|
+
if (!await root.map.enter(at.entry.uuid))
|
|
46
|
+
return { kind: 'nowhere' };
|
|
47
|
+
const children = derivedNames(active(root.map.children(at.entry.uuid))).filter(([, name]) => shown(name));
|
|
48
|
+
const git = at.entry.type === 'repo.git' ? [gitDirectory(at.entity)] : [];
|
|
49
|
+
return { kind: 'entries', root: at.root, address: at.address, shelf: [], entries: [...await entries(roots, children), ...git] };
|
|
43
50
|
}
|
|
44
51
|
case 'door':
|
|
45
52
|
return { kind: 'place-first', placing: at.placing };
|
|
@@ -49,12 +56,6 @@ export async function listing(roots, path) {
|
|
|
49
56
|
return at;
|
|
50
57
|
}
|
|
51
58
|
}
|
|
52
|
-
/** The names a listing leaves out at an address: this computer's own folder,
|
|
53
|
-
* in the home's computers folder. */
|
|
54
|
-
function hiddenAt(roots, root, address) {
|
|
55
|
-
const computers = root === roots.home.uuid && address.length === 1 && address[0] === FILES_FOLDER;
|
|
56
|
-
return computers && roots.computer !== null ? [roots.computer] : [];
|
|
57
|
-
}
|
|
58
59
|
/** Each child's entry at its name; a reference leading into a root this
|
|
59
60
|
* person holds is a directory, which that root's top alone can say. */
|
|
60
61
|
async function entries(roots, children) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listing.js","sourceRoot":"","sources":["../../src/drive/listing.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"listing.js","sourceRoot":"","sources":["../../src/drive/listing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The map, indexed:
|
|
3
|
-
* UUID, by parent and by slot in constant time, so no stat or
|
|
4
|
-
* walks. The host
|
|
5
|
-
*
|
|
6
|
-
*
|
|
2
|
+
* The map, indexed: what the drive has entered of one root's accepted graph,
|
|
3
|
+
* reachable by UUID, by parent and by slot in constant time, so no stat or
|
|
4
|
+
* listing ever walks. The host gives it the root's record, then each
|
|
5
|
+
* container's children whole as the drive enters it (`MapPort.enter`), and
|
|
6
|
+
* keeps what it holds current from each accepted record, in the cost of the
|
|
7
|
+
* change, never a re-fold. It holds every status: the drive lists the active
|
|
8
|
+
* ones.
|
|
9
|
+
*
|
|
10
|
+
* A container's children are all here or none are. Every entity the index
|
|
11
|
+
* holds, but the root, stands in a container it entered, so a record that
|
|
12
|
+
* takes an entity into a container never entered forgets it, and everything
|
|
13
|
+
* beneath, until the drive enters that container.
|
|
14
|
+
*
|
|
15
|
+
* Each record keeps its accepted version, but for an entered container whose
|
|
16
|
+
* version is its membership (`DERIVED_PAYLOAD`): that one shows the
|
|
17
|
+
* membership version of the children the index holds for it
|
|
18
|
+
* (`MapPort.enter`), derived when it is next read, so every read sees it and
|
|
19
|
+
* a run of changes derives it once. A container never entered shows its
|
|
20
|
+
* record's.
|
|
21
|
+
*
|
|
22
|
+
* The index also gathers every entity a change reaches, for the host to take
|
|
23
|
+
* (`takeTouched`): each entity it takes, enters or forgets, and each
|
|
24
|
+
* container one of them leaves or joins, the containers whose listing moved.
|
|
7
25
|
*
|
|
8
26
|
* Under each parent the index keeps one tree of names: each held name and who
|
|
9
27
|
* holds it, the sole holder itself or the holders of a shared slot. That one
|
|
@@ -15,28 +33,43 @@
|
|
|
15
33
|
* selected keeps its parentUUID without that parent being here.
|
|
16
34
|
*/
|
|
17
35
|
import type { CloudEntityRecord } from '../entities/cloud.js';
|
|
36
|
+
import { type Sha256Hex } from '../entities/types.js';
|
|
18
37
|
import type { MapEntity } from './contracts.js';
|
|
19
38
|
export declare class MapIndex {
|
|
20
39
|
#private;
|
|
21
|
-
constructor(rootUUID: string);
|
|
40
|
+
constructor(rootUUID: string, sha256Hex: Sha256Hex);
|
|
22
41
|
get rootUUID(): string;
|
|
23
42
|
/** How many entities the map holds, any status. */
|
|
24
43
|
get size(): number;
|
|
25
|
-
/**
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
*
|
|
29
|
-
* and
|
|
30
|
-
*
|
|
44
|
+
/** Takes a held container's children whole, so it answers for them from
|
|
45
|
+
* then on, and says whether it holds the container. A container entered
|
|
46
|
+
* already, or one the index does not hold, takes nothing. The children
|
|
47
|
+
* must be the container's at the index's own position: the host reads
|
|
48
|
+
* them and enters them with no record accepted between, since a record
|
|
49
|
+
* accepted in that gap is not in them and would be lost. */
|
|
50
|
+
enter(parentUUID: string, children: Iterable<CloudEntityRecord>): boolean;
|
|
51
|
+
/** Whether the drive has entered this container. */
|
|
52
|
+
entered(uuid: string): boolean;
|
|
53
|
+
/** Takes one accepted record: the root's replaces its row, an entity whose
|
|
54
|
+
* container is entered enters under its parent and slot, or moves to its
|
|
55
|
+
* new parent or name when either changed, with its fields replaced. An
|
|
56
|
+
* entity whose container is not entered is forgotten, with everything
|
|
57
|
+
* beneath it. The caller decides what belongs to this root; the index only
|
|
58
|
+
* keeps it. */
|
|
31
59
|
accept(record: CloudEntityRecord): void;
|
|
32
|
-
/** Forgets an entity and everything beneath it. */
|
|
60
|
+
/** Forgets an entity and everything beneath it, entered or not. */
|
|
33
61
|
remove(uuid: string): void;
|
|
34
62
|
has(uuid: string): boolean;
|
|
35
63
|
get(uuid: string): MapEntity | undefined;
|
|
36
|
-
/**
|
|
64
|
+
/** Where a held entity stands, deriving nothing; undefined when the map
|
|
65
|
+
* holds no row for it. */
|
|
66
|
+
parentOf(uuid: string): string | null | undefined;
|
|
67
|
+
/** The root, once accepted. */
|
|
37
68
|
root(): MapEntity;
|
|
38
69
|
children(parentUUID: string): readonly MapEntity[];
|
|
39
70
|
holders(parentUUID: string, name: string): readonly MapEntity[];
|
|
71
|
+
/** Every entity a change reached since the last take, and starts anew. */
|
|
72
|
+
takeTouched(): Set<string>;
|
|
40
73
|
}
|
|
41
74
|
/** The fields of a cloud record the drive reads. A reference's
|
|
42
75
|
* `payloadVersion` is the UUID of the root it leads to (`files/commands.ts`);
|