@xyo-network/previous-hash-store-storage 7.0.4 → 7.0.6

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
@@ -1,49 +1,3 @@
1
- [![logo][]](https://xyo.network)
2
-
3
1
  # @xyo-network/previous-hash-store-storage
4
2
 
5
- [![npm][npm-badge]][npm-link]
6
- [![license][license-badge]][license-link]
7
-
8
- > Primary SDK for using XYO Protocol 2.0
9
-
10
- ## Install
11
-
12
- Using npm:
13
-
14
- ```sh
15
- npm install {{name}}
16
- ```
17
-
18
- Using yarn:
19
-
20
- ```sh
21
- yarn add {{name}}
22
- ```
23
-
24
- Using pnpm:
25
-
26
- ```sh
27
- pnpm add {{name}}
28
- ```
29
-
30
- Using bun:
31
-
32
- ```sh
33
- bun add {{name}}
34
- ```
35
-
36
-
37
- ## License
38
-
39
- See the [LICENSE](LICENSE) file for license rights and limitations (LGPL-3.0-only).
40
-
41
- ## Credits
42
-
43
- [Made with 🔥 and ❄️ by XYO Foundation](https://xyo.network)
44
-
45
- [npm-badge]: https://img.shields.io/npm/v/@xyo-network/previous-hash-store-storage.svg
46
- [npm-link]: https://www.npmjs.com/package/@xyo-network/previous-hash-store-storage
47
- [license-badge]: https://img.shields.io/npm/l/@xyo-network/previous-hash-store-storage.svg
48
- [license-link]: https://github.com/xylabs/sdk-js/blob/main/LICENSE
49
- [logo]: https://cdn.xy.company/img/brand/XYO_full_colored.png
3
+ Deprecated compatibility stub. Use `@xyo-network/sdk-protocol/previous-hash-store-storage` instead.
@@ -1,3 +1,6 @@
1
- export * from './NamespacedStorage.ts';
2
- export * from './StoragePreviousHashStore.ts';
1
+ /**
2
+ * @deprecated Use `@xyo-network/sdk-protocol/previous-hash-store-storage` instead.
3
+ * `@xyo-network/previous-hash-store-storage` is a backward-compatibility re-export stub.
4
+ */
5
+ export * from '@xyo-network/sdk-protocol/previous-hash-store-storage';
3
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA;AACtC,cAAc,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,uDAAuD,CAAA"}
@@ -1,104 +1,3 @@
1
- // src/NamespacedStorage.ts
2
- var InMemoryBackend = class {
3
- data = /* @__PURE__ */ new Map();
4
- get(key) {
5
- return this.data.get(key) ?? null;
6
- }
7
- remove(key) {
8
- this.data.delete(key);
9
- }
10
- set(key, value) {
11
- this.data.set(key, value);
12
- }
13
- };
14
- var WebStorageBackend = class {
15
- storage;
16
- constructor(storage) {
17
- this.storage = storage;
18
- }
19
- get(key) {
20
- return this.storage.getItem(key);
21
- }
22
- remove(key) {
23
- this.storage.removeItem(key);
24
- }
25
- set(key, value) {
26
- this.storage.setItem(key, value);
27
- }
28
- };
29
- var pageBackend = new InMemoryBackend();
30
- var localBackend;
31
- var sessionBackend;
32
- function getBackend(area) {
33
- if (area === "page") return pageBackend;
34
- const g = globalThis;
35
- if (area === "local") {
36
- if (localBackend) return localBackend;
37
- localBackend = g.localStorage ? new WebStorageBackend(g.localStorage) : new InMemoryBackend();
38
- return localBackend;
39
- }
40
- if (sessionBackend) return sessionBackend;
41
- sessionBackend = g.sessionStorage ? new WebStorageBackend(g.sessionStorage) : new InMemoryBackend();
42
- return sessionBackend;
43
- }
44
- var NamespacedStorage = class {
45
- backend;
46
- prefix;
47
- constructor(area, namespace) {
48
- this.backend = getBackend(area);
49
- this.prefix = `${namespace}.`;
50
- }
51
- get(key) {
52
- const raw = this.backend.get(this.prefix + key);
53
- if (raw === null) return void 0;
54
- try {
55
- return JSON.parse(raw);
56
- } catch {
57
- return void 0;
58
- }
59
- }
60
- remove(key) {
61
- this.backend.remove(this.prefix + key);
62
- }
63
- set(key, value) {
64
- this.backend.set(this.prefix + key, JSON.stringify(value));
65
- }
66
- };
67
-
68
- // src/StoragePreviousHashStore.ts
69
- var StoragePreviousHashStore = class _StoragePreviousHashStore {
70
- static DefaultNamespace = "xyo-previous-hash-store";
71
- static DefaultStorageType = "local";
72
- _namespace = _StoragePreviousHashStore.DefaultNamespace;
73
- _storage;
74
- _type = _StoragePreviousHashStore.DefaultStorageType;
75
- constructor(opts) {
76
- if (typeof opts?.namespace === "string") this._namespace = opts.namespace;
77
- if (opts?.type) this._type = opts.type;
78
- this._storage = new NamespacedStorage(this.type, this.namespace);
79
- }
80
- get storage() {
81
- this._storage ??= new NamespacedStorage(this.type, this.namespace);
82
- return this._storage;
83
- }
84
- get namespace() {
85
- return this._namespace;
86
- }
87
- get type() {
88
- return this._type;
89
- }
90
- async getItem(address) {
91
- return this.storage.get(address) ?? null;
92
- }
93
- async removeItem(address) {
94
- this.storage.remove(address);
95
- }
96
- async setItem(address, previousHash) {
97
- this.storage.set(address, previousHash);
98
- }
99
- };
100
- export {
101
- NamespacedStorage,
102
- StoragePreviousHashStore
103
- };
1
+ // src/index.ts
2
+ export * from "@xyo-network/sdk-protocol/previous-hash-store-storage";
104
3
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/NamespacedStorage.ts", "../../src/StoragePreviousHashStore.ts"],
4
- "sourcesContent": ["export type StorageArea = 'local' | 'session' | 'page'\n\ninterface SyncStorageBackend {\n get(key: string): string | null\n remove(key: string): void\n set(key: string, value: string): void\n}\n\nclass InMemoryBackend implements SyncStorageBackend {\n private readonly data = new Map<string, string>()\n get(key: string): string | null {\n return this.data.get(key) ?? null\n }\n\n remove(key: string): void {\n this.data.delete(key)\n }\n\n set(key: string, value: string): void {\n this.data.set(key, value)\n }\n}\n\ninterface WebStorageLike {\n getItem(key: string): string | null\n removeItem(key: string): void\n setItem(key: string, value: string): void\n}\n\nclass WebStorageBackend implements SyncStorageBackend {\n private readonly storage: WebStorageLike\n constructor(storage: WebStorageLike) {\n this.storage = storage\n }\n\n get(key: string): string | null {\n return this.storage.getItem(key)\n }\n\n remove(key: string): void {\n this.storage.removeItem(key)\n }\n\n set(key: string, value: string): void {\n this.storage.setItem(key, value)\n }\n}\n\nconst pageBackend = new InMemoryBackend()\nlet localBackend: SyncStorageBackend | undefined\nlet sessionBackend: SyncStorageBackend | undefined\n\nfunction getBackend(area: StorageArea): SyncStorageBackend {\n if (area === 'page') return pageBackend\n const g = globalThis as unknown as { localStorage?: WebStorageLike; sessionStorage?: WebStorageLike }\n if (area === 'local') {\n if (localBackend) return localBackend\n localBackend = g.localStorage ? new WebStorageBackend(g.localStorage) : new InMemoryBackend()\n return localBackend\n }\n if (sessionBackend) return sessionBackend\n sessionBackend = g.sessionStorage ? new WebStorageBackend(g.sessionStorage) : new InMemoryBackend()\n return sessionBackend\n}\n\nexport class NamespacedStorage<T> {\n private readonly backend: SyncStorageBackend\n private readonly prefix: string\n\n constructor(area: StorageArea, namespace: string) {\n this.backend = getBackend(area)\n this.prefix = `${namespace}.`\n }\n\n get(key: string): T | undefined {\n const raw = this.backend.get(this.prefix + key)\n if (raw === null) return undefined\n try {\n return JSON.parse(raw) as T\n } catch {\n return undefined\n }\n }\n\n remove(key: string): void {\n this.backend.remove(this.prefix + key)\n }\n\n set(key: string, value: T): void {\n this.backend.set(this.prefix + key, JSON.stringify(value))\n }\n}\n", "import type { Hash } from '@xylabs/sdk'\nimport type { XyoAddress } from '@xyo-network/address'\nimport type { PreviousHashStore } from '@xyo-network/previous-hash-store-model'\n\nimport type { StorageArea } from './NamespacedStorage.ts'\nimport { NamespacedStorage } from './NamespacedStorage.ts'\n\nexport type Storage = StorageArea\n\nexport interface StoragePreviousHashOpts {\n namespace?: string\n type?: Storage\n}\n\nexport class StoragePreviousHashStore implements PreviousHashStore {\n static readonly DefaultNamespace = 'xyo-previous-hash-store'\n static readonly DefaultStorageType: Storage = 'local'\n\n private _namespace = StoragePreviousHashStore.DefaultNamespace\n private _storage: NamespacedStorage<Hash> | undefined\n private _type: Storage = StoragePreviousHashStore.DefaultStorageType\n\n constructor(opts?: StoragePreviousHashOpts) {\n if (typeof opts?.namespace === 'string') this._namespace = opts.namespace\n if (opts?.type) this._type = opts.type\n this._storage = new NamespacedStorage<Hash>(this.type, this.namespace)\n }\n\n private get storage(): NamespacedStorage<Hash> {\n this._storage ??= new NamespacedStorage<Hash>(this.type, this.namespace)\n return this._storage\n }\n\n get namespace() {\n return this._namespace\n }\n\n get type(): Storage {\n return this._type\n }\n\n async getItem(address: XyoAddress): Promise<Hash | null> {\n return this.storage.get(address) ?? null\n }\n\n async removeItem(address: XyoAddress): Promise<void> {\n this.storage.remove(address)\n }\n\n async setItem(address: XyoAddress, previousHash: Hash): Promise<void> {\n this.storage.set(address, previousHash)\n }\n}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../src/index.ts"],
4
+ "sourcesContent": ["/**\n * @deprecated Use `@xyo-network/sdk-protocol/previous-hash-store-storage` instead.\n * `@xyo-network/previous-hash-store-storage` is a backward-compatibility re-export stub.\n */\nexport * from '@xyo-network/sdk-protocol/previous-hash-store-storage'\n"],
5
+ "mappings": ";AAIA,cAAc;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@xyo-network/previous-hash-store-storage",
3
- "version": "7.0.4",
4
- "description": "Primary SDK for using XYO Protocol 2.0",
3
+ "version": "7.0.6",
4
+ "description": "DEPRECATED - use @xyo-network/sdk-protocol/previous-hash-store-storage. Backward-compatibility re-export stub for @xyo-network/previous-hash-store-storage.",
5
+ "deprecated": "Use @xyo-network/sdk-protocol/previous-hash-store-storage instead. @xyo-network/previous-hash-store-storage is a backward-compatibility re-export stub and will not receive further updates.",
5
6
  "homepage": "https://xyo.network",
6
7
  "bugs": {
7
8
  "url": "git+https://github.com/XYOracleNetwork/sdk-xyo-client-js/issues",
@@ -34,31 +35,33 @@
34
35
  "README.md"
35
36
  ],
36
37
  "dependencies": {
37
- "@xyo-network/address": "~7.0.4",
38
- "@xyo-network/previous-hash-store-model": "~7.0.4"
38
+ "@xyo-network/sdk-protocol": "~7.0.6"
39
39
  },
40
40
  "devDependencies": {
41
- "@opentelemetry/api": "^1.9.1",
42
- "@opentelemetry/sdk-trace-base": "^2.8.0",
43
- "@scure/base": "~2.2.0",
44
- "@xylabs/sdk": "^7.0.1",
45
- "@xylabs/toolchain": "~8.5.3",
46
- "@xylabs/tsconfig": "~8.5.3",
47
- "async-mutex": "^0.5.0",
41
+ "@xylabs/toolchain": "~8.5.12",
42
+ "@xylabs/tsconfig": "~8.5.12",
48
43
  "browserslist": "4.28.4",
49
44
  "eslint": "^10.6.0",
50
45
  "eslint-import-resolver-typescript": "^4.4.5",
51
- "typescript": "~6.0.3",
52
- "vite": "^8.1.0",
53
- "vitest": "~4.1.9",
54
- "zod": "^4.4.3"
46
+ "typescript": "~6.0.3"
55
47
  },
56
48
  "peerDependencies": {
49
+ "@ariestools/sdk": "^7.0.4",
50
+ "@bitauth/libauth": "~3.0",
51
+ "@noble/post-quantum": "~0.6.1",
57
52
  "@opentelemetry/api": "^1.9",
58
53
  "@opentelemetry/sdk-trace-base": "^2.7",
59
54
  "@scure/base": "~2.2",
60
- "@xylabs/sdk": "^7.0",
55
+ "@scure/bip39": "~2.2",
56
+ "@xylabs/geo": "^7.0",
57
+ "@xylabs/threads": "^7.0",
58
+ "ajv": "^8.20",
61
59
  "async-mutex": "^0.5",
60
+ "debug": "^4.4",
61
+ "ethers": "^6.16",
62
+ "hash-wasm": "~4.12",
63
+ "idb": "^8.0",
64
+ "observable-fns": "^0.6",
62
65
  "zod": "^4.4"
63
66
  },
64
67
  "engines": {
@@ -1,10 +0,0 @@
1
- export type StorageArea = 'local' | 'session' | 'page';
2
- export declare class NamespacedStorage<T> {
3
- private readonly backend;
4
- private readonly prefix;
5
- constructor(area: StorageArea, namespace: string);
6
- get(key: string): T | undefined;
7
- remove(key: string): void;
8
- set(key: string, value: T): void;
9
- }
10
- //# sourceMappingURL=NamespacedStorage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NamespacedStorage.d.ts","sourceRoot":"","sources":["../../src/NamespacedStorage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;AAiEtD,qBAAa,iBAAiB,CAAC,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;gBAEnB,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM;IAKhD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAU/B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;CAGjC"}
@@ -1,24 +0,0 @@
1
- import type { Hash } from '@xylabs/sdk';
2
- import type { XyoAddress } from '@xyo-network/address';
3
- import type { PreviousHashStore } from '@xyo-network/previous-hash-store-model';
4
- import type { StorageArea } from './NamespacedStorage.ts';
5
- export type Storage = StorageArea;
6
- export interface StoragePreviousHashOpts {
7
- namespace?: string;
8
- type?: Storage;
9
- }
10
- export declare class StoragePreviousHashStore implements PreviousHashStore {
11
- static readonly DefaultNamespace = "xyo-previous-hash-store";
12
- static readonly DefaultStorageType: Storage;
13
- private _namespace;
14
- private _storage;
15
- private _type;
16
- constructor(opts?: StoragePreviousHashOpts);
17
- private get storage();
18
- get namespace(): string;
19
- get type(): Storage;
20
- getItem(address: XyoAddress): Promise<Hash | null>;
21
- removeItem(address: XyoAddress): Promise<void>;
22
- setItem(address: XyoAddress, previousHash: Hash): Promise<void>;
23
- }
24
- //# sourceMappingURL=StoragePreviousHashStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StoragePreviousHashStore.d.ts","sourceRoot":"","sources":["../../src/StoragePreviousHashStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAE/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAGzD,MAAM,MAAM,OAAO,GAAG,WAAW,CAAA;AAEjC,MAAM,WAAW,uBAAuB;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,qBAAa,wBAAyB,YAAW,iBAAiB;IAChE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,6BAA4B;IAC5D,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAU;IAErD,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,QAAQ,CAAqC;IACrD,OAAO,CAAC,KAAK,CAAuD;gBAExD,IAAI,CAAC,EAAE,uBAAuB;IAM1C,OAAO,KAAK,OAAO,GAGlB;IAED,IAAI,SAAS,WAEZ;IAED,IAAI,IAAI,IAAI,OAAO,CAElB;IAEK,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAIlD,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtE"}