@rlabs-inc/fsdb 1.0.0 → 1.0.1
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/dist/core/collection.d.ts +2 -0
- package/dist/core/collection.d.ts.map +1 -1
- package/dist/core/database.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.mjs +11 -1
- package/package.json +1 -1
|
@@ -59,6 +59,8 @@ export interface Collection<S extends SchemaDefinition> {
|
|
|
59
59
|
getStaleIds(): string[];
|
|
60
60
|
/** Manually set stale flag */
|
|
61
61
|
setStale(id: string, stale: boolean): void;
|
|
62
|
+
/** Set metadata (created, updated, stale) for a record - used by persistence layer */
|
|
63
|
+
setMetadata(id: string, created: number, updated: number, stale?: boolean): void;
|
|
62
64
|
/** Clear all data */
|
|
63
65
|
clear(): void;
|
|
64
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../src/core/collection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"collection.d.ts","sourceRoot":"","sources":["../../src/core/collection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AAUpH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAMtE,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IACrF,iCAAiC;IACjC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvB,+BAA+B;IAC/B,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvB,0BAA0B;IAC1B,aAAa,IAAI,IAAI,CAAA;IAErB,yBAAyB;IACzB,YAAY,IAAI,IAAI,CAAA;IAEpB,4BAA4B;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAE5B,yCAAyC;IACzC,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAA;IAEvF,0DAA0D;IAC1D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,GAAG,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAE1G,+BAA+B;IAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAA;IAExH,oDAAoD;IACpD,KAAK,IAAI,IAAI,CAAA;CACd;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,gBAAgB,EACnE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/C,oBAAoB,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,eAAe,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AAUpH,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAMtE,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IACrF,iCAAiC;IACjC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvB,+BAA+B;IAC/B,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvB,0BAA0B;IAC1B,aAAa,IAAI,IAAI,CAAA;IAErB,yBAAyB;IACzB,YAAY,IAAI,IAAI,CAAA;IAEpB,4BAA4B;IAC5B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAE5B,yCAAyC;IACzC,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAA;IAEvF,0DAA0D;IAC1D,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,YAAY,GAAG,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAE1G,+BAA+B;IAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,YAAY,GAAG,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAA;IAExH,oDAAoD;IACpD,KAAK,IAAI,IAAI,CAAA;CACd;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,gBAAgB,EACnE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/C,oBAAoB,CAAC,CAAC,CAAC,CAgRzB;AAMD,MAAM,WAAW,QAAQ;IACvB,oBAAoB;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAErB,gCAAgC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEzB,iCAAiC;IACjC,UAAU,CAAC,CAAC,SAAS,gBAAgB,EACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAC1C,oBAAoB,CAAC,CAAC,CAAC,CAAA;IAE1B,iCAAiC;IACjC,aAAa,CAAC,CAAC,SAAS,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IAE5F,gCAAgC;IAChC,eAAe,IAAI,MAAM,EAAE,CAAA;IAE3B,4BAA4B;IAC5B,KAAK,IAAI,IAAI,CAAA;CACd;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,eAAoB,GAAG,QAAQ,CA0DtE;AAGD,OAAO,EAAE,cAAc,IAAI,IAAI,EAAE,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1702,6 +1702,12 @@ function createCollection(name, options) {
|
|
|
1702
1702
|
staleArr[index] = stale;
|
|
1703
1703
|
metadata.stale.value = staleArr;
|
|
1704
1704
|
},
|
|
1705
|
+
setMetadata(id, created, updated, stale = false) {
|
|
1706
|
+
const index = registry.getIndex(id);
|
|
1707
|
+
if (index === -1)
|
|
1708
|
+
return;
|
|
1709
|
+
setMetadataAt(index, created, updated, stale);
|
|
1710
|
+
},
|
|
1705
1711
|
clear() {
|
|
1706
1712
|
registry.reset();
|
|
1707
1713
|
columns.reset();
|
|
@@ -2271,6 +2277,7 @@ function createPersistentCollection(name, options) {
|
|
|
2271
2277
|
isStale: baseCollection.isStale.bind(baseCollection),
|
|
2272
2278
|
getStaleIds: baseCollection.getStaleIds.bind(baseCollection),
|
|
2273
2279
|
setStale: baseCollection.setStale.bind(baseCollection),
|
|
2280
|
+
setMetadata: baseCollection.setMetadata.bind(baseCollection),
|
|
2274
2281
|
clear() {
|
|
2275
2282
|
baseCollection.clear();
|
|
2276
2283
|
embeddingManager.reset();
|
|
@@ -2281,7 +2288,10 @@ function createPersistentCollection(name, options) {
|
|
|
2281
2288
|
for (const { id, record } of loaded) {
|
|
2282
2289
|
const index = baseCollection.registry.allocate(id);
|
|
2283
2290
|
baseCollection.columns.setRecord(index, record);
|
|
2284
|
-
|
|
2291
|
+
const created = record.created ?? Date.now();
|
|
2292
|
+
const updated = record.updated ?? created;
|
|
2293
|
+
const stale = record.stale ?? false;
|
|
2294
|
+
baseCollection.setMetadata(id, created, updated, stale);
|
|
2285
2295
|
if (contentColumn) {
|
|
2286
2296
|
const content = record[contentColumn];
|
|
2287
2297
|
if (content && isContentStale(id, content)) {
|
package/dist/index.mjs
CHANGED
|
@@ -1611,6 +1611,12 @@ function createCollection(name, options) {
|
|
|
1611
1611
|
staleArr[index] = stale;
|
|
1612
1612
|
metadata.stale.value = staleArr;
|
|
1613
1613
|
},
|
|
1614
|
+
setMetadata(id, created, updated, stale = false) {
|
|
1615
|
+
const index = registry.getIndex(id);
|
|
1616
|
+
if (index === -1)
|
|
1617
|
+
return;
|
|
1618
|
+
setMetadataAt(index, created, updated, stale);
|
|
1619
|
+
},
|
|
1614
1620
|
clear() {
|
|
1615
1621
|
registry.reset();
|
|
1616
1622
|
columns.reset();
|
|
@@ -2180,6 +2186,7 @@ function createPersistentCollection(name, options) {
|
|
|
2180
2186
|
isStale: baseCollection.isStale.bind(baseCollection),
|
|
2181
2187
|
getStaleIds: baseCollection.getStaleIds.bind(baseCollection),
|
|
2182
2188
|
setStale: baseCollection.setStale.bind(baseCollection),
|
|
2189
|
+
setMetadata: baseCollection.setMetadata.bind(baseCollection),
|
|
2183
2190
|
clear() {
|
|
2184
2191
|
baseCollection.clear();
|
|
2185
2192
|
embeddingManager.reset();
|
|
@@ -2190,7 +2197,10 @@ function createPersistentCollection(name, options) {
|
|
|
2190
2197
|
for (const { id, record } of loaded) {
|
|
2191
2198
|
const index = baseCollection.registry.allocate(id);
|
|
2192
2199
|
baseCollection.columns.setRecord(index, record);
|
|
2193
|
-
|
|
2200
|
+
const created = record.created ?? Date.now();
|
|
2201
|
+
const updated = record.updated ?? created;
|
|
2202
|
+
const stale = record.stale ?? false;
|
|
2203
|
+
baseCollection.setMetadata(id, created, updated, stale);
|
|
2194
2204
|
if (contentColumn) {
|
|
2195
2205
|
const content = record[contentColumn];
|
|
2196
2206
|
if (content && isContentStale(id, content)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rlabs-inc/fsdb",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Fractal State Database - A reactive in memory database with markdown files persistence made with parallel arrays and fine-grained reactivity.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.mjs",
|