mindoodb 0.0.88 → 0.0.90

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.
Files changed (132) hide show
  1. package/README.md +1 -0
  2. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +4 -1
  3. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
  4. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +8 -0
  5. package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
  6. package/dist/browser/index.mjs +17 -0
  7. package/dist/core/BaseMindooDB.d.ts +14 -0
  8. package/dist/core/BaseMindooDB.d.ts.map +1 -1
  9. package/dist/core/BaseMindooDB.js +42 -0
  10. package/dist/core/BaseMindooDB.js.map +1 -1
  11. package/dist/core/BaseMindooTenant.d.ts +3 -0
  12. package/dist/core/BaseMindooTenant.d.ts.map +1 -1
  13. package/dist/core/BaseMindooTenant.js +28 -0
  14. package/dist/core/BaseMindooTenant.js.map +1 -1
  15. package/dist/core/BaseMindooTenantDirectory.d.ts +5 -0
  16. package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
  17. package/dist/core/BaseMindooTenantDirectory.js +29 -1
  18. package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
  19. package/dist/core/accesscontrol/directoryProjection.d.ts.map +1 -1
  20. package/dist/core/accesscontrol/directoryProjection.js +4 -0
  21. package/dist/core/accesscontrol/directoryProjection.js.map +1 -1
  22. package/dist/core/accesscontrol/types.d.ts +25 -3
  23. package/dist/core/accesscontrol/types.d.ts.map +1 -1
  24. package/dist/core/accesscontrol/types.js +27 -6
  25. package/dist/core/accesscontrol/types.js.map +1 -1
  26. package/dist/core/builtinDbInvariants.d.ts +5 -1
  27. package/dist/core/builtinDbInvariants.d.ts.map +1 -1
  28. package/dist/core/builtinDbInvariants.js +5 -1
  29. package/dist/core/builtinDbInvariants.js.map +1 -1
  30. package/dist/core/expressions/builder.d.ts +30 -0
  31. package/dist/core/expressions/builder.d.ts.map +1 -1
  32. package/dist/core/expressions/builder.js +42 -0
  33. package/dist/core/expressions/builder.js.map +1 -1
  34. package/dist/core/expressions/evaluateExpression.d.ts +10 -0
  35. package/dist/core/expressions/evaluateExpression.d.ts.map +1 -1
  36. package/dist/core/expressions/evaluateExpression.js +66 -1
  37. package/dist/core/expressions/evaluateExpression.js.map +1 -1
  38. package/dist/core/expressions/formulaSource.d.ts.map +1 -1
  39. package/dist/core/expressions/formulaSource.js +5 -0
  40. package/dist/core/expressions/formulaSource.js.map +1 -1
  41. package/dist/core/expressions/index.d.ts +1 -1
  42. package/dist/core/expressions/index.d.ts.map +1 -1
  43. package/dist/core/expressions/index.js +2 -1
  44. package/dist/core/expressions/index.js.map +1 -1
  45. package/dist/core/expressions/metadata.d.ts +2 -2
  46. package/dist/core/expressions/metadata.d.ts.map +1 -1
  47. package/dist/core/expressions/metadata.js +14 -0
  48. package/dist/core/expressions/metadata.js.map +1 -1
  49. package/dist/core/expressions/types.d.ts +1 -1
  50. package/dist/core/expressions/types.d.ts.map +1 -1
  51. package/dist/core/filing/FilingIndex.d.ts +209 -0
  52. package/dist/core/filing/FilingIndex.d.ts.map +1 -0
  53. package/dist/core/filing/FilingIndex.js +689 -0
  54. package/dist/core/filing/FilingIndex.js.map +1 -0
  55. package/dist/core/filing/MindooFilingStore.d.ts +200 -0
  56. package/dist/core/filing/MindooFilingStore.d.ts.map +1 -0
  57. package/dist/core/filing/MindooFilingStore.js +515 -0
  58. package/dist/core/filing/MindooFilingStore.js.map +1 -0
  59. package/dist/core/filing/index.d.ts +4 -0
  60. package/dist/core/filing/index.d.ts.map +1 -0
  61. package/dist/core/filing/index.js +22 -0
  62. package/dist/core/filing/index.js.map +1 -0
  63. package/dist/core/filing/refs.d.ts +56 -0
  64. package/dist/core/filing/refs.d.ts.map +1 -0
  65. package/dist/core/filing/refs.js +109 -0
  66. package/dist/core/filing/refs.js.map +1 -0
  67. package/dist/core/index.d.ts +3 -2
  68. package/dist/core/index.d.ts.map +1 -1
  69. package/dist/core/index.js +10 -5
  70. package/dist/core/index.js.map +1 -1
  71. package/dist/core/indexing/createViewDataProvider.d.ts +6 -0
  72. package/dist/core/indexing/createViewDataProvider.d.ts.map +1 -1
  73. package/dist/core/indexing/createViewDataProvider.js +26 -1
  74. package/dist/core/indexing/createViewDataProvider.js.map +1 -1
  75. package/dist/core/indexing/summary/DocumentSummaryStore.d.ts +43 -1
  76. package/dist/core/indexing/summary/DocumentSummaryStore.d.ts.map +1 -1
  77. package/dist/core/indexing/summary/DocumentSummaryStore.js +302 -2
  78. package/dist/core/indexing/summary/DocumentSummaryStore.js.map +1 -1
  79. package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.d.ts +33 -2
  80. package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.d.ts.map +1 -1
  81. package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.js +129 -26
  82. package/dist/core/indexing/summary/SummaryVirtualViewDataProvider.js.map +1 -1
  83. package/dist/core/indexing/summary/types.d.ts +40 -0
  84. package/dist/core/indexing/summary/types.d.ts.map +1 -1
  85. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.d.ts +27 -2
  86. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.d.ts.map +1 -1
  87. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js +106 -1
  88. package/dist/core/indexing/virtualviews/MindooDBVirtualViewDataProvider.js.map +1 -1
  89. package/dist/core/indexing/virtualviews/VirtualView.d.ts +70 -5
  90. package/dist/core/indexing/virtualviews/VirtualView.d.ts.map +1 -1
  91. package/dist/core/indexing/virtualviews/VirtualView.js +329 -28
  92. package/dist/core/indexing/virtualviews/VirtualView.js.map +1 -1
  93. package/dist/core/indexing/virtualviews/VirtualViewEntryData.d.ts +4 -22
  94. package/dist/core/indexing/virtualviews/VirtualViewEntryData.d.ts.map +1 -1
  95. package/dist/core/indexing/virtualviews/VirtualViewEntryData.js +175 -129
  96. package/dist/core/indexing/virtualviews/VirtualViewEntryData.js.map +1 -1
  97. package/dist/core/indexing/virtualviews/VirtualViewFactory.d.ts +28 -0
  98. package/dist/core/indexing/virtualviews/VirtualViewFactory.d.ts.map +1 -1
  99. package/dist/core/indexing/virtualviews/VirtualViewFactory.js +62 -0
  100. package/dist/core/indexing/virtualviews/VirtualViewFactory.js.map +1 -1
  101. package/dist/core/indexing/virtualviews/VirtualViewFilingJoin.d.ts +75 -0
  102. package/dist/core/indexing/virtualviews/VirtualViewFilingJoin.d.ts.map +1 -0
  103. package/dist/core/indexing/virtualviews/VirtualViewFilingJoin.js +163 -0
  104. package/dist/core/indexing/virtualviews/VirtualViewFilingJoin.js.map +1 -0
  105. package/dist/core/indexing/virtualviews/VirtualViewMergedNavigator.d.ts +112 -0
  106. package/dist/core/indexing/virtualviews/VirtualViewMergedNavigator.d.ts.map +1 -0
  107. package/dist/core/indexing/virtualviews/VirtualViewMergedNavigator.js +296 -0
  108. package/dist/core/indexing/virtualviews/VirtualViewMergedNavigator.js.map +1 -0
  109. package/dist/core/indexing/virtualviews/VirtualViewNavigator.d.ts +2 -0
  110. package/dist/core/indexing/virtualviews/VirtualViewNavigator.d.ts.map +1 -1
  111. package/dist/core/indexing/virtualviews/VirtualViewNavigator.js +10 -9
  112. package/dist/core/indexing/virtualviews/VirtualViewNavigator.js.map +1 -1
  113. package/dist/core/indexing/virtualviews/index.d.ts +2 -0
  114. package/dist/core/indexing/virtualviews/index.d.ts.map +1 -1
  115. package/dist/core/indexing/virtualviews/index.js +8 -1
  116. package/dist/core/indexing/virtualviews/index.js.map +1 -1
  117. package/dist/core/query/executeQuery.d.ts.map +1 -1
  118. package/dist/core/query/executeQuery.js +4 -0
  119. package/dist/core/query/executeQuery.js.map +1 -1
  120. package/dist/core/query/executeQueryInclude.d.ts.map +1 -1
  121. package/dist/core/query/executeQueryInclude.js +4 -0
  122. package/dist/core/query/executeQueryInclude.js.map +1 -1
  123. package/dist/core/query/queryView.d.ts.map +1 -1
  124. package/dist/core/query/queryView.js +4 -0
  125. package/dist/core/query/queryView.js.map +1 -1
  126. package/dist/core/types.d.ts +20 -0
  127. package/dist/core/types.d.ts.map +1 -1
  128. package/dist/core/types.js.map +1 -1
  129. package/dist/server/TenantManager.d.ts.map +1 -1
  130. package/dist/server/TenantManager.js +1 -1
  131. package/dist/server/TenantManager.js.map +1 -1
  132. package/package.json +1 -1
@@ -7,7 +7,7 @@ export type MindooDBAppViewTotalMode = "sum" | "average" | "none";
7
7
  /** Date fragments that can be extracted with `datePart()`. */
8
8
  export type MindooDBAppViewExpressionDatePart = "year" | "month" | "day" | "quarter";
9
9
  /** Low-level operation identifiers used by AST operation nodes. */
10
- export type MindooDBAppViewExpressionOperation = "docId" | "parentDocId" | "createdAt" | "lastModifiedAt" | "decryptionKeyId" | "isWitnessed" | "isAwaitingWitness" | "attachmentNames" | "attachmentLengths" | "attachmentCount" | "childCount" | "childCategoryCount" | "childDocumentCount" | "descendantCount" | "descendantCategoryCount" | "descendantDocumentCount" | "siblingCount" | "add" | "sub" | "mul" | "div" | "mod" | "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "and" | "or" | "not" | "concat" | "lower" | "upper" | "trim" | "left" | "right" | "number" | "string" | "boolean" | "contains" | "startsWith" | "endsWith" | "coalesce" | "exists" | "notExists" | "pathJoin" | "datePart";
10
+ export type MindooDBAppViewExpressionOperation = "docId" | "parentDocId" | "createdAt" | "lastModifiedAt" | "decryptionKeyId" | "isWitnessed" | "isAwaitingWitness" | "attachmentNames" | "attachmentLengths" | "attachmentCount" | "childCount" | "childCategoryCount" | "childDocumentCount" | "descendantCount" | "descendantCategoryCount" | "descendantDocumentCount" | "siblingCount" | "add" | "sub" | "mul" | "div" | "mod" | "eq" | "neq" | "gt" | "gte" | "lt" | "lte" | "and" | "or" | "not" | "concat" | "lower" | "upper" | "trim" | "left" | "right" | "number" | "string" | "boolean" | "contains" | "startsWith" | "endsWith" | "coalesce" | "exists" | "notExists" | "pathJoin" | "datePart" | "folders" | "inFolder" | "union" | "split";
11
11
  /**
12
12
  * Marker interface carried by every expression node.
13
13
  *
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/expressions/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/expressions/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,209 @@
1
+ import type { MindooDB } from "../types";
2
+ import type { CacheManager, ICacheable } from "../cache/CacheManager";
3
+ import type { LocalCacheStore } from "../cache/LocalCacheStore";
4
+ import { type FilingRefBase } from "./refs";
5
+ /** Document type of a filing sidecar (one per filed document and store). */
6
+ export declare const FILING_SIDECAR_TYPE = "$filing";
7
+ /** Document type of a folder definition. */
8
+ export declare const FILING_FOLDER_TYPE = "$folder";
9
+ /**
10
+ * Field-name prefix of folder memberships in a sidecar: `"f:<folderId>": filedAt`.
11
+ *
12
+ * Memberships are top-level fields rather than a nested `folders` map on
13
+ * purpose: when two replicas file the same document for the first time
14
+ * concurrently, each would create its own nested map object, and Automerge
15
+ * keeps only one of two concurrently assigned objects — the other replica's
16
+ * folders would be lost. Top-level keys of the (seeded, shared) document
17
+ * root merge key by key.
18
+ */
19
+ export declare const FILING_FOLDER_FIELD_PREFIX = "f:";
20
+ /** A folder of a filing store. */
21
+ export interface FilingFolder {
22
+ /** Stable folder id (the value `folders()` yields and categories use). */
23
+ folderId: string;
24
+ /** Display name. */
25
+ name: string;
26
+ /** Parent folder id for folder hierarchies, `null` for top-level folders. */
27
+ parentId: string | null;
28
+ /** Optional system role (e.g. `"inbox"`, `"sent"`), `null` for user folders. */
29
+ role: string | null;
30
+ /** Optional view design name the folder is shown with, `null` for the default. */
31
+ design: string | null;
32
+ }
33
+ /** Changed filed documents reported by {@link FilingIndex.changesSince}. */
34
+ export interface FilingIndexChanges {
35
+ /** Index generation the `seq` belongs to (changes when the index is rebuilt). */
36
+ generation: string;
37
+ /** Sequence number to pass to the next {@link FilingIndex.changesSince} call. */
38
+ seq: number;
39
+ /**
40
+ * Physical keys (`"<tenantId>/<dbId>/<docId>"`) of documents whose
41
+ * effective folder set changed since the given position, or `"all"` when
42
+ * the position is too old (or from another generation) for a delta —
43
+ * consumers then re-evaluate everything.
44
+ */
45
+ refs: ReadonlySet<string> | "all";
46
+ }
47
+ /**
48
+ * Membership index of one filing store in one database: which documents
49
+ * are filed in which folders, plus the store's folder definitions.
50
+ *
51
+ * It is maintained incrementally from the filing database's changefeed —
52
+ * restricted by id prefix to the store's own documents, so a shared team
53
+ * database with lots of other documents costs nothing extra — and shared by
54
+ * every view that joins the store (one index per database + store, like the
55
+ * summary buffer). Views ask {@link changesSince} which filed documents
56
+ * changed membership since their last update and re-evaluate exactly those.
57
+ *
58
+ * A document may have more than one sidecar (e.g. after a key rotation
59
+ * changed the deterministic sidecar id); its folders are the union.
60
+ */
61
+ export declare class FilingIndex implements ICacheable {
62
+ private readonly db;
63
+ private readonly store;
64
+ private readonly idPrefix;
65
+ private readonly base;
66
+ private generation;
67
+ private seq;
68
+ private cursor;
69
+ /**
70
+ * Deletions of filed documents in the filing database itself (physical
71
+ * key -> deleted at), read from the database's metadata changefeed. Feeds
72
+ * the automatic cleanup (MindooFilingStore). Not persisted: rebuilt from
73
+ * the (in-memory, cheap) metadata index once per session.
74
+ */
75
+ private deletedTargets;
76
+ private targetCursor;
77
+ private sidecars;
78
+ private sidecarsByRef;
79
+ private membersByFolder;
80
+ private folders;
81
+ private folderIdByDocId;
82
+ /** First seq the change log still covers completely. */
83
+ private logStartSeq;
84
+ private log;
85
+ private logRefCount;
86
+ /** Seq ranges a crashed previous run may have handed out (see DocumentSummaryStore). */
87
+ private lostSeqRanges;
88
+ private updatePromise;
89
+ private updatePending;
90
+ private listeners;
91
+ private cacheManager;
92
+ private cachePrefix;
93
+ private dirty;
94
+ private pendingSidecars;
95
+ private pendingFolders;
96
+ private pendingFolderDocIds;
97
+ private pendingLog;
98
+ /** deletedTargets changed since the last flush. */
99
+ private pendingDeletedTargets;
100
+ /** Whether this instance wrote the current snapshot (else the next flush writes one). */
101
+ private ownSnapshot;
102
+ private journalEntriesSinceSnapshot;
103
+ private nextJournalSegment;
104
+ private readonly journalWriterId;
105
+ private restored;
106
+ private restorePromise;
107
+ constructor(db: MindooDB, store: string, idPrefix: string);
108
+ /** Name of the filing store this index covers. */
109
+ getStoreName(): string;
110
+ /** The filing database. */
111
+ getDatabase(): MindooDB;
112
+ /** Physical identity of the filing database. */
113
+ getBase(): FilingRefBase;
114
+ /**
115
+ * Register a listener fired after an update changed the index (membership
116
+ * or folder definitions).
117
+ *
118
+ * @returns An unsubscribe function.
119
+ */
120
+ onDidChange(listener: () => void): () => void;
121
+ /**
122
+ * Bring the index up to date with the filing database. Concurrent calls
123
+ * share the running catch-up; a call arriving mid-run triggers exactly one
124
+ * follow-up run, so the returned promise always covers changes made
125
+ * before the call.
126
+ */
127
+ update(): Promise<void>;
128
+ private runUpdate;
129
+ private applySidecar;
130
+ /** Recompute whether `ref` is a raw member of `folderId` (any sidecar has the key). */
131
+ private refreshMembership;
132
+ /** @returns whether the folder definitions changed. */
133
+ private applyFolder;
134
+ private appendLog;
135
+ /**
136
+ * Documents whose effective folders changed after position
137
+ * (`generation`, `seq`). Pass `null` for "never synced" (yields `"all"`).
138
+ */
139
+ changesSince(position: {
140
+ generation: string;
141
+ seq: number;
142
+ } | null): FilingIndexChanges;
143
+ /** Current position of the index (for {@link changesSince}). */
144
+ getPosition(): {
145
+ generation: string;
146
+ seq: number;
147
+ };
148
+ /**
149
+ * Effective folder ids of a filed document (physical key), sorted.
150
+ * Folders whose definition was deleted are left out.
151
+ */
152
+ foldersOf(physRef: string): string[];
153
+ /** When the document was filed into `folderId` (earliest of its sidecars), or `null`. */
154
+ filedAt(physRef: string, folderId: string): number | null;
155
+ /** Physical keys of the documents in a folder (empty for deleted folders). */
156
+ membersOf(folderId: string): string[];
157
+ /** Physical keys of every document whose sidecars list `folderId`, also when the folder is deleted. */
158
+ allSidecarRefsInFolder(folderId: string): string[];
159
+ /**
160
+ * Filed documents of the filing database itself whose latest state is
161
+ * "deleted", with the deletion time (physical key -> epoch ms).
162
+ */
163
+ getDeletedTargets(): ReadonlyMap<string, number>;
164
+ /** Physical keys of every document with at least one membership key (also of deleted folders). */
165
+ allSidecarRefs(): string[];
166
+ /** Physical keys of every document filed in any (visible) folder. */
167
+ allFiledRefs(): string[];
168
+ /** Sidecar document ids of a filed document. */
169
+ sidecarIdsOf(physRef: string): string[];
170
+ /** Stored (relative) reference string of a physical key, as written into sidecars. */
171
+ formatRef(physRef: string): string;
172
+ /** A folder definition (also for deleted folders, see `deleted`), or `undefined`. */
173
+ getFolder(folderId: string): (FilingFolder & {
174
+ deleted: boolean;
175
+ }) | undefined;
176
+ /** All visible (not deleted) folder definitions. */
177
+ listFolders(): FilingFolder[];
178
+ /** Number of documents with at least one visible folder. */
179
+ getFiledCount(): number;
180
+ /**
181
+ * Attach cache persistence (recommended prefix: `<dbCachePrefix>/filing/<store tag>`).
182
+ * The persisted state is restored lazily on the first {@link update}.
183
+ */
184
+ attachCache(cacheManager: CacheManager, cachePrefix: string): void;
185
+ getCachePrefix(): string;
186
+ hasDirtyState(): boolean;
187
+ clearDirty(): void;
188
+ /** Drop dirty markers without flushing (the records are about to be deleted). */
189
+ discardDirtyState(): void;
190
+ /**
191
+ * Persist the index as snapshot + journal: normally only what changed
192
+ * since the last flush is appended as a small segment (`filingj`); the
193
+ * full snapshot (`filing`) is written when this instance has none yet
194
+ * (also right after a restore), when the journal outgrows 10 % of the
195
+ * index (min. 200 changes), and on forced flushes (close). Each instance
196
+ * writes its own segment chain; the snapshot names the chain that
197
+ * continues it, so several instances on one key never interleave. A failed
198
+ * write keeps the pending changes for the next flush.
199
+ */
200
+ flushToCache(store: LocalCacheStore, options?: {
201
+ force?: boolean;
202
+ }): Promise<number>;
203
+ private clearPending;
204
+ private ensureRestored;
205
+ private restoreFromCache;
206
+ }
207
+ /** Read the `f:<folderId> -> filedAt` membership fields of a sidecar. */
208
+ export declare function readFolderFields(data: Record<string, unknown>): Record<string, number>;
209
+ //# sourceMappingURL=FilingIndex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FilingIndex.d.ts","sourceRoot":"","sources":["../../../src/core/filing/FilingIndex.ts"],"names":[],"mappings":"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"}