@ixo/ucan 1.0.0 → 1.1.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.
@@ -1,4 +1,4 @@
1
1
 
2
- > @ixo/ucan@1.0.0 build /home/runner/actions-runner/_work/ixo-oracles-boilerplate/ixo-oracles-boilerplate/packages/ucan
2
+ > @ixo/ucan@1.1.0 build /home/runner/work/qiforge/qiforge/packages/ucan
3
3
  > tsc
4
4
 
package/README.md CHANGED
@@ -1,189 +1,287 @@
1
1
  # @ixo/ucan
2
2
 
3
- UCAN (User Controlled Authorization Networks) implementation for IXO Services. This package wraps the battle-tested [ucanto](https://github.com/storacha/ucanto) library and provides IXO-specific extensions for DID resolution and MCP tool authorization.
3
+ A framework-agnostic UCAN (User Controlled Authorization Networks) implementation for any service. Built on top of the battle-tested [ucanto](https://github.com/storacha/ucanto) library and conforming to the [UCAN specification](https://github.com/ucan-wg/spec/).
4
+
5
+ ## What is UCAN?
6
+
7
+ UCAN is a decentralized authorization system using cryptographically signed tokens. Think of it as "JWT meets capabilities" - users can grant specific permissions to others, who can further delegate (but never escalate) those permissions.
8
+
9
+ **Key concepts:**
10
+
11
+ - **Capabilities**: What actions can be performed on which resources
12
+ - **Delegations**: Granting capabilities to others (can be chained)
13
+ - **Invocations**: Requests to use a capability
14
+ - **Attenuation**: Permissions can only be narrowed, never expanded
15
+
16
+ 📖 **[See the visual flow diagram →](./docs/FLOW.md)**
4
17
 
5
18
  ## Features
6
19
 
7
- - **did:ixo Resolution**: Resolve IXO DIDs to their public keys via the IXO blockchain indexer
8
- - **MCP Capability Definitions**: Pre-built capability schemas for MCP tool authorization
9
- - **Server & Client Helpers**: Easy setup for ucanto servers and clients with IXO defaults
10
- - **Replay Protection**: In-memory invocation store to prevent replay attacks
20
+ - 🔐 **Built on ucanto** - Battle-tested UCAN library from Storacha
21
+ - 🎯 **Generic Capabilities** - Define your own capabilities with custom schemas
22
+ - ⚙️ **Caveat Validation** - Enforce limits and restrictions on delegations
23
+ - 🌐 **Multi-DID Support** - `did:key` (native) + `did:ixo` (via blockchain indexer)
24
+ - 🚀 **Framework-Agnostic** - Works with Express, Fastify, Hono, NestJS, etc.
25
+ - 🛡️ **Replay Protection** - Built-in invocation store prevents replay attacks
11
26
 
12
27
  ## Installation
13
28
 
14
29
  ```bash
30
+ npm install @ixo/ucan
31
+ # or
15
32
  pnpm add @ixo/ucan
16
33
  ```
17
34
 
18
35
  ## Quick Start
19
36
 
20
- ### Server-Side (Oracle)
37
+ ### 1. Define a Capability
21
38
 
22
39
  ```typescript
23
- import { createIxoServer, MCPCall } from '@ixo/ucan';
24
- import { provide } from '@ucanto/server';
25
-
26
- // Create a handler for MCP tool calls
27
- const mcpCallHandler = provide(MCPCall, async ({ capability, invocation }) => {
28
- const { with: resourceUri } = capability;
40
+ import { defineCapability, Schema } from '@ixo/ucan';
41
+
42
+ const EmployeesRead = defineCapability({
43
+ can: 'employees/read',
44
+ protocol: 'myapp:',
45
+ nb: { limit: Schema.integer().optional() },
46
+ derives: (claimed, delegated) => {
47
+ const claimedLimit = claimed.nb?.limit ?? Infinity;
48
+ const delegatedLimit = delegated.nb?.limit ?? Infinity;
49
+
50
+ if (claimedLimit > delegatedLimit) {
51
+ return {
52
+ error: new Error(
53
+ `Limit ${claimedLimit} exceeds allowed ${delegatedLimit}`,
54
+ ),
55
+ };
56
+ }
57
+ return { ok: {} };
58
+ },
59
+ });
60
+ ```
29
61
 
30
- // Parse the resource URI to get server/tool info
31
- // Format: ixo:oracle:{oracleDid}:mcp/{serverName}/{toolName}
62
+ ### 2. Create a Validator (Server)
32
63
 
33
- // Execute the MCP tool...
34
- return { ok: { result: 'success' } };
64
+ ```typescript
65
+ import { createUCANValidator, createIxoDIDResolver } from '@ixo/ucan';
66
+
67
+ const validator = await createUCANValidator({
68
+ serverDid: 'did:ixo:ixo1abc...', // Your server's DID
69
+ rootIssuers: ['did:ixo:ixo1admin...'], // DIDs that can issue root capabilities
70
+ didResolver: createIxoDIDResolver({
71
+ indexerUrl: 'https://blocksync.ixo.earth/graphql',
72
+ }),
35
73
  });
74
+ ```
75
+
76
+ ### 3. Protect a Route
36
77
 
37
- // Create the server
38
- const { server, did } = createIxoServer({
39
- privateKey: process.env.ORACLE_PRIVATE_KEY!,
40
- rootIssuers: [process.env.ADMIN_DID!],
41
- indexerUrl: 'https://blocksync.ixo.earth/graphql',
42
- service: {
43
- mcp: { call: mcpCallHandler }
78
+ ```typescript
79
+ app.post('/employees', async (req, res) => {
80
+ const result = await validator.validate(
81
+ req.body.invocation, // Base64-encoded CAR
82
+ EmployeesRead,
83
+ 'myapp:company/acme',
84
+ );
85
+
86
+ if (!result.ok) {
87
+ return res.status(403).json({ error: result.error });
44
88
  }
45
- });
46
89
 
47
- console.log('Server DID:', did);
90
+ // result.invoker DID of who made the request
91
+ // result.capability — validated capability with caveats (nb)
92
+ // result.expiration — earliest expiration across the delegation chain (undefined = never)
93
+ // result.proofChain — delegation path from root to invoker, e.g. ["did:key:root", "did:key:user"]
94
+
95
+ const limit = result.capability?.nb?.limit ?? 10;
96
+ res.json({ employees: getEmployees(limit) });
97
+ });
48
98
  ```
49
99
 
50
- ### Client-Side
100
+ ### 4. Create & Use a Delegation (Client)
51
101
 
52
102
  ```typescript
53
- import { createIxoClient, createMCPResourceURI } from '@ixo/ucan';
54
-
55
- // Create a client
56
- const client = createIxoClient({
57
- privateKey: myPrivateKey,
58
- serverDid: 'did:key:z6Mk...',
59
- endpoint: 'https://oracle.ixo.earth/ucan'
103
+ import {
104
+ generateKeypair,
105
+ createDelegation,
106
+ createInvocation,
107
+ serializeInvocation,
108
+ } from '@ixo/ucan';
109
+
110
+ // Generate a keypair for the user
111
+ const { signer, did } = await generateKeypair();
112
+
113
+ // Root creates a delegation for the user
114
+ const delegation = await createDelegation({
115
+ issuer: rootSigner,
116
+ audience: did,
117
+ capabilities: [
118
+ { can: 'employees/read', with: 'myapp:company/acme', nb: { limit: 50 } },
119
+ ],
120
+ expiration: Math.floor(Date.now() / 1000) + 3600, // 1 hour
60
121
  });
61
122
 
62
- // Invoke an MCP tool capability
63
- const result = await client.invoke({
64
- can: 'mcp/call',
65
- with: createMCPResourceURI('did:ixo:oracle123', 'postgres', 'query'),
66
- nb: { args: { sql: 'SELECT * FROM users' } }
123
+ // User creates an invocation
124
+ const invocation = await createInvocation({
125
+ issuer: signer,
126
+ audience: serverDid,
127
+ capability: {
128
+ can: 'employees/read',
129
+ with: 'myapp:company/acme',
130
+ nb: { limit: 25 },
131
+ },
132
+ proofs: [delegation],
67
133
  });
68
134
 
69
- // Or delegate capability to another user
70
- const delegation = await client.delegate({
71
- audience: 'did:ixo:alice',
72
- capabilities: [{
73
- can: 'mcp/call',
74
- with: createMCPResourceURI('did:ixo:oracle123', 'postgres', '*')
75
- }],
76
- expiration: Math.floor(Date.now() / 1000) + 86400 // 24 hours
135
+ // Serialize and send
136
+ const serialized = await serializeInvocation(invocation);
137
+ await fetch('/employees', {
138
+ method: 'POST',
139
+ body: JSON.stringify({ invocation: serialized }),
77
140
  });
78
141
  ```
79
142
 
80
- ## Capability URI Format
143
+ ## Documentation
81
144
 
82
- MCP capabilities use the following URI format:
145
+ | Document | Description |
146
+ | --------------------------------------------------------- | ---------------------------------------------------- |
147
+ | **[Flow Diagram](./docs/FLOW.md)** | Visual explanation of UCAN delegation and invocation |
148
+ | **[Server Example](./docs/examples/SERVER.md)** | Complete Express server with protected routes |
149
+ | **[Client Example](./docs/examples/CLIENT.md)** | Frontend/client-side usage |
150
+ | **[Capabilities Guide](./docs/examples/CAPABILITIES.md)** | How to define custom capabilities with caveats |
83
151
 
84
- ```
85
- ixo:oracle:{oracleDid}:mcp/{serverName}/{toolName}
86
- ```
152
+ ## API Reference
87
153
 
88
- Examples:
89
- - `ixo:oracle:did:ixo:abc123:mcp/postgres/query` - Specific tool
90
- - `ixo:oracle:did:ixo:abc123:mcp/postgres/*` - All tools in server (wildcard)
91
- - `ixo:oracle:did:ixo:abc123:mcp/*` - All MCP tools (wildcard)
154
+ ### Capability Definition
92
155
 
93
- ## DID Resolution
156
+ ```typescript
157
+ defineCapability(options: DefineCapabilityOptions)
158
+ ```
94
159
 
95
- The package supports multiple DID methods:
160
+ Define a capability with optional caveat validation.
96
161
 
97
- - **did:key** - Handled natively by ucanto
98
- - **did:ixo** - Resolved via IXO blockchain indexer
162
+ | Option | Type | Description |
163
+ | ---------- | ---------- | -------------------------------------- |
164
+ | `can` | `string` | Action name (e.g., `'employees/read'`) |
165
+ | `protocol` | `string` | URI protocol (default: `'urn:'`) |
166
+ | `nb` | `object` | Schema for caveats using `Schema.*` |
167
+ | `derives` | `function` | Custom validation for attenuation |
168
+
169
+ ### Validator
99
170
 
100
171
  ```typescript
101
- import { createIxoDIDResolver, createCompositeDIDResolver } from '@ixo/ucan';
172
+ createUCANValidator(options: CreateValidatorOptions): Promise<UCANValidator>
173
+ ```
102
174
 
103
- const ixoResolver = createIxoDIDResolver({
104
- indexerUrl: 'https://blocksync.ixo.earth/graphql'
105
- });
175
+ Create a framework-agnostic validator.
106
176
 
107
- // Create a composite resolver for multiple DID methods
108
- const resolver = createCompositeDIDResolver([ixoResolver]);
109
- ```
177
+ | Option | Type | Description |
178
+ | ----------------- | ----------------- | ------------------------------------- |
179
+ | `serverDid` | `string` | Server's DID (any method supported) |
180
+ | `rootIssuers` | `string[]` | DIDs that can self-issue capabilities |
181
+ | `didResolver` | `DIDKeyResolver` | Resolver for non-`did:key` DIDs |
182
+ | `invocationStore` | `InvocationStore` | Custom store for replay protection |
110
183
 
111
- ## Replay Protection
184
+ #### `ValidateResult`
112
185
 
113
- The package includes an in-memory invocation store for replay protection:
186
+ The `validator.validate()` method returns a `ValidateResult`:
114
187
 
115
- ```typescript
116
- import { InMemoryInvocationStore } from '@ixo/ucan';
188
+ | Field | Type | Description |
189
+ | ------------ | ----------------------- | ---------------------------------------------------------------------------------------------------- |
190
+ | `ok` | `boolean` | Whether validation succeeded |
191
+ | `invoker` | `string` | DID of the invoker (on success) |
192
+ | `capability` | `object` | Validated capability with `can`, `with`, and optional `nb` caveats (on success) |
193
+ | `expiration` | `number \| undefined` | Effective expiration (Unix seconds) — the earliest across the delegation chain. Undefined = never. |
194
+ | `proofChain` | `string[] \| undefined` | Delegation path from root issuer to invoker, e.g. `["did:key:root", "did:key:alice", "did:key:bob"]` |
195
+ | `error` | `object` | Error with `code` and `message` (on failure) |
117
196
 
118
- const store = new InMemoryInvocationStore({
119
- defaultTtlMs: 24 * 60 * 60 * 1000, // 24 hours
120
- cleanupIntervalMs: 60 * 60 * 1000, // 1 hour
121
- });
197
+ Error codes: `INVALID_FORMAT`, `INVALID_SIGNATURE`, `UNAUTHORIZED`, `REPLAY`, `EXPIRED`, `CAVEAT_VIOLATION`.
122
198
 
123
- // Check if invocation was already used
124
- if (await store.has(invocationCid)) {
125
- throw new Error('Replay attack detected');
126
- }
199
+ ### Client Helpers
200
+
201
+ | Function | Description |
202
+ | ------------------------------------ | --------------------------------- |
203
+ | `generateKeypair()` | Generate new Ed25519 keypair |
204
+ | `parseSigner(privateKey, did?)` | Parse private key into signer |
205
+ | `signerFromMnemonic(mnemonic, did?)` | Derive signer from BIP39 mnemonic |
206
+ | `createDelegation(options)` | Create a delegation |
207
+ | `createInvocation(options)` | Create an invocation |
208
+ | `serializeDelegation(delegation)` | Serialize to base64 CAR |
209
+ | `serializeInvocation(invocation)` | Serialize to base64 CAR |
210
+ | `parseDelegation(serialized)` | Parse from base64 CAR |
127
211
 
128
- // Mark as used
129
- await store.add(invocationCid);
212
+ > **Note:** Both `createDelegation` and `createInvocation` default to `expiration: Infinity` (never expires) when no expiration is specified. Pass an explicit Unix timestamp (seconds) to set an expiration.
213
+
214
+ ### DID Resolution
215
+
216
+ ```typescript
217
+ createIxoDIDResolver(config: IxoDIDResolverConfig): DIDKeyResolver
218
+ createCompositeDIDResolver(resolvers: DIDKeyResolver[]): DIDKeyResolver
130
219
  ```
131
220
 
132
- ## Integration with Oracle
221
+ ### Replay Protection
133
222
 
134
- See the oracle app's `src/ucan/` directory for a complete integration example:
223
+ ```typescript
224
+ new InMemoryInvocationStore(options?)
225
+ createInvocationStore(options?)
226
+ ```
135
227
 
136
- - `ucan.config.ts` - Configuration for MCP UCAN requirements
137
- - `ucan.service.ts` - NestJS service for validation
138
- - `ucan.module.ts` - NestJS module
228
+ ## DID Support
139
229
 
140
- ## Environment Variables
230
+ | DID Method | Support | Notes |
231
+ | ---------- | --------------- | ----------------------------------- |
232
+ | `did:key` | ✅ Native | Parsed directly from the identifier |
233
+ | `did:ixo` | ✅ Via resolver | Resolved via IXO blockchain indexer |
234
+ | `did:web` | 🔧 Extendable | Implement custom resolver |
141
235
 
142
- For the IXO DID resolver:
236
+ ## Environment Variables
143
237
 
144
238
  ```env
239
+ # For IXO DID resolution
145
240
  BLOCKSYNC_GRAPHQL_URL=https://blocksync.ixo.earth/graphql
146
241
  ```
147
242
 
148
- For UCAN configuration:
243
+ ## Advanced Usage
149
244
 
150
- ```env
151
- ORACLE_ENTITY_DID=did:ixo:your-oracle-did
152
- UCAN_ROOT_ISSUERS=did:ixo:admin1,did:ixo:admin2
153
- UCAN_PROTECTED_MCP_SERVERS=postgres,redis
245
+ ### Re-exported ucanto Packages
246
+
247
+ For advanced use cases, you can access the underlying ucanto packages:
248
+
249
+ ```typescript
250
+ import {
251
+ UcantoServer,
252
+ UcantoClient,
253
+ UcantoValidator,
254
+ ed25519,
255
+ } from '@ixo/ucan';
154
256
  ```
155
257
 
156
- ## API Reference
258
+ ### Custom Invocation Store
157
259
 
158
- ### Types
260
+ Implement the `InvocationStore` interface for distributed deployments:
159
261
 
160
- - `IxoDID` - IXO DID type (`did:ixo:${string}`)
161
- - `KeyDID` - Key DID type (`did:key:${string}`)
162
- - `MCPResourceURI` - MCP resource URI type
163
- - `MCPUCANConfig` - Configuration for MCP UCAN requirements
164
- - `InvocationStore` - Interface for replay protection stores
165
- - `DIDKeyResolver` - DID resolver function type
262
+ ```typescript
263
+ interface InvocationStore {
264
+ has(cid: string): Promise<boolean>;
265
+ add(cid: string, ttlMs?: number): Promise<void>;
266
+ cleanup?(): Promise<void>;
267
+ }
268
+ ```
166
269
 
167
- ### Functions
270
+ ## Testing
168
271
 
169
- - `createIxoServer(options)` - Create a ucanto server with IXO defaults
170
- - `createIxoClient(options)` - Create a ucanto client with IXO defaults
171
- - `createIxoDIDResolver(config)` - Create a did:ixo resolver
172
- - `createCompositeDIDResolver(resolvers)` - Combine multiple DID resolvers
173
- - `createMCPResourceURI(oracleDid, serverName, toolName)` - Build MCP resource URI
174
- - `parseMCPResourceURI(uri)` - Parse MCP resource URI into components
175
- - `createInvocationStore(options)` - Create an invocation store
272
+ ```bash
273
+ pnpm test # Run unit tests (vitest)
274
+ pnpm test:ucan # Run interactive test script with full UCAN flow
275
+ ```
176
276
 
177
- ### Capabilities
277
+ The unit tests cover proof chain construction, expiration computation, validation failures, caveat enforcement, and replay protection.
178
278
 
179
- - `MCPCall` - Capability for calling MCP tools
279
+ ## License
180
280
 
181
- ## TODO
281
+ MIT
182
282
 
183
- - [ ] Add Redis implementation for distributed deployments
184
- - [ ] Add SQLite implementation for persistence
185
- - [ ] Add delegation management utilities
186
- - [ ] Add capability inspection utilities
187
- - [ ] Add support for capability revocation lists
188
- - [ ] Add support for time-based restrictions in caveats
283
+ ## Links
189
284
 
285
+ - [ucanto (underlying library)](https://github.com/storacha/ucanto)
286
+ - [UCAN Specification](https://github.com/ucan-wg/spec/)
287
+ - [IXO Network](https://www.ixo.world/)
@@ -11,7 +11,7 @@ type Infer<T> = T extends {
11
11
  type InferStruct<U extends Record<string, unknown>> = {
12
12
  [K in keyof U]: Infer<U[K]>;
13
13
  };
14
- export interface DefineCapabilityOptions<NBSchema extends Record<string, any> = Record<string, never>> {
14
+ export interface DefineCapabilityOptions<NBSchema extends Record<string, unknown> = Record<string, never>> {
15
15
  can: string;
16
16
  protocol?: string;
17
17
  supportWildcards?: boolean;
@@ -28,6 +28,6 @@ export interface DefineCapabilityOptions<NBSchema extends Record<string, any> =
28
28
  error: Error;
29
29
  };
30
30
  }
31
- export declare function defineCapability<NBSchema extends Record<string, any> = Record<string, never>>(options: DefineCapabilityOptions<NBSchema>): import("@ucanto/interface").TheCapabilityParser<import("@ucanto/interface").CapabilityMatch<`${string}/${string}`, import("@ucanto/interface").URI<`${string}:`>, Schema.InferStruct<{}>>>;
31
+ export declare function defineCapability<NBSchema extends Record<string, unknown> = Record<string, never>>(options: DefineCapabilityOptions<NBSchema>): import("@ucanto/interface").TheCapabilityParser<import("@ucanto/interface").CapabilityMatch<`${string}/${string}`, import("@ucanto/interface").URI<`${string}:`>, Schema.InferStruct<{}>>>;
32
32
  export type { UcantoCapability, Infer, InferStruct };
33
33
  //# sourceMappingURL=capability.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/capabilities/capability.ts"],"names":[],"mappings":"AAWA,OAAO,EAAmB,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EAAE,MAAM,EAAE,CAAC;AAUlB,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,GACpF,CAAC,GACD,KAAK,CAAC;AAMV,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;KACnD,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5B,CAAC;AA+BF,MAAM,WAAW,uBAAuB,CAGtC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAM5D,GAAG,EAAE,MAAM,CAAC;IAOZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAOlB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAe3B,EAAE,CAAC,EAAE,QAAQ,CAAC;IAsBd,OAAO,CAAC,EAAE,CACR,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;KAAE,EACrD,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;KAAE,KACpD;QAAE,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;CACvD;AAuCD,wBAAgB,gBAAgB,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC3F,OAAO,EAAE,uBAAuB,CAAC,QAAQ,CAAC,8LAsE3C;AAGD,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"capability.d.ts","sourceRoot":"","sources":["../../src/capabilities/capability.ts"],"names":[],"mappings":"AAWA,OAAO,EAAmB,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EAAE,MAAM,EAAE,CAAC;AAUlB,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;IACxB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC;CAC5D,GACG,CAAC,GACD,KAAK,CAAC;AAMV,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;KACnD,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5B,CAAC;AA+BF,MAAM,WAAW,uBAAuB,CAEtC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAMhE,GAAG,EAAE,MAAM,CAAC;IAOZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAOlB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAe3B,EAAE,CAAC,EAAE,QAAQ,CAAC;IAsBd,OAAO,CAAC,EAAE,CACR,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;KAAE,EACrD,SAAS,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;KAAE,KACpD;QAAE,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;CACvD;AAuCD,wBAAgB,gBAAgB,CAC9B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAChE,OAAO,EAAE,uBAAuB,CAAC,QAAQ,CAAC,8LAqE3C;AAGD,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/capabilities/capability.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI5D,OAAO,EAAE,MAAM,EAAE,CAAC;AA0JlB,MAAM,UAAU,gBAAgB,CAC9B,OAA0C;IAE1C,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAiB,CAAC;IAC9D,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC;IAG1D,MAAM,QAAQ,GAAG,OAAO,CAAC,EAAE;QACzB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAyC,CAAC;QAClE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEtB,OAAO,UAAU,CAAC;QAChB,GAAG,EAAE,OAAO,CAAC,GAA4B;QACzC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC7B,EAAE,EAAE,QAAQ;QACZ,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC;YAGpC,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;gBAEhC,IAAI,gBAAgB,EAAE,CAAC;oBAErB,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BACpC,OAAO;gCACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;6BACF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAEI,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BACpC,OAAO;gCACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;6BACF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO;4BACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAGD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,OAAO,CAAC,OAAO,CACpB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,CAAC,EAA2B,EAAE,EAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,SAAS,CAAC,EAA2B,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACpB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"capability.js","sourceRoot":"","sources":["../../src/capabilities/capability.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI5D,OAAO,EAAE,MAAM,EAAE,CAAC;AA2JlB,MAAM,UAAU,gBAAgB,CAE9B,OAA0C;IAC1C,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAiB,CAAC;IAC9D,MAAM,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC;IAG1D,MAAM,QAAQ,GAAG,OAAO,CAAC,EAAE;QACzB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAyC,CAAC;QAClE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAEtB,OAAO,UAAU,CAAC;QAChB,GAAG,EAAE,OAAO,CAAC,GAA4B;QACzC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC7B,EAAE,EAAE,QAAQ;QACZ,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE;YAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC;YAGpC,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;gBAEhC,IAAI,gBAAgB,EAAE,CAAC;oBAErB,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BACpC,OAAO;gCACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;6BACF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAEI,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;4BACpC,OAAO;gCACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;6BACF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO;4BACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO;wBACL,KAAK,EAAE,IAAI,KAAK,CACd,aAAa,UAAU,qBAAqB,YAAY,GAAG,CAC5D;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAGD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,OAAO,CAAC,OAAO,CACpB,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,CAAC,EAA2B,EAAE,EAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,SAAS,CAAC,EAA2B,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;QACpB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -25,6 +25,7 @@ export declare function createInvocation(options: {
25
25
  audience: string;
26
26
  capability: Capability;
27
27
  proofs?: Delegation[];
28
+ expiration?: number;
28
29
  }): Promise<Client.IssuedInvocationView<Client.Capability<Client.Ability, `${string}:${string}`, unknown>>>;
29
30
  export declare function serializeInvocation(invocation: Awaited<ReturnType<typeof createInvocation>>): Promise<string>;
30
31
  export declare function serializeDelegation(delegation: Delegation): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"create-client.d.ts","sourceRoot":"","sources":["../../src/client/create-client.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAa,MAAM,mBAAmB,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAmChD,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CAOD;AASD,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAM1E;AAqBD,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC;IACtF,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CAkDD;AA2BD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAE9C,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,UAAU,EAAE,CAAC;IAE3B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB,GAAG,OAAO,CAAC,UAAU,CAAC,CAatB;AA6BD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAE9C,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,MAAM,CAAC;IAEjB,UAAU,EAAE,UAAU,CAAC;IAEvB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB,2GAUA;AAQD,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,GACvD,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAQD,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAejF;AAQD,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAgB7E;AAGD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"create-client.d.ts","sourceRoot":"","sources":["../../src/client/create-client.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,OAAO,KAAK,EACV,MAAM,EACN,UAAU,EACV,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAmChD,wBAAsB,eAAe,IAAI,OAAO,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CAOD;AASD,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,GAAG,MAAM,CAM1E;AAqBD,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,YAAY,GACjB,OAAO,CAAC;IACT,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC,CAuDD;AA2BD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAE9C,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,MAAM,CAAC;IAEjB,YAAY,EAAE,UAAU,EAAE,CAAC;IAE3B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;CACvB,GAAG,OAAO,CAAC,UAAU,CAAC,CAatB;AA6BD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE;IAE9C,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,MAAM,CAAC;IAEjB,UAAU,EAAE,UAAU,CAAC;IAEvB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IAEtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,2GAWA;AAQD,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,GACvD,OAAO,CAAC,MAAM,CAAC,CAmBjB;AAQD,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,MAAM,CAAC,CAejB;AAQD,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAgB7E;AAGD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC"}
@@ -37,10 +37,12 @@ export async function signerFromMnemonic(mnemonic, did) {
37
37
  keyMaterial.set(ED25519_PRIV_MULTICODEC, 0);
38
38
  keyMaterial.set(seed, ED25519_PRIV_MULTICODEC.length);
39
39
  keyMaterial.set(ED25519_PUB_MULTICODEC, ED25519_PRIV_MULTICODEC.length + seed.length);
40
- keyMaterial.set(keypair.pubkey, ED25519_PRIV_MULTICODEC.length + seed.length + ED25519_PUB_MULTICODEC.length);
40
+ keyMaterial.set(keypair.pubkey, ED25519_PRIV_MULTICODEC.length +
41
+ seed.length +
42
+ ED25519_PUB_MULTICODEC.length);
41
43
  const base64 = Buffer.from(keyMaterial).toString('base64');
42
44
  const multibasePrivateKey = 'M' + base64;
43
- let signer = ed25519.Signer.parse(multibasePrivateKey);
45
+ const signer = ed25519.Signer.parse(multibasePrivateKey);
44
46
  const finalSigner = did ? signer.withDID(did) : signer;
45
47
  return {
46
48
  signer: finalSigner,
@@ -54,7 +56,7 @@ export async function createDelegation(options) {
54
56
  issuer: options.issuer,
55
57
  audience: audiencePrincipal,
56
58
  capabilities: options.capabilities,
57
- expiration: options.expiration,
59
+ expiration: options.expiration ?? Infinity,
58
60
  proofs: options.proofs,
59
61
  notBefore: options.notBefore,
60
62
  });
@@ -66,6 +68,7 @@ export async function createInvocation(options) {
66
68
  audience: audiencePrincipal,
67
69
  capability: options.capability,
68
70
  proofs: options.proofs ?? [],
71
+ expiration: options.expiration ?? Infinity,
69
72
  });
70
73
  }
71
74
  export async function serializeInvocation(invocation) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-client.js","sourceRoot":"","sources":["../../src/client/create-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-client.js","sourceRoot":"","sources":["../../src/client/create-client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ixo-resolver.d.ts","sourceRoot":"","sources":["../../src/did/ixo-resolver.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,aAAa,CAAC;AAM1D,MAAM,WAAW,oBAAoB;IAKnC,UAAU,EAAE,MAAM,CAAC;IAKnB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAwJD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,oBAAoB,GAC3B,cAAc,CA2GhB;AAQD,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,cAAc,EAAE,GAC1B,cAAc,CAuBhB"}
1
+ {"version":3,"file":"ixo-resolver.d.ts","sourceRoot":"","sources":["../../src/did/ixo-resolver.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAU,MAAM,aAAa,CAAC;AAM1D,MAAM,WAAW,oBAAoB;IAKnC,UAAU,EAAE,MAAM,CAAC;IAKnB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CACjC;AAsJD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,oBAAoB,GAC3B,cAAc,CA2GhB;AAQD,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,cAAc,EAAE,GAC1B,cAAc,CAuBhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ixo-resolver.js","sourceRoot":"","sources":["../../src/did/ixo-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ixo-resolver.js","sourceRoot":"","sources":["../../src/did/ixo-resolver.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAqBnE,MAAM,kBAAkB,GAAG;;;;;;;;;CAS1B,CAAC;AA8BF,MAAM,yBAAyB,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAU/D,SAAS,oBAAoB,CAAC,cAA0B;IAEtD,IAAI,cAAc,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,CACV,sDAAsD,cAAc,CAAC,MAAM,QAAQ,CACpF,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,MAAM,WAAW,GAAG,IAAI,UAAU,CAChC,yBAAyB,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CACzD,CAAC;IACF,WAAW,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC;IAC9C,WAAW,CAAC,GAAG,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAGlE,MAAM,gBAAgB,GAAG,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAEzD,OAAO,WAAW,gBAAgB,EAAE,CAAC;AACvC,CAAC;AAMD,SAAS,iBAAiB,CAAC,EAAsB;IAG/C,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAG1B,IAAI,EAAE,CAAC,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAE1C,OAAO,WAAW,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAC5C,CAAC;QAGD,OAAO,CAAC,IAAI,CACV,qDAAqD,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACjG,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,sDAAsD,EAAE,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC3H,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAGD,IAAI,EAAE,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,oBAAoB,CAAC,cAAc,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CACV,yDAAyD,EAAE,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC9H,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAuBD,MAAM,UAAU,oBAAoB,CAClC,MAA4B;IAE5B,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAEjD,OAAO,KAAK,EACV,GAAQ,EAGR,EAAE;QAEF,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;oBAC7B,GAAG;oBACH,OAAO,EAAE,kBAAkB,GAAG,4BAA4B;iBAC3D;aACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YAEH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;gBAChD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,kBAAkB;oBACzB,SAAS,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE;iBACvB,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACL,KAAK,EAAE;wBACL,IAAI,EAAE,uBAAuB;wBAC7B,GAAG;wBACH,OAAO,EAAE,sCAAsC,QAAQ,CAAC,MAAM,EAAE;qBACjE;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGlC,CAAC;YAEF,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,OAAO;oBACL,KAAK,EAAE;wBACL,IAAI,EAAE,uBAAuB;wBAC7B,GAAG;wBACH,OAAO,EAAE,kBAAkB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,EAAE;qBACxE;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,KAAK,EAAE;wBACL,IAAI,EAAE,uBAAuB;wBAC7B,GAAG;wBACH,OAAO,EAAE,8BAA8B,GAAG,EAAE;qBAC7C;iBACF,CAAC;YACJ,CAAC;YAGD,MAAM,IAAI,GAAa,EAAE,CAAC;YAE1B,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,kBAAkB,IAAI,EAAE,EAAE,CAAC;gBAGjD,IACE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC3B,EAAE,CAAC,IAAI,KAAK,gBAAgB;oBAC5B,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,EACzB,CAAC;oBACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;oBACrC,IAAI,MAAM,EAAE,CAAC;wBACX,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO;oBACL,KAAK,EAAE;wBACL,IAAI,EAAE,uBAAuB;wBAC7B,GAAG;wBACH,OAAO,EAAE,mEAAmE,GAAG,EAAE;qBAClF;iBACF,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,KAAK,EAAE;oBACL,IAAI,EAAE,uBAAuB;oBAC7B,GAAG;oBACH,OAAO,EAAE,qBAAqB,GAAG,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;iBACjG;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAQD,MAAM,UAAU,0BAA0B,CACxC,SAA2B;IAE3B,OAAO,KAAK,EAAE,GAAQ,EAAE,EAAE;QACxB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChD,SAAS;YACX,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO;YACL,KAAK,EAAE;gBACL,IAAI,EAAE,uBAAuB;gBAC7B,GAAG;gBACH,OAAO,EAAE,4BAA4B,GAAG,EAAE;aAC3C;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAmCnD,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,eAAe,CAA+C;IAGtE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAGtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAWzC,OAAO,GAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;KACxB;IAgBF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBlC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmB9B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAKD,KAAK,IAAI,IAAI;IAOb,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,IAAI,IAAI;CAOhB;AASD,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,eAAe,CAElB"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAmCnD,qBAAa,uBAAwB,YAAW,eAAe;IAC7D,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,eAAe,CAA+C;IAGtE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IAGtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;gBAWzC,OAAO,GAAE;QACP,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;KACxB;IAgBF,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBlC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB9B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAKD,KAAK,IAAI,IAAI;IAOb,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,IAAI,IAAI;CAOhB;AASD,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,eAAe,CAElB"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"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"}