@alwatr/local-storage 8.0.0 → 8.0.2

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/main.js CHANGED
@@ -1,5 +1,5 @@
1
- /* 📦 @alwatr/local-storage v8.0.0 */
2
- import{createLogger as z}from"@alwatr/logger";class j{static version="8.0.0";key__;logger_;constructor(x){this.logger_=z(`local-storage-provider: ${x.name}, v: ${x.schemaVersion}`),this.logger_.logMethodArgs?.("constructor",{config:x}),this.key__=j.getKey(x),j.clearPreviousStorageVersions(x)}static getKey(x){return`${x.name}.v${x.schemaVersion}`}static clearPreviousStorageVersions(x){if(x.schemaVersion<1)return;for(let b=0;b<x.schemaVersion;b++){let q=j.getKey({name:x.name,schemaVersion:b});localStorage.removeItem(q)}}static has(x){let b=j.getKey(x);return localStorage.getItem(b)!==null}has(){return localStorage.getItem(this.key__)!==null}read(){let x=null;try{x=localStorage.getItem(this.key__)}catch(b){this.logger_.error("read","read_local_storage_error",{err:b})}if(!x)return this.logger_.logMethod?.("read//no_value"),null;try{let b=JSON.parse(x);return this.logger_.logMethodFull?.("read//value",void 0,{parsedValue:b}),b}catch(b){return this.logger_.error("read","read_parse_error",{err:b}),null}}write(x){this.logger_.logMethodArgs?.("write",{value:x});let b;try{b=JSON.stringify(x)}catch(q){throw this.logger_.error("write","write_stringify_error",{err:q}),Error("write_stringify_error")}try{localStorage.setItem(this.key__,b)}catch(q){this.logger_.error("write","write_local_storage_error",{err:q})}}remove(){localStorage.removeItem(this.key__)}}function E(x){return new j(x)}export{E as createLocalStorageProvider,j as LocalStorageProvider};
1
+ /* 📦 @alwatr/local-storage v8.0.2 */
2
+ import{createLogger as z}from"@alwatr/logger";class j{static version="8.0.2";key__;logger_;constructor(x){this.logger_=z(`local-storage-provider: ${x.name}, v: ${x.schemaVersion}`),this.logger_.logMethodArgs?.("constructor",{config:x}),this.key__=j.getKey(x),j.clearPreviousStorageVersions(x)}static getKey(x){return`${x.name}.v${x.schemaVersion}`}static clearPreviousStorageVersions(x){if(x.schemaVersion<1)return;for(let b=0;b<x.schemaVersion;b++){let q=j.getKey({name:x.name,schemaVersion:b});localStorage.removeItem(q)}}static has(x){let b=j.getKey(x);return localStorage.getItem(b)!==null}has(){return localStorage.getItem(this.key__)!==null}read(){let x=null;try{x=localStorage.getItem(this.key__)}catch(b){this.logger_.error("read","read_local_storage_error",{err:b})}if(!x)return this.logger_.logMethod?.("read//no_value"),null;try{let b=JSON.parse(x);return this.logger_.logMethodFull?.("read//value",void 0,{parsedValue:b}),b}catch(b){return this.logger_.error("read","read_parse_error",{err:b}),null}}write(x){this.logger_.logMethodArgs?.("write",{value:x});let b;try{b=JSON.stringify(x)}catch(q){throw this.logger_.error("write","write_stringify_error",{err:q}),Error("write_stringify_error")}try{localStorage.setItem(this.key__,b)}catch(q){this.logger_.error("write","write_local_storage_error",{err:q})}}remove(){localStorage.removeItem(this.key__)}}function E(x){return new j(x)}export{E as createLocalStorageProvider,j as LocalStorageProvider};
3
3
 
4
- //# debugId=4B65E5CEBC18851764756E2164756E21
4
+ //# debugId=1680470B0C199FF364756E2164756E21
5
5
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -6,6 +6,6 @@
6
6
  "import {LocalStorageProvider} from './local-storage.provider.js';\n\nimport type {LocalStorageProviderConfig} from './type.js';\n\n/**\n * Factory function to create a new LocalStorageProvider.\n *\n * @param config - The configuration for the provider.\n * @returns An instance of LocalStorageProvider.\n *\n * @example\n * ```typescript\n * const userSettings = createLocalStorageProvider({\n * name: 'user-settings',\n * schemaVersion: 1\n * });\n *\n * // Write new settings\n * userSettings.write({ theme: 'dark', notifications: false });\n *\n * // Read the current settings\n * const currentSettings = userSettings.read();\n * console.log(currentSettings); // { theme: 'dark', notifications: false }\n * ```\n */\nexport function createLocalStorageProvider<T extends JsonValue>(config: LocalStorageProviderConfig): LocalStorageProvider<T> {\n return new LocalStorageProvider<T>(config);\n}\n"
7
7
  ],
8
8
  "mappings": ";AAAA,uBAAQ,uBAuBD,MAAM,CAA0C,OAC9B,SAAU,QAEhB,MACE,QAEnB,WAAW,CAAC,EAAoC,CAC9C,KAAK,QAAU,EAAa,2BAA2B,EAAO,YAAY,EAAO,eAAe,EAChG,KAAK,QAAQ,gBAAgB,cAAe,CAAC,QAAM,CAAC,EACpD,KAAK,MAAQ,EAAqB,OAAO,CAAM,EAC/C,EAAqB,6BAA6B,CAAM,QAQ5C,OAAM,CAAC,EAA4C,CAC/D,MAAO,GAAG,EAAO,SAAS,EAAO,sBAMrB,6BAA4B,CAAC,EAA0C,CACnF,GAAI,EAAO,cAAgB,EAAG,OAG9B,QAAS,EAAI,EAAG,EAAI,EAAO,cAAe,IAAK,CAC7C,IAAM,EAAS,EAAqB,OAAO,CAAC,KAAM,EAAO,KAAM,cAAe,CAAC,CAAC,EAChF,aAAa,WAAW,CAAM,SAiBpB,IAAG,CAAC,EAA6C,CAC7D,IAAM,EAAM,EAAqB,OAAO,CAAM,EAC9C,OAAO,aAAa,QAAQ,CAAG,IAAM,KAgBhC,GAAG,EAAY,CACpB,OAAO,aAAa,QAAQ,KAAK,KAAK,IAAM,KAOvC,IAAI,EAAa,CACtB,IAAI,EAAuB,KAE3B,GAAI,CACF,EAAQ,aAAa,QAAQ,KAAK,KAAK,EAEzC,MAAO,EAAK,CACV,KAAK,QAAQ,MAAM,OAAQ,2BAA4B,CAAC,KAAG,CAAC,EAG9D,GAAI,CAAC,EAEH,OADA,KAAK,QAAQ,YAAY,gBAAgB,EAClC,KAGT,GAAI,CACF,IAAM,EAAc,KAAK,MAAM,CAAK,EAEpC,OADA,KAAK,QAAQ,gBAAgB,cAAe,OAAW,CAAC,aAAW,CAAC,EAC7D,EAET,MAAO,EAAK,CAEV,OADA,KAAK,QAAQ,MAAM,OAAQ,mBAAoB,CAAC,KAAG,CAAC,EAC7C,MAOJ,KAAK,CAAC,EAAgB,CAC3B,KAAK,QAAQ,gBAAgB,QAAS,CAAC,OAAK,CAAC,EAC7C,IAAI,EACJ,GAAI,CACF,EAAW,KAAK,UAAU,CAAK,EAEjC,MAAO,EAAK,CAEV,MADA,KAAK,QAAQ,MAAM,QAAS,wBAAyB,CAAC,KAAG,CAAC,EAChD,MAAM,uBAAuB,EAGzC,GAAI,CACF,aAAa,QAAQ,KAAK,MAAO,CAAQ,EAE3C,MAAO,EAAK,CACV,KAAK,QAAQ,MAAM,QAAS,4BAA6B,CAAC,KAAG,CAAC,GAO3D,MAAM,EAAS,CACpB,aAAa,WAAW,KAAK,KAAK,EAEtC,CC9HO,SAAS,CAA+C,CAAC,EAA6D,CAC3H,OAAO,IAAI,EAAwB,CAAM",
9
- "debugId": "4B65E5CEBC18851764756E2164756E21",
9
+ "debugId": "1680470B0C199FF364756E2164756E21",
10
10
  "names": []
11
11
  }
package/package.json CHANGED
@@ -1,25 +1,48 @@
1
1
  {
2
2
  "name": "@alwatr/local-storage",
3
+ "version": "8.0.2",
3
4
  "description": "A modern, simple, and robust solution for managing versioned JSON objects in the browser's `localStorage`. This package provides a clean, class-based API with a factory function to ensure your application's data persistence is safe, maintainable, and future-proof.",
4
- "version": "8.0.0",
5
+ "license": "MPL-2.0",
5
6
  "author": "S. Ali Mihandoost <ali.mihandoost@gmail.com>",
6
- "bugs": "https://github.com/Alwatr/nanolib/issues",
7
- "dependencies": {
8
- "@alwatr/logger": "7.0.0"
9
- },
10
- "devDependencies": {
11
- "@alwatr/nano-build": "7.0.0",
12
- "@alwatr/prettier-config": "7.0.0",
13
- "@alwatr/tsconfig-base": "7.0.0",
14
- "@alwatr/type-helper": "8.0.0",
15
- "typescript": "^5.9.3"
7
+ "type": "module",
8
+ "repository": {
9
+ "directory": "packages/local-storage",
10
+ "type": "git",
11
+ "url": "https://github.com/Alwatr/nanolib"
16
12
  },
13
+ "homepage": "https://github.com/Alwatr/nanolib/tree/next/packages/local-storage#readme",
14
+ "bugs": "https://github.com/Alwatr/nanolib/issues",
17
15
  "exports": {
18
16
  ".": {
19
17
  "types": "./dist/main.d.ts",
20
18
  "default": "./dist/main.js"
21
19
  }
22
20
  },
21
+ "sideEffects": false,
22
+ "dependencies": {
23
+ "@alwatr/logger": "7.0.2"
24
+ },
25
+ "devDependencies": {
26
+ "@alwatr/nano-build": "7.0.1",
27
+ "@alwatr/prettier-config": "7.0.1",
28
+ "@alwatr/tsconfig-base": "8.0.0",
29
+ "@alwatr/type-helper": "8.0.2",
30
+ "typescript": "^6.0.2"
31
+ },
32
+ "scripts": {
33
+ "b": "bun run build",
34
+ "build": "bun run build:ts && bun run build:es",
35
+ "build:es": "nano-build --preset=module src/main.ts",
36
+ "build:ts": "tsc --build",
37
+ "c": "bun run clean",
38
+ "cb": "bun run clean && bun run build",
39
+ "clean": "rm -rfv dist *.tsbuildinfo",
40
+ "d": "bun run build:es && bun",
41
+ "w": "bun run watch",
42
+ "watch": "bun run watch:ts & bun run watch:es",
43
+ "watch:es": "bun run build:es --watch",
44
+ "watch:ts": "bun run build:ts --watch --preserveWatchOutput"
45
+ },
23
46
  "files": [
24
47
  "**/*.{js,mjs,cjs,ts,map,d.ts,html,LEGAL.txt}",
25
48
  "README.md",
@@ -27,7 +50,9 @@
27
50
  "!demo/**/*",
28
51
  "!**/*.test.js"
29
52
  ],
30
- "homepage": "https://github.com/Alwatr/nanolib/tree/next/packages/local-storage#readme",
53
+ "publishConfig": {
54
+ "access": "public"
55
+ },
31
56
  "keywords": [
32
57
  "alwatr",
33
58
  "automatic migration",
@@ -46,32 +71,6 @@
46
71
  "utility",
47
72
  "versioning"
48
73
  ],
49
- "license": "MPL-2.0",
50
74
  "prettier": "@alwatr/prettier-config",
51
- "publishConfig": {
52
- "access": "public"
53
- },
54
- "repository": {
55
- "type": "git",
56
- "url": "https://github.com/Alwatr/nanolib",
57
- "directory": "packages/local-storage"
58
- },
59
- "scripts": {
60
- "b": "bun run build",
61
- "build": "bun run build:ts && bun run build:es",
62
- "build:es": "nano-build --preset=module src/main.ts",
63
- "build:ts": "tsc --build",
64
- "c": "bun run clean",
65
- "cb": "bun run clean && bun run build",
66
- "clean": "rm -rfv dist *.tsbuildinfo",
67
- "d": "bun run build:es && bun",
68
- "w": "bun run watch",
69
- "watch": "bun run watch:ts & bun run watch:es",
70
- "watch:es": "bun run build:es --watch",
71
- "watch:ts": "bun run build:ts --watch --preserveWatchOutput"
72
- },
73
- "sideEffects": false,
74
- "type": "module",
75
- "types": "./dist/main.d.ts",
76
- "gitHead": "056102a1c8a563bbae8a290b6830450f467322a3"
75
+ "gitHead": "95bb13efd0a5f485c6b09f1a911b99492017aed1"
77
76
  }