@plures/unum 0.2.3 → 0.3.0

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 (57) hide show
  1. package/dist/adapters/index.d.ts +3 -0
  2. package/dist/adapters/index.d.ts.map +1 -0
  3. package/dist/adapters/index.js +3 -0
  4. package/dist/adapters/index.js.map +1 -0
  5. package/dist/adapters/memory.d.ts +7 -0
  6. package/dist/adapters/memory.d.ts.map +1 -0
  7. package/dist/adapters/memory.js +116 -0
  8. package/dist/adapters/memory.js.map +1 -0
  9. package/dist/adapters/pluresdb.d.ts +14 -0
  10. package/dist/adapters/pluresdb.d.ts.map +1 -0
  11. package/dist/adapters/pluresdb.js +48 -0
  12. package/dist/adapters/pluresdb.js.map +1 -0
  13. package/dist/context.d.ts +29 -0
  14. package/dist/context.d.ts.map +1 -0
  15. package/dist/context.js +43 -0
  16. package/dist/context.js.map +1 -0
  17. package/dist/index.d.ts +8 -53
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +9 -196
  20. package/dist/index.js.map +1 -1
  21. package/dist/runes.d.ts +17 -161
  22. package/dist/runes.d.ts.map +1 -1
  23. package/dist/runes.js +121 -290
  24. package/dist/runes.js.map +1 -1
  25. package/dist/store.d.ts +10 -21
  26. package/dist/store.d.ts.map +1 -1
  27. package/dist/store.js +31 -135
  28. package/dist/store.js.map +1 -1
  29. package/dist/types.d.ts +69 -0
  30. package/dist/types.d.ts.map +1 -0
  31. package/dist/types.js +7 -0
  32. package/dist/types.js.map +1 -0
  33. package/package.json +54 -49
  34. package/dist/GunContext.d.ts +0 -17
  35. package/dist/GunContext.d.ts.map +0 -1
  36. package/dist/GunContext.js +0 -180
  37. package/dist/GunContext.js.map +0 -1
  38. package/dist/actions.d.ts +0 -39
  39. package/dist/actions.d.ts.map +0 -1
  40. package/dist/actions.js +0 -89
  41. package/dist/actions.js.map +0 -1
  42. package/dist/gunComponent.d.ts +0 -44
  43. package/dist/gunComponent.d.ts.map +0 -1
  44. package/dist/gunComponent.js +0 -205
  45. package/dist/gunComponent.js.map +0 -1
  46. package/dist/gunify.d.ts +0 -46
  47. package/dist/gunify.d.ts.map +0 -1
  48. package/dist/gunify.js +0 -294
  49. package/dist/gunify.js.map +0 -1
  50. package/dist/plures-helper.d.ts +0 -41
  51. package/dist/plures-helper.d.ts.map +0 -1
  52. package/dist/plures-helper.js +0 -114
  53. package/dist/plures-helper.js.map +0 -1
  54. package/dist/universalGunBind.d.ts +0 -219
  55. package/dist/universalGunBind.d.ts.map +0 -1
  56. package/dist/universalGunBind.js +0 -394
  57. package/dist/universalGunBind.js.map +0 -1
package/dist/runes.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"runes.js","sourceRoot":"","sources":["../src/runes.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runes.js","sourceRoot":"","sources":["../src/runes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,EAAkB;IAElB,IAAI,KAAK,GAAwB,EAAE,CAAC;IACpC,IAAI,IAAI,GAA4B,EAAE,CAAC;IACvC,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE3B,SAAS,MAAM;QACb,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC;gBAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAAC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;YAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,IAAI,EAAE,EAAE,CAAC;QACP,sBAAsB;QACtB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAS,EAAE,EAAE;YACrC,IAAI,IAAI,EAAE,CAAC;gBACT,KAAK,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;gBACpB,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;SAAM,CAAC;QACN,qBAAqB;QACrB,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAS,EAAE,GAAY,EAAE,EAAE;YACjD,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG;gBAAE,OAAO;YAChC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxC,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;YACpD,CAAC;YACD,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,MAAM,OAAO,GAAe;QAC1B,IAAI,KAAK,KAAK,OAAO,KAAU,CAAC,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAEhD,IAAI;YACF,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAChC,CAAC,CAAC,EAA2B,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,CACnE,CAAC;QACJ,CAAC;QAED,GAAG,CAAC,IAAS;YACX,IAAI,EAAE;gBAAE,OAAO;YACf,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1D,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;YACrC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1B,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;YACxD,MAAM,EAAE,CAAC;QACX,CAAC;QAED,MAAM,CAAC,WAAgB,EAAE,OAAa;YACpC,IAAI,EAAE,EAAE,CAAC;gBACP,MAAM,OAAO,GAAG,OAAO,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBACrF,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACzB,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;gBACjC,MAAM,EAAE,CAAC;YACX,CAAC;iBAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC9D,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;gBAChC,IAAI,CAAC,IAAI;oBAAE,OAAO;gBAClB,MAAM,OAAO,GAAG,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACxE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAClC,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,CAAC;gBAC7D,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QAED,MAAM,CAAC,MAAe;YACpB,IAAI,EAAE,EAAE,CAAC;gBACP,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACtB,KAAK,GAAG,EAAE,CAAC;YACb,CAAC;iBAAM,IAAI,MAAM,EAAE,CAAC;gBAClB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC;gBAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;YACD,MAAM,EAAE,CAAC;QACX,CAAC;QAED,SAAS,CAAC,EAAoB;YAC5B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACd,EAAE,CAAC,KAAK,CAAC,CAAC;YACV,OAAO,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,OAAO;YACL,KAAK,MAAM,CAAC,IAAI,MAAM;gBAAE,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAClB,IAAI,GAAG,EAAE,CAAC;QACZ,CAAC;KACF,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAe,EACf,SAAgC;IAEhC,IAAI,OAAO,GAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE;QAClC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IACH,OAAO;QACL,IAAI,KAAK,KAAK,OAAO,OAAO,CAAC,CAAC,CAAC;QAC/B,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC;KACvB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,MAAe,EAAE,KAAa;IACvD,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;QACvC,MAAM,GAAG,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IACH,OAAO;QACL,IAAI,KAAK,KAAK,OAAO,MAAM,CAAC,CAAC,CAAC;QAC9B,IAAI,KAAK,CAAC,CAAM;YACd,MAAM,GAAG,CAAC,CAAC;YACX,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC;KACvB,CAAC;AACJ,CAAC"}
package/dist/store.d.ts CHANGED
@@ -1,26 +1,15 @@
1
1
  /**
2
- * Creates a PluresStore with proper error handling
2
+ * PluresStore Svelte-compatible writable store backed by PluresDB.
3
3
  */
4
- export function createPluresStore(db: any, options?: {}): PluresStore;
5
- /**
6
- * A Svelte-compatible store for PluresDB data
7
- * This provides a reactive interface between PluresDB and Svelte
8
- */
9
- export class PluresStore {
10
- constructor(db: any, options?: {});
11
- db: any;
12
- store: import("svelte/store").Writable<any>;
13
- setupDbSubscription(): void;
14
- unsubscribe: any;
15
- ensureTextProperties(data: any): any;
16
- subscribe(run: any): import("svelte/store").Unsubscriber;
17
- set(value: any): void;
18
- update(updater: any): void;
4
+ export declare class PluresStore<T = any> {
5
+ private store;
6
+ private unsub;
7
+ private isUpdatingFromDb;
8
+ constructor(path: string, initialValue?: T);
9
+ subscribe(run: (value: T) => void): import("svelte/store").Unsubscriber;
10
+ set(value: T): void;
11
+ update(updater: (current: T) => T): void;
19
12
  destroy(): void;
20
13
  }
21
- export const GunStore: typeof PluresStore;
22
- /**
23
- * Creates a PluresStore with proper error handling
24
- */
25
- export function createGunStore(db: any, options?: {}): PluresStore;
14
+ export declare function createPluresStore<T = any>(path: string, initialValue?: T): PluresStore<T>;
26
15
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.js"],"names":[],"mappings":"AAiJA;;GAEG;AACH,sEAUC;AAvJD;;;GAGG;AACH;IACE,mCAIC;IAHC,QAAY;IACZ,4CAA2C;IAI7C,4BA4CC;IArBG,iBAiBE;IAON,qCAqBC;IAED,yDAEC;IAED,sBAiBC;IAED,2BAqBC;IAED,gBAQC;CACF;AAkBD,0CAAoC;AAhBpC;;GAEG;AACH,mEAUC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,qBAAa,WAAW,CAAC,CAAC,GAAG,GAAG;IAC9B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,gBAAgB,CAAS;gBAErB,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC;IAgB1C,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI;IAIjC,GAAG,CAAC,KAAK,EAAE,CAAC;IAOZ,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;IAUjC,OAAO;CAIR;AAED,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAEzF"}
package/dist/store.js CHANGED
@@ -1,154 +1,50 @@
1
1
  /**
2
- * unum - Store implementation for Svelte support
3
- *
4
- * This provides a writable store implementation for PluresDB data.
2
+ * PluresStore — Svelte-compatible writable store backed by PluresDB.
5
3
  */
6
4
  import { writable } from 'svelte/store';
7
- /**
8
- * A Svelte-compatible store for PluresDB data
9
- * This provides a reactive interface between PluresDB and Svelte
10
- */
5
+ import { getRoot } from './context.js';
11
6
  export class PluresStore {
12
- constructor(db, options = {}) {
13
- this.db = db;
14
- this.store = writable(options.initialValue);
15
- this.setupDbSubscription();
16
- }
17
- setupDbSubscription() {
18
- if (!this.db || typeof this.db.on !== 'function') {
19
- console.error('Invalid PluresDB instance provided to PluresStore');
20
- return;
21
- }
22
- try {
23
- // First, check if we can get a snapshot of the current data
24
- this.db.once((data) => {
25
- console.log('PluresDB.once initial data snapshot:', data);
26
- if (data) {
27
- // Ensure the data has text properties where needed
28
- this.ensureTextProperties(data);
29
- // Initialize the store with existing data
30
- this.store.set(data);
31
- }
32
- else {
33
- // If no data exists, set an empty object
34
- console.log('No initial data, setting empty object');
35
- this.store.set({});
36
- }
37
- });
38
- // Then subscribe to ongoing updates
39
- this.unsubscribe = this.db.on((data, key) => {
40
- try {
41
- console.log('PluresDB.on received data:', data, 'with key:', key);
42
- if (data === null) {
43
- console.log('Received null data, setting store to empty object');
44
- this.store.set({});
45
- }
46
- else {
47
- console.log('Setting store with data:', data);
48
- // Ensure the data has text properties where needed
49
- this.ensureTextProperties(data);
50
- // Simple, clean update - let Svelte handle the reactivity
51
- this.store.set(data);
52
- }
53
- }
54
- catch (error) {
55
- console.error('Error updating store with PluresDB data:', error);
56
- }
57
- });
58
- }
59
- catch (error) {
60
- console.error('Error setting up PluresDB subscription:', error);
61
- }
62
- }
63
- // Helper method to ensure text properties exist
64
- ensureTextProperties(data) {
65
- if (!data || typeof data !== 'object')
66
- return data;
67
- // Process all non-underscore properties
68
- Object.keys(data).forEach(key => {
69
- if (key === '_')
70
- return; // Skip PluresDB metadata
71
- const item = data[key];
72
- if (item && typeof item === 'object') {
73
- // If the item exists but has no text property, add one
74
- if (!item.text || typeof item.text !== 'string') {
75
- console.log(`Adding missing text property to item ${key}`);
76
- data[key] = {
77
- ...item,
78
- text: `Item ${key.substring(0, 6)}`
79
- };
80
- }
81
- }
7
+ store;
8
+ unsub = null;
9
+ isUpdatingFromDb = false;
10
+ constructor(path, initialValue) {
11
+ this.store = writable(initialValue);
12
+ const ref = getRoot().get(path);
13
+ // Subscribe to DB updates
14
+ this.unsub = ref.on((data) => {
15
+ if (data == null)
16
+ return;
17
+ this.isUpdatingFromDb = true;
18
+ this.store.set(data);
19
+ this.isUpdatingFromDb = false;
82
20
  });
83
- return data;
21
+ // Expose put for writes
22
+ this._ref = ref;
84
23
  }
85
24
  subscribe(run) {
86
25
  return this.store.subscribe(run);
87
26
  }
88
27
  set(value) {
89
- if (!this.db || typeof this.db.put !== 'function') {
90
- console.error('Cannot set data on invalid PluresDB instance');
91
- return;
92
- }
93
- try {
94
- console.log('PluresStore.set called with value:', value);
95
- // Update PluresDB - this will trigger the .on() callback above
96
- this.db.put(value);
97
- // Also update the store directly for immediate UI feedback
98
- this.store.set(value);
99
- }
100
- catch (error) {
101
- console.error('Error setting PluresDB data:', error);
28
+ this.store.set(value);
29
+ if (!this.isUpdatingFromDb) {
30
+ this._ref.put(value);
102
31
  }
103
32
  }
104
33
  update(updater) {
105
- if (!this.db || typeof this.db.put !== 'function') {
106
- console.error('Cannot update data on invalid PluresDB instance');
107
- return;
108
- }
109
- try {
110
- this.store.update((currentValue) => {
111
- if (currentValue === undefined) {
112
- console.warn('Updating undefined PluresDB value');
113
- const newValue = updater({});
114
- this.db.put(newValue);
115
- return newValue;
116
- }
117
- const newValue = updater(currentValue);
118
- this.db.put(newValue);
119
- return newValue;
120
- });
121
- }
122
- catch (error) {
123
- console.error('Error updating PluresDB data:', error);
124
- }
34
+ this.store.update((cur) => {
35
+ const next = updater(cur);
36
+ if (!this.isUpdatingFromDb) {
37
+ this._ref.put(next);
38
+ }
39
+ return next;
40
+ });
125
41
  }
126
42
  destroy() {
127
- if (this.unsubscribe) {
128
- try {
129
- this.unsubscribe();
130
- }
131
- catch (error) {
132
- console.error('Error unsubscribing from PluresDB:', error);
133
- }
134
- }
43
+ this.unsub?.();
44
+ this.unsub = null;
135
45
  }
136
46
  }
137
- /**
138
- * Creates a PluresStore with proper error handling
139
- */
140
- export function createPluresStore(db, options = {}) {
141
- if (!db) {
142
- console.error('No PluresDB instance provided to createPluresStore');
143
- // Return a dummy store that won't crash
144
- return new PluresStore({
145
- on: () => () => { },
146
- put: () => { },
147
- }, options);
148
- }
149
- return new PluresStore(db, options);
47
+ export function createPluresStore(path, initialValue) {
48
+ return new PluresStore(path, initialValue);
150
49
  }
151
- // Legacy exports for backward compatibility
152
- export const GunStore = PluresStore;
153
- export const createGunStore = createPluresStore;
154
50
  //# sourceMappingURL=store.js.map
package/dist/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAiB,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,MAAM,OAAO,WAAW;IACd,KAAK,CAAc;IACnB,KAAK,GAAuB,IAAI,CAAC;IACjC,gBAAgB,GAAG,KAAK,CAAC;IAEjC,YAAY,IAAY,EAAE,YAAgB;QACxC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAI,YAAiB,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEhC,0BAA0B;QAC1B,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,IAAS,EAAE,EAAE;YAChC,IAAI,IAAI,IAAI,IAAI;gBAAE,OAAO;YACzB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAS,CAAC,CAAC;YAC1B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,wBAAwB;QACvB,IAAY,CAAC,IAAI,GAAG,GAAG,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,GAAuB;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,KAAQ;QACV,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,MAAM,CAAC,OAA0B;QAC/B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,IAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAAU,IAAY,EAAE,YAAgB;IACvE,OAAO,IAAI,WAAW,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * unum — Reactive Svelte bindings for PluresDB
3
+ *
4
+ * Core types for the database adapter interface.
5
+ */
6
+ /** Callback for data subscriptions */
7
+ export type DataCallback = (data: any, key?: string) => void;
8
+ /** Unsubscribe function returned by on() */
9
+ export type Unsubscribe = () => void;
10
+ /**
11
+ * Chain node — the fluent API for navigating and mutating data.
12
+ * Mirrors PluresDB/Gun's chain API but is backend-agnostic.
13
+ */
14
+ export interface ChainNode {
15
+ /** Navigate to a child key */
16
+ get(key: string): ChainNode;
17
+ /** Write data at this path */
18
+ put(data: any, cb?: DataCallback): ChainNode;
19
+ /** Add an item to a collection (auto-generates key) */
20
+ set(data: any, cb?: DataCallback): ChainNode;
21
+ /** Subscribe to live updates */
22
+ on(cb: DataCallback): Unsubscribe;
23
+ /** Read once */
24
+ once(cb: DataCallback): void;
25
+ /** Iterate over collection children */
26
+ map(): ChainNode;
27
+ /** Unsubscribe all listeners at this path */
28
+ off(): void;
29
+ }
30
+ /**
31
+ * Database adapter — implement this to plug in any backend.
32
+ */
33
+ export interface DbAdapter {
34
+ /** Get the root chain node */
35
+ root(): ChainNode;
36
+ /** Optional cleanup */
37
+ destroy?(): void;
38
+ }
39
+ /**
40
+ * Options for pluresData()
41
+ */
42
+ export interface PluresDataOptions {
43
+ /** Initial/default data before first load */
44
+ defaults?: Record<string, any>;
45
+ }
46
+ /**
47
+ * Reactive data reference returned by pluresData()
48
+ */
49
+ export interface DataRef<T = Record<string, any>> {
50
+ /** Current state snapshot */
51
+ readonly state: T;
52
+ /** For collections: array of items. For single items: the item. */
53
+ readonly value: any;
54
+ /** Get all items as an array (collections only) */
55
+ list(): Array<T & {
56
+ id: string;
57
+ }>;
58
+ /** Add an item to the collection */
59
+ add(data: any): void;
60
+ /** Update an item or the current item */
61
+ update(idOrUpdater: string | Partial<T> | ((item: T) => Partial<T>), updater?: Partial<T> | ((item: T) => Partial<T>)): void;
62
+ /** Remove an item by ID */
63
+ remove(id?: string): void;
64
+ /** Svelte-compatible subscribe */
65
+ subscribe(cb: (state: T) => void): Unsubscribe;
66
+ /** Cleanup subscriptions */
67
+ destroy(): void;
68
+ }
69
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sCAAsC;AACtC,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAE7D,4CAA4C;AAC5C,MAAM,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC;AAErC;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,8BAA8B;IAC9B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,8BAA8B;IAC9B,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAC7C,uDAAuD;IACvD,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAC7C,gCAAgC;IAChC,EAAE,CAAC,EAAE,EAAE,YAAY,GAAG,WAAW,CAAC;IAClC,gBAAgB;IAChB,IAAI,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,uCAAuC;IACvC,GAAG,IAAI,SAAS,CAAC;IACjB,6CAA6C;IAC7C,GAAG,IAAI,IAAI,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,8BAA8B;IAC9B,IAAI,IAAI,SAAS,CAAC;IAClB,uBAAuB;IACvB,OAAO,CAAC,IAAI,IAAI,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC9C,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,mEAAmE;IACnE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;IACpB,mDAAmD;IACnD,IAAI,IAAI,KAAK,CAAC,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,oCAAoC;IACpC,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IACrB,yCAAyC;IACzC,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC7H,2BAA2B;IAC3B,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,kCAAkC;IAClC,SAAS,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,WAAW,CAAC;IAC/C,4BAA4B;IAC5B,OAAO,IAAI,IAAI,CAAC;CACjB"}
package/dist/types.js ADDED
@@ -0,0 +1,7 @@
1
+ /**
2
+ * unum — Reactive Svelte bindings for PluresDB
3
+ *
4
+ * Core types for the database adapter interface.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
package/package.json CHANGED
@@ -1,49 +1,54 @@
1
- {
2
- "name": "@plures/unum",
3
- "version": "0.2.3",
4
- "description": "Modern Svelte bindings for PluresDB (pluresdb npm package) with Svelte 4 and 5 compatibility",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "files": [
9
- "dist",
10
- "LICENSE.md"
11
- ],
12
- "scripts": {
13
- "build": "tsc",
14
- "test": "vitest run",
15
- "test:watch": "vitest",
16
- "test:coverage": "vitest run --coverage",
17
- "test:prepublish": "node scripts/test-prepublish.js",
18
- "lint": "eslint src/**/*.js",
19
- "prepublishOnly": "npm run test && npm run build",
20
- "publish:npm": "npm run prepublishOnly && npm publish --access public"
21
- },
22
- "keywords": [
23
- "svelte",
24
- "svelte5",
25
- "reactive",
26
- "store",
27
- "runes",
28
- "database",
29
- "decentralized",
30
- "pluresdb",
31
- "p2p"
32
- ],
33
- "author": "Oasis Team",
34
- "license": "MIT",
35
- "repository": {
36
- "type": "git",
37
- "url": "https://github.com/plures/unum"
38
- },
39
- "peerDependencies": {
40
- "svelte": "^4.0.0 || ^5.0.0"
41
- },
42
- "devDependencies": {
43
- "@vitest/coverage-v8": "^1.0.0",
44
- "eslint": "^8.0.0",
45
- "jsdom": "^24.0.0",
46
- "typescript": "^5.8.2",
47
- "vitest": "^1.0.0"
48
- }
49
- }
1
+ {
2
+ "name": "@plures/unum",
3
+ "version": "0.3.0",
4
+ "description": "Reactive Svelte bindings for PluresDB backend-agnostic, TypeScript-first",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./adapters": {
14
+ "types": "./dist/adapters/index.d.ts",
15
+ "import": "./dist/adapters/index.js"
16
+ }
17
+ },
18
+ "files": [
19
+ "dist",
20
+ "LICENSE.md"
21
+ ],
22
+ "scripts": {
23
+ "build": "tsc",
24
+ "test": "vitest run",
25
+ "test:watch": "vitest",
26
+ "prepublishOnly": "npm run build"
27
+ },
28
+ "keywords": [
29
+ "svelte",
30
+ "svelte5",
31
+ "reactive",
32
+ "store",
33
+ "runes",
34
+ "pluresdb",
35
+ "database",
36
+ "p2p",
37
+ "typescript"
38
+ ],
39
+ "author": "Oasis Team",
40
+ "license": "MIT",
41
+ "repository": {
42
+ "type": "git",
43
+ "url": "https://github.com/plures/unum"
44
+ },
45
+ "peerDependencies": {
46
+ "svelte": "^4.0.0 || ^5.0.0"
47
+ },
48
+ "devDependencies": {
49
+ "jsdom": "^29.0.0",
50
+ "svelte": "^5.0.0",
51
+ "typescript": "^5.8.2",
52
+ "vitest": "^1.0.0"
53
+ }
54
+ }
@@ -1,17 +0,0 @@
1
- /**
2
- * Initialize PluresDB instance if not already done
3
- * Only runs in the browser
4
- */
5
- export function initializePlures(): () => void;
6
- export const todosRef: import("svelte/store").Readable<any>;
7
- export const messagesRef: import("svelte/store").Readable<any>;
8
- export const userProfileRef: import("svelte/store").Readable<any>;
9
- export const plures: import("svelte/store").Writable<any>;
10
- export const db: import("svelte/store").Writable<any>;
11
- export const gun: import("svelte/store").Writable<any>;
12
- /**
13
- * Initialize PluresDB instance if not already done
14
- * Only runs in the browser
15
- */
16
- export function initializeGun(): () => void;
17
- //# sourceMappingURL=GunContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GunContext.d.ts","sourceRoot":"","sources":["../src/GunContext.js"],"names":[],"mappings":"AAiFA;;;GAGG;AACH,+CA2GC;AA/KD,4DAA2E;AAC3E,+DAAiF;AACjF,kEAAuF;AAgLvF,0DAA8B;AAC9B,sDAA0B;AAG1B,uDAA2B;AAtH3B;;;GAGG;AACH,4CA2GC"}