memorio 4.2.2 → 4.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.
package/README.md CHANGED
@@ -78,9 +78,12 @@ npm i react react-dom
78
78
  ## **Setup**
79
79
 
80
80
  ```typescript
81
- // memorio/index.ts import once at your app entry point
81
+ // IMPORT ONCE AT YOUR APP ENTRY POINT
82
+
82
83
  import 'memorio'
84
+ ```
83
85
 
86
+ ```typescript
84
87
  // Memory
85
88
  state.user = { name: 'Sara', role: 'admin' }
86
89
  state.counter++
@@ -249,7 +252,7 @@ Manage your `Memorio` on `dphelper Manager Browser Extension*` environment, moni
249
252
 
250
253
  Memorio runs in every JavaScript environment, with automatic fallbacks.
251
254
 
252
- | | Browser | Node.js | Deno | Edge / Workers |
255
+ | Tool | Browser | Node.js | Deno | Edge / Workers |
253
256
  |---|---|---|---|---|
254
257
  | `state` | ✅ | ✅ | ✅ | ✅ |
255
258
  | `observer` / `useObserver` | ✅ | ✅ | ✅ | ✅ |
@@ -270,7 +273,6 @@ Memorio runs in every JavaScript environment, with automatic fallbacks.
270
273
  - No `eval`, no obfuscation, no hardcoded secrets
271
274
  - All inputs validated, keys sanitized, errors caught
272
275
  - Secure random session IDs via `crypto.randomUUID`
273
- - MIT license — full audit trail on [`SECURITY.md`](.github/SECURITY.md)
274
276
 
275
277
  ---
276
278
 
package/index.cjs CHANGED
@@ -1,3 +1,5 @@
1
+ "use strict";
2
+
1
3
  var e = Object.getOwnPropertyNames, o = (o, t) => function() {
2
4
  return o && (t = (0, o[e(o)[0]])(o = 0)), t;
3
5
  }, t = {}, r = o({
@@ -137,7 +139,7 @@ var e = Object.getOwnPropertyNames, o = (o, t) => function() {
137
139
  };
138
140
  });
139
141
  }
140
- }), w = {}, S = o({
142
+ }), w = {}, j = o({
141
143
  "functions/idb/crud/data.delete.ts"() {
142
144
  idb.data.delete = (e, o, t) => new Promise((r, s) => {
143
145
  const n = indexedDB.open(e);
@@ -165,7 +167,7 @@ var e = Object.getOwnPropertyNames, o = (o, t) => function() {
165
167
  }, s.onerror = () => r(s.error);
166
168
  });
167
169
  }
168
- }), j = {}, P = o({
170
+ }), S = {}, P = o({
169
171
  "functions/idb/crud/data.set.ts"() {
170
172
  idb.data.set = (e, o, t) => new Promise((r, s) => {
171
173
  const n = indexedDB.open(e);
@@ -315,10 +317,20 @@ function J(e) {
315
317
  };
316
318
  }
317
319
 
318
- var z = "4.2.2";
320
+ var z = "4.3.0";
319
321
 
320
322
  Object.defineProperty(globalThis, "memorio", {
321
- value: {},
323
+ value: {
324
+ setProps: () => {},
325
+ obj: {},
326
+ array: [],
327
+ dispatch: {
328
+ set: () => {},
329
+ listen: () => {},
330
+ remove: () => {}
331
+ },
332
+ setDescription: () => {}
333
+ },
322
334
  writable: !1,
323
335
  configurable: !0,
324
336
  enumerable: !1
@@ -326,6 +338,10 @@ Object.defineProperty(globalThis, "memorio", {
326
338
  value: {},
327
339
  writable: !0,
328
340
  enumerable: !1
341
+ }), Object.defineProperty(globalThis, "idbases", {
342
+ value: [],
343
+ writable: !0,
344
+ enumerable: !1
329
345
  }), Object.defineProperty(memorio, "version", {
330
346
  writable: !1,
331
347
  enumerable: !1,
@@ -398,13 +414,13 @@ Object.defineProperty(memorio, "_sessionId", {
398
414
  set: (e, o = {}) => {
399
415
  globalThis.dispatchEvent(new CustomEvent(String(e), o));
400
416
  },
401
- listen: (e, o = null, t = !1) => {
417
+ listen: (e, o = null) => {
402
418
  globalThis.observer?.list?.[e]?.length > 0 && globalThis.observer?.remove?.(e);
403
- const r = o ? e => {
419
+ const t = o ? e => {
404
420
  const t = e;
405
421
  return globalThis.queueMicrotask ? globalThis.queueMicrotask(() => o(t)) : Promise.resolve().then(() => o(t));
406
422
  } : void 0;
407
- r && globalThis.addEventListener(e, r), r && (globalThis.events[e] = r);
423
+ t && globalThis.addEventListener(e, t), t && (globalThis.events[e] = t);
408
424
  },
409
425
  remove: e => {
410
426
  const o = globalThis.events?.[e];
@@ -960,8 +976,8 @@ Object.defineProperty(globalThis, "cache", {
960
976
  l)), Promise.resolve().then(() => (u(), m)), Promise.resolve().then(() => (d(),
961
977
  b)), Promise.resolve().then(() => (f(), g)), Promise.resolve().then(() => (p(),
962
978
  h)), Promise.resolve().then(() => (y(), v)), Promise.resolve().then(() => (O(),
963
- T)), Promise.resolve().then(() => (S(), w)), Promise.resolve().then(() => (P(),
964
- j)), Promise.resolve().then(() => (E(), $)) ]), Object.preventExtensions(idb), Object.seal(idb),
979
+ T)), Promise.resolve().then(() => (j(), w)), Promise.resolve().then(() => (P(),
980
+ S)), Promise.resolve().then(() => (E(), $)) ]), Object.preventExtensions(idb), Object.seal(idb),
965
981
  Object.freeze(idb);
966
982
  })() : (Object.defineProperty(globalThis, "idb", {
967
983
  value: {
@@ -974,11 +990,6 @@ Object.defineProperty(globalThis, "cache", {
974
990
  writable: !0,
975
991
  configurable: !0,
976
992
  enumerable: !1
977
- }), Object.defineProperty(globalThis, "idbases", {
978
- value: [],
979
- writable: !0,
980
- configurable: !0,
981
- enumerable: !1
982
993
  }), console.warn("Memorio IDB: IndexedDB is not available in this environment. Use store or session for data persistence."));
983
994
 
984
995
  var ee = (globalThis.memorio || {}).globals;
package/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
-
2
1
  /// <reference path="./types/memorio.d.ts" />
3
2
  /// <reference path="./types/observer.d.ts" />
4
3
  /// <reference path="./types/useObserver.d.ts" />
package/index.js CHANGED
@@ -137,7 +137,7 @@ var e = Object.getOwnPropertyNames, o = (o, t) => function() {
137
137
  };
138
138
  });
139
139
  }
140
- }), w = {}, S = o({
140
+ }), w = {}, j = o({
141
141
  "functions/idb/crud/data.delete.ts"() {
142
142
  idb.data.delete = (e, o, t) => new Promise((r, s) => {
143
143
  const n = indexedDB.open(e);
@@ -165,7 +165,7 @@ var e = Object.getOwnPropertyNames, o = (o, t) => function() {
165
165
  }, s.onerror = () => r(s.error);
166
166
  });
167
167
  }
168
- }), j = {}, P = o({
168
+ }), S = {}, P = o({
169
169
  "functions/idb/crud/data.set.ts"() {
170
170
  idb.data.set = (e, o, t) => new Promise((r, s) => {
171
171
  const n = indexedDB.open(e);
@@ -315,10 +315,20 @@ function J(e) {
315
315
  };
316
316
  }
317
317
 
318
- var z = "4.2.2";
318
+ var z = "4.3.0";
319
319
 
320
320
  Object.defineProperty(globalThis, "memorio", {
321
- value: {},
321
+ value: {
322
+ setProps: () => {},
323
+ obj: {},
324
+ array: [],
325
+ dispatch: {
326
+ set: () => {},
327
+ listen: () => {},
328
+ remove: () => {}
329
+ },
330
+ setDescription: () => {}
331
+ },
322
332
  writable: !1,
323
333
  configurable: !0,
324
334
  enumerable: !1
@@ -326,6 +336,10 @@ Object.defineProperty(globalThis, "memorio", {
326
336
  value: {},
327
337
  writable: !0,
328
338
  enumerable: !1
339
+ }), Object.defineProperty(globalThis, "idbases", {
340
+ value: [],
341
+ writable: !0,
342
+ enumerable: !1
329
343
  }), Object.defineProperty(memorio, "version", {
330
344
  writable: !1,
331
345
  enumerable: !1,
@@ -398,13 +412,13 @@ Object.defineProperty(memorio, "_sessionId", {
398
412
  set: (e, o = {}) => {
399
413
  globalThis.dispatchEvent(new CustomEvent(String(e), o));
400
414
  },
401
- listen: (e, o = null, t = !1) => {
415
+ listen: (e, o = null) => {
402
416
  globalThis.observer?.list?.[e]?.length > 0 && globalThis.observer?.remove?.(e);
403
- const r = o ? e => {
417
+ const t = o ? e => {
404
418
  const t = e;
405
419
  return globalThis.queueMicrotask ? globalThis.queueMicrotask(() => o(t)) : Promise.resolve().then(() => o(t));
406
420
  } : void 0;
407
- r && globalThis.addEventListener(e, r), r && (globalThis.events[e] = r);
421
+ t && globalThis.addEventListener(e, t), t && (globalThis.events[e] = t);
408
422
  },
409
423
  remove: e => {
410
424
  const o = globalThis.events?.[e];
@@ -960,8 +974,8 @@ Object.defineProperty(globalThis, "cache", {
960
974
  l)), Promise.resolve().then(() => (u(), m)), Promise.resolve().then(() => (d(),
961
975
  b)), Promise.resolve().then(() => (f(), g)), Promise.resolve().then(() => (p(),
962
976
  h)), Promise.resolve().then(() => (y(), v)), Promise.resolve().then(() => (O(),
963
- T)), Promise.resolve().then(() => (S(), w)), Promise.resolve().then(() => (P(),
964
- j)), Promise.resolve().then(() => (E(), $)) ]), Object.preventExtensions(idb), Object.seal(idb),
977
+ T)), Promise.resolve().then(() => (j(), w)), Promise.resolve().then(() => (P(),
978
+ S)), Promise.resolve().then(() => (E(), $)) ]), Object.preventExtensions(idb), Object.seal(idb),
965
979
  Object.freeze(idb);
966
980
  })() : (Object.defineProperty(globalThis, "idb", {
967
981
  value: {
@@ -974,11 +988,6 @@ Object.defineProperty(globalThis, "cache", {
974
988
  writable: !0,
975
989
  configurable: !0,
976
990
  enumerable: !1
977
- }), Object.defineProperty(globalThis, "idbases", {
978
- value: [],
979
- writable: !0,
980
- configurable: !0,
981
- enumerable: !1
982
991
  }), console.warn("Memorio IDB: IndexedDB is not available in this environment. Use store or session for data persistence."));
983
992
 
984
993
  var ee = (globalThis.memorio || {}).globals;
@@ -44,9 +44,6 @@ All notable changes to this project will be documented in this file.
44
44
  | `memorio.isolate(name?)` | Shorthand alias for `createContext` |
45
45
 
46
46
  ### 🧪 Tests
47
-
48
- - Created `tests/jest/tests/observer.test.ts` — 12 tests (deprecation warning, input validation, `.list`, `.remove`, `.removeAll`)
49
- - Created `tests/jest/tests/useObserver.test.ts` — 12 tests (existence, edge cases, proxy/string deps, auto-discovery, cleanup)
50
47
  - **Result: 8 suites · 95 passed · 3 skipped · 0 failed**
51
48
 
52
49
  ### 🗑️ Dependency Changes
@@ -90,4 +87,4 @@ All notable changes to this project will be documented in this file.
90
87
 
91
88
  - Initial release of memorio (state, store, session, cache, idb)
92
89
  - Observer pattern (`observer`)
93
- - `useObserver` React hook
90
+ - `useObserver` React hook
@@ -112,7 +112,7 @@ When `deps` is omitted, useObserver automatically discovers all state properties
112
112
  useObserver(() => {
113
113
  // Automatically tracks state.user, state.items, state.counter
114
114
  console.debug(state.user.name, state.items.length, state.counter);
115
- });
115
+ },[]);
116
116
  ```
117
117
 
118
118
  Returns a cleanup function:
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "memorio",
3
3
  "codeName": "memorio",
4
- "version": "4.2.2",
4
+ "version": "4.3.0",
5
5
  "description": "Memorio, State + Observer, Store and iDB for an easy life - Cross-platform compatible",
6
6
  "main": "./index.cjs",
7
7
  "browser": "./index.cjs",
@@ -55,13 +55,8 @@
55
55
  "url": "https://dario.passariello.ca/",
56
56
  "email": "dariopassariello@gmail.com"
57
57
  },
58
- "peerDependenciesMeta": {
59
- "react": {
60
- "optional": true
61
- },
62
- "react-dom": {
63
- "optional": true
64
- }
58
+ "dependencies": {
59
+ "baseline-browser-mapping": "2.10.42"
65
60
  },
66
61
  "overrides": {
67
62
  "object-assign": "npm:@socketregistry/object-assign@^1"
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Environment capabilities
3
+ */
1
4
 
2
5
  interface _dispatch {
3
6
  set: (name: string, value?: any) => void
@@ -73,24 +76,6 @@ declare global {
73
76
  type arguments = unknown[]
74
77
  declare var arguments: unknown[]
75
78
 
76
- globalThis.memorio = globalThis.memorio || {
77
- setProps: () => { },
78
- obj: {},
79
- array: [],
80
- dispatch: {
81
- set: () => { },
82
- listen: () => { },
83
- remove: () => { }
84
- },
85
- setDescription: () => { }
86
- }
87
-
88
- // Initialize events if not exists
89
- globalThis.events = globalThis.events || {}
90
-
91
- // Initialize idbases if not exists
92
- globalThis.idbases = globalThis.idbases || []
93
-
94
79
  interface Window {
95
80
  [key: string]: any
96
81
  }
@@ -25,14 +25,14 @@ interface _useObserver {
25
25
  * @since memorio 1.0.6
26
26
  * @updated 2.5.0 - Added support for arrays and destructor
27
27
  */
28
- (func: Function, deps: any): (() => void)
28
+ (func: Function, deps: any): () => void
29
29
 
30
30
  }
31
31
 
32
- declare var useObserver: _useObserver | null
32
+ declare var useObserver: _useObserver
33
33
  type useObserver = _useObserver
34
34
 
35
35
  // Extend globalThis to include useObserver
36
36
  declare global {
37
- var useObserver: _useObserver | null | undefined
37
+ var useObserver: _useObserver
38
38
  }