interaqt 1.0.0 → 1.1.1
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 +328 -0
- package/agent/agentspace/knowledge/generator/api-reference.md +5 -2
- package/dist/builtins/interaction/Action.d.ts +1 -1
- package/dist/builtins/interaction/Action.d.ts.map +1 -1
- package/dist/builtins/interaction/Activity.d.ts +1 -1
- package/dist/builtins/interaction/Activity.d.ts.map +1 -1
- package/dist/builtins/interaction/Attributive.d.ts +1 -2
- package/dist/builtins/interaction/Attributive.d.ts.map +1 -1
- package/dist/builtins/interaction/Condition.d.ts +1 -1
- package/dist/builtins/interaction/Condition.d.ts.map +1 -1
- package/dist/builtins/interaction/Conditions.d.ts +1 -2
- package/dist/builtins/interaction/Conditions.d.ts.map +1 -1
- package/dist/builtins/interaction/Data.d.ts +1 -1
- package/dist/builtins/interaction/Data.d.ts.map +1 -1
- package/dist/builtins/interaction/DataAttributives.d.ts +1 -2
- package/dist/builtins/interaction/DataAttributives.d.ts.map +1 -1
- package/dist/builtins/interaction/Event.d.ts +1 -1
- package/dist/builtins/interaction/Event.d.ts.map +1 -1
- package/dist/builtins/interaction/Gateway.d.ts +1 -1
- package/dist/builtins/interaction/Gateway.d.ts.map +1 -1
- package/dist/builtins/interaction/Interaction.d.ts +17 -10
- package/dist/builtins/interaction/Interaction.d.ts.map +1 -1
- package/dist/builtins/interaction/Payload.d.ts +1 -1
- package/dist/builtins/interaction/Payload.d.ts.map +1 -1
- package/dist/builtins/interaction/PayloadItem.d.ts +1 -2
- package/dist/builtins/interaction/PayloadItem.d.ts.map +1 -1
- package/dist/builtins/interaction/activity/ActivityCall.d.ts +23 -19
- package/dist/builtins/interaction/activity/ActivityCall.d.ts.map +1 -1
- package/dist/builtins/interaction/activity/ActivityManager.d.ts +13 -32
- package/dist/builtins/interaction/activity/ActivityManager.d.ts.map +1 -1
- package/dist/builtins/interaction/errors/ActivityErrors.d.ts +3 -3
- package/dist/builtins/interaction/errors/ActivityErrors.d.ts.map +1 -1
- package/dist/builtins/interaction/errors/InteractionErrors.d.ts +2 -2
- package/dist/builtins/interaction/errors/InteractionErrors.d.ts.map +1 -1
- package/dist/builtins/interaction/index.d.ts +0 -1
- package/dist/builtins/interaction/index.d.ts.map +1 -1
- package/dist/core/BoolExp.d.ts +2 -1
- package/dist/core/BoolExp.d.ts.map +1 -1
- package/dist/core/Computation.d.ts +3 -8
- package/dist/core/Computation.d.ts.map +1 -1
- package/dist/core/Custom.d.ts +2 -2
- package/dist/core/Custom.d.ts.map +1 -1
- package/dist/core/EventSource.d.ts +18 -16
- package/dist/core/EventSource.d.ts.map +1 -1
- package/dist/core/Property.d.ts +0 -3
- package/dist/core/Property.d.ts.map +1 -1
- package/dist/core/RealDictionary.d.ts +0 -3
- package/dist/core/RealDictionary.d.ts.map +1 -1
- package/dist/core/Relation.d.ts.map +1 -1
- package/dist/core/StateNode.d.ts +3 -3
- package/dist/core/StateNode.d.ts.map +1 -1
- package/dist/core/StateTransfer.d.ts +2 -6
- package/dist/core/StateTransfer.d.ts.map +1 -1
- package/dist/core/Transform.d.ts +2 -2
- package/dist/core/Transform.d.ts.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/interfaces.d.ts +0 -9
- package/dist/core/interfaces.d.ts.map +1 -1
- package/dist/core/types.d.ts +0 -29
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/utils.d.ts +22 -6
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/drivers/Mysql.d.ts +5 -5
- package/dist/drivers/Mysql.d.ts.map +1 -1
- package/dist/drivers/PGLite.d.ts +5 -5
- package/dist/drivers/PGLite.d.ts.map +1 -1
- package/dist/drivers/PostgreSQL.d.ts +5 -5
- package/dist/drivers/PostgreSQL.d.ts.map +1 -1
- package/dist/drivers/SQLite.d.ts +5 -5
- package/dist/drivers/SQLite.d.ts.map +1 -1
- package/dist/index.js +937 -1192
- package/dist/index.js.map +1 -1
- package/dist/runtime/Controller.d.ts +14 -14
- package/dist/runtime/Controller.d.ts.map +1 -1
- package/dist/runtime/MonoSystem.d.ts +4 -4
- package/dist/runtime/MonoSystem.d.ts.map +1 -1
- package/dist/runtime/Scheduler.d.ts +3 -3
- package/dist/runtime/Scheduler.d.ts.map +1 -1
- package/dist/runtime/System.d.ts +50 -51
- package/dist/runtime/System.d.ts.map +1 -1
- package/dist/runtime/computations/Any.d.ts +4 -4
- package/dist/runtime/computations/Any.d.ts.map +1 -1
- package/dist/runtime/computations/Average.d.ts +2 -2
- package/dist/runtime/computations/Average.d.ts.map +1 -1
- package/dist/runtime/computations/Computation.d.ts +41 -47
- package/dist/runtime/computations/Computation.d.ts.map +1 -1
- package/dist/runtime/computations/Count.d.ts +4 -4
- package/dist/runtime/computations/Count.d.ts.map +1 -1
- package/dist/runtime/computations/Every.d.ts +4 -4
- package/dist/runtime/computations/Every.d.ts.map +1 -1
- package/dist/runtime/computations/RealTime.d.ts +9 -17
- package/dist/runtime/computations/RealTime.d.ts.map +1 -1
- package/dist/runtime/computations/StateMachine.d.ts +2 -2
- package/dist/runtime/computations/Summation.d.ts +2 -2
- package/dist/runtime/computations/Summation.d.ts.map +1 -1
- package/dist/runtime/computations/TransitionFinder.d.ts +9 -4
- package/dist/runtime/computations/TransitionFinder.d.ts.map +1 -1
- package/dist/runtime/computations/WeightedSummation.d.ts +2 -2
- package/dist/runtime/computations/WeightedSummation.d.ts.map +1 -1
- package/dist/runtime/errors/ComputationErrors.d.ts +3 -3
- package/dist/runtime/errors/ComputationErrors.d.ts.map +1 -1
- package/dist/runtime/errors/ConditionErrors.d.ts +6 -6
- package/dist/runtime/errors/ConditionErrors.d.ts.map +1 -1
- package/dist/runtime/errors/FrameworkError.d.ts +4 -4
- package/dist/runtime/errors/FrameworkError.d.ts.map +1 -1
- package/dist/runtime/errors/SideEffectError.d.ts +1 -1
- package/dist/runtime/errors/SideEffectError.d.ts.map +1 -1
- package/dist/runtime/errors/SystemErrors.d.ts +1 -1
- package/dist/runtime/errors/SystemErrors.d.ts.map +1 -1
- package/dist/runtime/errors/index.d.ts +5 -5
- package/dist/runtime/errors/index.d.ts.map +1 -1
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/types/computation.d.ts +11 -0
- package/dist/runtime/types/computation.d.ts.map +1 -0
- package/dist/runtime/util.d.ts +6 -6
- package/dist/runtime/util.d.ts.map +1 -1
- package/dist/storage/erstorage/MatchExp.d.ts +4 -4
- package/dist/storage/erstorage/MatchExp.d.ts.map +1 -1
- package/dist/storage/erstorage/QueryExecutor.d.ts +1 -1
- package/dist/storage/erstorage/QueryExecutor.d.ts.map +1 -1
- package/dist/storage/erstorage/RecordQuery.d.ts +5 -5
- package/dist/storage/erstorage/RecordQuery.d.ts.map +1 -1
- package/dist/storage/erstorage/SQLBuilder.d.ts +11 -11
- package/dist/storage/erstorage/SQLBuilder.d.ts.map +1 -1
- package/dist/storage/erstorage/Setup.d.ts +1 -1
- package/dist/storage/erstorage/util/RecursiveContext.d.ts +4 -10
- package/dist/storage/erstorage/util/RecursiveContext.d.ts.map +1 -1
- package/dist/storage/erstorage/util.d.ts +3 -3
- package/dist/storage/erstorage/util.d.ts.map +1 -1
- package/dist/storage/utils.d.ts +2 -2
- package/dist/storage/utils.d.ts.map +1 -1
- package/package.json +4 -2
- package/dist/builtins/interaction/activity/InteractionCall.d.ts +0 -75
- package/dist/builtins/interaction/activity/InteractionCall.d.ts.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<h1 align="center">interaqt</h1>
|
|
3
|
+
<p align="center">
|
|
4
|
+
<strong>A declarative reactive backend framework where you define <em>what data is</em>, not how to change it.</strong>
|
|
5
|
+
</p>
|
|
6
|
+
<p align="center">
|
|
7
|
+
<a href="https://www.npmjs.com/package/interaqt"><img src="https://img.shields.io/npm/v/interaqt.svg" alt="npm version"></a>
|
|
8
|
+
<a href="https://www.npmjs.com/package/interaqt"><img src="https://img.shields.io/npm/dm/interaqt.svg" alt="npm downloads"></a>
|
|
9
|
+
<a href="https://github.com/InteraqtDev/interaqt/blob/main/LICENSE"><img src="https://img.shields.io/npm/l/interaqt.svg" alt="license"></a>
|
|
10
|
+
<a href="https://github.com/InteraqtDev/interaqt"><img src="https://img.shields.io/badge/TypeScript-strict-blue.svg" alt="TypeScript"></a>
|
|
11
|
+
</p>
|
|
12
|
+
</p>
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## The Problem
|
|
17
|
+
|
|
18
|
+
Traditional backend development forces you to think in terms of **operations** — "when X happens, update Y, then Z, then W." This imperative approach scatters related logic across handlers, creates consistency bugs, and makes systems increasingly brittle as complexity grows.
|
|
19
|
+
|
|
20
|
+
```typescript
|
|
21
|
+
// The imperative way: fragile chains of manual updates
|
|
22
|
+
async function likePost(userId, postId) {
|
|
23
|
+
await createLike(userId, postId);
|
|
24
|
+
const count = await countLikes(postId);
|
|
25
|
+
await updatePost(postId, { likeCount: count }); // easy to forget
|
|
26
|
+
await notifyAuthor(postId); // easy to break
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## The Solution
|
|
31
|
+
|
|
32
|
+
interaqt flips the model. Instead of describing *procedures*, you **declare what your data is** — and the framework keeps everything consistent, automatically.
|
|
33
|
+
|
|
34
|
+
```typescript
|
|
35
|
+
// The interaqt way: declare what data IS
|
|
36
|
+
const Post = Entity.create({
|
|
37
|
+
name: 'Post',
|
|
38
|
+
properties: [
|
|
39
|
+
Property.create({ name: 'title', type: 'string' }),
|
|
40
|
+
Property.create({
|
|
41
|
+
name: 'likeCount',
|
|
42
|
+
// "like count IS the number of like relationships"
|
|
43
|
+
computation: Count.create({ record: LikeRelation })
|
|
44
|
+
})
|
|
45
|
+
]
|
|
46
|
+
})
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
No update handlers. No sync bugs. When a like relationship is created, `likeCount` updates itself — because it's *defined* as the count of likes.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Core Ideas
|
|
54
|
+
|
|
55
|
+
**1. Only Interactions create data** — User interactions are the single source of truth. Everything else is derived.
|
|
56
|
+
|
|
57
|
+
**2. Data is a function of events** — Properties, counts, states, and aggregates are declared as computations over events and relations, not manually maintained.
|
|
58
|
+
|
|
59
|
+
**3. Unidirectional flow** — `Interaction → Event → Computation → Data`. No reverse wiring. No tangled update cycles.
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Quick Example: Social Post System
|
|
64
|
+
|
|
65
|
+
```typescript
|
|
66
|
+
import {
|
|
67
|
+
Entity, Property, Relation, Interaction, Action,
|
|
68
|
+
Payload, PayloadItem, Controller, MonoSystem,
|
|
69
|
+
Count, Transform, InteractionEventEntity
|
|
70
|
+
} from 'interaqt'
|
|
71
|
+
|
|
72
|
+
// --- Define your data model ---
|
|
73
|
+
|
|
74
|
+
const User = Entity.create({
|
|
75
|
+
name: 'User',
|
|
76
|
+
properties: [
|
|
77
|
+
Property.create({ name: 'name', type: 'string' }),
|
|
78
|
+
Property.create({
|
|
79
|
+
name: 'postCount',
|
|
80
|
+
computation: Count.create({ record: AuthorRelation })
|
|
81
|
+
})
|
|
82
|
+
]
|
|
83
|
+
})
|
|
84
|
+
|
|
85
|
+
const Post = Entity.create({
|
|
86
|
+
name: 'Post',
|
|
87
|
+
properties: [
|
|
88
|
+
Property.create({ name: 'title', type: 'string' }),
|
|
89
|
+
Property.create({ name: 'content', type: 'string' }),
|
|
90
|
+
Property.create({
|
|
91
|
+
name: 'likeCount',
|
|
92
|
+
computation: Count.create({ record: LikeRelation })
|
|
93
|
+
})
|
|
94
|
+
]
|
|
95
|
+
})
|
|
96
|
+
|
|
97
|
+
// --- Define relationships ---
|
|
98
|
+
|
|
99
|
+
const AuthorRelation = Relation.create({
|
|
100
|
+
source: User,
|
|
101
|
+
sourceProperty: 'posts',
|
|
102
|
+
target: Post,
|
|
103
|
+
targetProperty: 'author',
|
|
104
|
+
type: 'n:1'
|
|
105
|
+
})
|
|
106
|
+
|
|
107
|
+
const LikeRelation = Relation.create({
|
|
108
|
+
source: User,
|
|
109
|
+
sourceProperty: 'likedPosts',
|
|
110
|
+
target: Post,
|
|
111
|
+
targetProperty: 'likedBy',
|
|
112
|
+
type: 'n:n'
|
|
113
|
+
})
|
|
114
|
+
|
|
115
|
+
// --- Define interactions ---
|
|
116
|
+
|
|
117
|
+
const CreatePost = Interaction.create({
|
|
118
|
+
name: 'CreatePost',
|
|
119
|
+
action: Action.create({ name: 'createPost' }),
|
|
120
|
+
payload: Payload.create({
|
|
121
|
+
items: [
|
|
122
|
+
PayloadItem.create({ name: 'title', type: 'string', required: true }),
|
|
123
|
+
PayloadItem.create({ name: 'content', type: 'string', required: true })
|
|
124
|
+
]
|
|
125
|
+
})
|
|
126
|
+
})
|
|
127
|
+
|
|
128
|
+
const LikePost = Interaction.create({
|
|
129
|
+
name: 'LikePost',
|
|
130
|
+
action: Action.create({ name: 'likePost' }),
|
|
131
|
+
payload: Payload.create({
|
|
132
|
+
items: [
|
|
133
|
+
PayloadItem.create({ name: 'postId', base: Post, isRef: true })
|
|
134
|
+
]
|
|
135
|
+
})
|
|
136
|
+
})
|
|
137
|
+
|
|
138
|
+
// --- Boot the system ---
|
|
139
|
+
|
|
140
|
+
const system = new MonoSystem(new PGLiteDB())
|
|
141
|
+
const controller = new Controller({
|
|
142
|
+
system,
|
|
143
|
+
entities: [User, Post],
|
|
144
|
+
relations: [AuthorRelation, LikeRelation],
|
|
145
|
+
eventSources: [CreatePost, LikePost]
|
|
146
|
+
})
|
|
147
|
+
|
|
148
|
+
await controller.setup(true)
|
|
149
|
+
|
|
150
|
+
// --- Use it ---
|
|
151
|
+
|
|
152
|
+
await controller.dispatch(CreatePost, {
|
|
153
|
+
user: { id: 'user-1' },
|
|
154
|
+
payload: { title: 'Hello World', content: 'My first post' }
|
|
155
|
+
})
|
|
156
|
+
|
|
157
|
+
await controller.dispatch(LikePost, {
|
|
158
|
+
user: { id: 'user-2' },
|
|
159
|
+
payload: { postId: 'post-1' }
|
|
160
|
+
})
|
|
161
|
+
|
|
162
|
+
// post.likeCount is now 1 — automatically.
|
|
163
|
+
// user.postCount is now 1 — automatically.
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Reactive Computations
|
|
169
|
+
|
|
170
|
+
The real power of interaqt lives in its computation primitives. Attach them to any Property, Entity, or Relation — they react to data changes automatically.
|
|
171
|
+
|
|
172
|
+
| Computation | What it declares |
|
|
173
|
+
|---|---|
|
|
174
|
+
| **Count** | "This value IS the number of related records" |
|
|
175
|
+
| **Summation** | "This value IS the sum over a field in related records" |
|
|
176
|
+
| **WeightedSummation** | "This value IS a weighted sum (e.g., inventory = stock − sold)" |
|
|
177
|
+
| **Average** | "This value IS the average of a field across relations" |
|
|
178
|
+
| **Every** | "This boolean IS true when ALL related records satisfy a condition" |
|
|
179
|
+
| **Any** | "This boolean IS true when ANY related record satisfies a condition" |
|
|
180
|
+
| **Transform** | "This entity/relation IS created when a matching event occurs" |
|
|
181
|
+
| **StateMachine** | "This value IS the current state, transitioning on specific events" |
|
|
182
|
+
|
|
183
|
+
### Example: E-commerce Inventory
|
|
184
|
+
|
|
185
|
+
```typescript
|
|
186
|
+
const Product = Entity.create({
|
|
187
|
+
name: 'Product',
|
|
188
|
+
properties: [
|
|
189
|
+
Property.create({ name: 'initialStock', type: 'number' }),
|
|
190
|
+
Property.create({
|
|
191
|
+
name: 'currentStock',
|
|
192
|
+
// "current stock IS initial stock minus total quantities ordered"
|
|
193
|
+
computation: WeightedSummation.create({
|
|
194
|
+
record: OrderItemRelation,
|
|
195
|
+
callback: (item) => ({ weight: -1, value: item.quantity })
|
|
196
|
+
})
|
|
197
|
+
}),
|
|
198
|
+
Property.create({
|
|
199
|
+
name: 'totalSales',
|
|
200
|
+
computation: WeightedSummation.create({
|
|
201
|
+
record: OrderItemRelation,
|
|
202
|
+
callback: (item) => ({ weight: 1, value: item.quantity })
|
|
203
|
+
})
|
|
204
|
+
})
|
|
205
|
+
]
|
|
206
|
+
})
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
## Architecture
|
|
212
|
+
|
|
213
|
+
```
|
|
214
|
+
src/
|
|
215
|
+
├── core/ Data model: Entity, Relation, Property, Computation definitions
|
|
216
|
+
├── runtime/ Execution: Controller, System, Scheduler, computation handles
|
|
217
|
+
├── storage/ Persistence: ERStorage, SQL builder, query executors
|
|
218
|
+
├── builtins/ Built-in EventSource types: Interaction, Activity, User
|
|
219
|
+
└── drivers/ Database adapters
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**Dependency direction:** `builtins → runtime → storage → core`. Clean layers, no circular imports.
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Database Support
|
|
227
|
+
|
|
228
|
+
interaqt works with the database you already use:
|
|
229
|
+
|
|
230
|
+
| Driver | Package | Use Case |
|
|
231
|
+
|---|---|---|
|
|
232
|
+
| **PostgreSQL** | `pg` | Production |
|
|
233
|
+
| **SQLite** | `better-sqlite3` | Embedded / edge |
|
|
234
|
+
| **MySQL** | `mysql2` | Production |
|
|
235
|
+
| **PGLite** | `@electric-sql/pglite` | Testing (in-memory) |
|
|
236
|
+
|
|
237
|
+
```typescript
|
|
238
|
+
import { MonoSystem } from 'interaqt'
|
|
239
|
+
|
|
240
|
+
// Pick your driver
|
|
241
|
+
import { PostgreSQLDB } from 'interaqt/drivers'
|
|
242
|
+
const system = new MonoSystem(new PostgreSQLDB({ /* connection config */ }))
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## Installation
|
|
248
|
+
|
|
249
|
+
```bash
|
|
250
|
+
npm install interaqt
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
Then install the database driver you need:
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
# PostgreSQL
|
|
257
|
+
npm install pg
|
|
258
|
+
|
|
259
|
+
# SQLite
|
|
260
|
+
npm install better-sqlite3
|
|
261
|
+
|
|
262
|
+
# MySQL
|
|
263
|
+
npm install mysql2
|
|
264
|
+
|
|
265
|
+
# In-memory (for testing)
|
|
266
|
+
npm install @electric-sql/pglite
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
## Key Concepts at a Glance
|
|
272
|
+
|
|
273
|
+
| Concept | Role |
|
|
274
|
+
|---|---|
|
|
275
|
+
| **Entity** | A data type (User, Post, Order, ...) |
|
|
276
|
+
| **Property** | A field on an entity — can be a static value or a reactive computation |
|
|
277
|
+
| **Relation** | A typed connection between entities (1:1, 1:n, n:n) |
|
|
278
|
+
| **Interaction** | An event triggered by a user — the *only* way new data enters the system |
|
|
279
|
+
| **Action** | An identifier for an interaction type (not a handler — no logic!) |
|
|
280
|
+
| **Computation** | A reactive declaration: Count, Transform, StateMachine, etc. |
|
|
281
|
+
| **Activity** | An ordered sequence of related Interactions for complex workflows |
|
|
282
|
+
| **Controller** | The single dispatch entry point: `controller.dispatch(interaction, args)` |
|
|
283
|
+
|
|
284
|
+
---
|
|
285
|
+
|
|
286
|
+
## Advanced Features
|
|
287
|
+
|
|
288
|
+
- **StateMachine** — Model entity lifecycles with explicit state transitions triggered by events
|
|
289
|
+
- **Filtered Entities** — Virtual views over entities, like reactive database views
|
|
290
|
+
- **Activities** — Compose multi-step business workflows from ordered Interactions
|
|
291
|
+
- **Attributive Permissions** — Declarative, entity-aware access control
|
|
292
|
+
- **Dictionary** — Global reactive key-value state
|
|
293
|
+
- **Hard Deletion** — Built-in support for both soft and hard delete patterns
|
|
294
|
+
- **Side Effects** — Hook into record mutations for external integrations (email, payments, file uploads)
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
## Development
|
|
299
|
+
|
|
300
|
+
```bash
|
|
301
|
+
git clone https://github.com/InteraqtDev/interaqt.git
|
|
302
|
+
cd interaqt
|
|
303
|
+
|
|
304
|
+
npm install
|
|
305
|
+
npm test # Run all tests
|
|
306
|
+
npm run test:runtime # Runtime tests only
|
|
307
|
+
npm run test:storage # Storage tests only
|
|
308
|
+
npm run test:core # Core tests only
|
|
309
|
+
npm run build # Build to dist/
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Philosophy
|
|
315
|
+
|
|
316
|
+
> **Stop thinking "how to do." Start thinking "what it is."**
|
|
317
|
+
|
|
318
|
+
In interaqt, you never write update logic. You declare:
|
|
319
|
+
- *what* each piece of data is (a count, a sum, a state, a transformation)
|
|
320
|
+
- *when* entities and relations come into existence (through Interactions)
|
|
321
|
+
|
|
322
|
+
The framework handles propagation, consistency, and persistence. Your business logic becomes a clear, auditable set of declarations rather than a tangled web of imperative handlers.
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
|
|
326
|
+
## License
|
|
327
|
+
|
|
328
|
+
[MIT](./LICENSE)
|
|
@@ -3340,7 +3340,7 @@ async dispatch<TArgs, TResult>(
|
|
|
3340
3340
|
|
|
3341
3341
|
**Parameters**
|
|
3342
3342
|
- `eventSource` (EventSourceInstance, required): The event source instance to dispatch (object reference, not a name string)
|
|
3343
|
-
- `args` (TArgs, required): Event-specific arguments. For Interactions, this is `InteractionEventArgs` containing `user`, `payload`, and optional `query`.
|
|
3343
|
+
- `args` (TArgs, required): Event-specific arguments. For Interactions, this is `InteractionEventArgs` containing `user`, `payload`, `context`, and optional `query`.
|
|
3344
3344
|
|
|
3345
3345
|
**Note about ignoreGuard**: When `controller.ignoreGuard` is set to `true`, dispatch will bypass all guard checks (conditions, user validation, payload validation) defined in the event source.
|
|
3346
3346
|
|
|
@@ -3384,7 +3384,9 @@ type DispatchResponse = {
|
|
|
3384
3384
|
```typescript
|
|
3385
3385
|
const result = await controller.dispatch(CreatePostInteraction, {
|
|
3386
3386
|
user: { id: 'user1' },
|
|
3387
|
-
payload: { postData: { title: 'Hello', content: 'World' } }
|
|
3387
|
+
payload: { postData: { title: 'Hello', content: 'World' } },
|
|
3388
|
+
// Optional context (e.g. for agent tools)
|
|
3389
|
+
context: { source: 'agent', tool: 'create_post', timestamp: Date.now() }
|
|
3388
3390
|
})
|
|
3389
3391
|
|
|
3390
3392
|
// Check for errors
|
|
@@ -4233,6 +4235,7 @@ type InteractionEventArgs = {
|
|
|
4233
4235
|
modifier?: Record<string, unknown>
|
|
4234
4236
|
attributeQuery?: string[]
|
|
4235
4237
|
}
|
|
4238
|
+
context?: Record<string, any>
|
|
4236
4239
|
activityId?: string
|
|
4237
4240
|
}
|
|
4238
4241
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Action.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,
|
|
1
|
+
{"version":3,"file":"Action.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,OAAO,CAAC;AAGhE,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,qBAAa,MAAO,YAAW,cAAc;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAY;IACjB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAO/D,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAY;IAC9B,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,CAAM;IAExC,MAAM,CAAC,MAAM;;;;;MAKX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc;IAalF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM;IAYlD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,GAAG,cAAc;IAMnE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,cAAc;IAI9C,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc;CAI3C;AAGD,YAAY,EAAE,MAAM,IAAI,WAAW,EAAE,CAAC;AAGtC,eAAO,MAAM,SAAS,gBAAiC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Activity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"Activity.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Activity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { IInstance } from '../../core
|
|
2
|
-
import { BoolAtomDataInstance, BoolExpressionDataInstance, BoolExp } from '../../core/BoolExp.js';
|
|
1
|
+
import { IInstance, BoolAtomDataInstance, BoolExpressionDataInstance, BoolExp } from '../../core';
|
|
3
2
|
export interface AttributiveInstance extends IInstance {
|
|
4
3
|
stringContent?: string;
|
|
5
4
|
content: Function;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Attributive.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Attributive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"Attributive.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Attributive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Condition.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"Condition.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Condition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA2H,MAAM,OAAO,CAAC;AAG3J,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,SAAU,YAAW,iBAAiB;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAe;IACpB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;gBAET,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAQlE,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAe;IACjC,MAAM,CAAC,SAAS,EAAE,iBAAiB,EAAE,CAAM;IAE3C,MAAM,CAAC,MAAM;;;;;;;;;MASX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB;IAaxF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM;IAerD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,GAAG,iBAAiB;IASzE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,iBAAiB;IAIjD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;CAW9C"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { IInstance } from '../../core
|
|
2
|
-
import { BoolAtomDataInstance, BoolExpressionDataInstance, BoolExp } from '../../core/BoolExp.js';
|
|
1
|
+
import { IInstance, BoolAtomDataInstance, BoolExpressionDataInstance, BoolExp } from '../../core';
|
|
3
2
|
export interface ConditionsInstance extends IInstance {
|
|
4
3
|
content?: BoolExpressionDataInstance | BoolAtomDataInstance;
|
|
5
4
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Conditions.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Conditions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"Conditions.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Conditions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoD,oBAAoB,EAAE,0BAA0B,EAAE,OAAO,EAAoC,MAAM,OAAO,CAAC;AAEjL,MAAM,WAAW,kBAAmB,SAAQ,SAAS;IACnD,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,CAAC;CAC7D;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC5E;AAsBD,qBAAa,UAAW,YAAW,kBAAkB;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAgB;IACrB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,CAAC;gBAEvD,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAYnE,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAgB;IAClC,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE,CAAM;IAE5C,MAAM,CAAC,MAAM;;;;;;MAMX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,kBAAkB;IAa1F,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAatD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,GAAG,kBAAkB;IAO3E,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,kBAAkB;IAIlD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB;CAI/C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Data.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"Data.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Data.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { IInstance } from '../../core
|
|
2
|
-
import { BoolAtomDataInstance, BoolExpressionDataInstance } from '../../core/BoolExp.js';
|
|
1
|
+
import { IInstance, BoolAtomDataInstance, BoolExpressionDataInstance } from '../../core';
|
|
3
2
|
export interface DataAttributivesInstance extends IInstance {
|
|
4
3
|
content?: BoolExpressionDataInstance | BoolAtomDataInstance;
|
|
5
4
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataAttributives.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/DataAttributives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"DataAttributives.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/DataAttributives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoD,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,OAAO,CAAC;AAEtI,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,CAAC;CAC7D;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,CAAC;CAC7D;AAED,qBAAa,gBAAiB,YAAW,wBAAwB;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAsB;IAC3B,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,OAAO,CAAC,EAAE,0BAA0B,GAAG,oBAAoB,CAAC;gBAEvD,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAOzE,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAsB;IACxC,MAAM,CAAC,SAAS,EAAE,wBAAwB,EAAE,CAAM;IAElD,MAAM,CAAC,MAAM;;;;;;MAMX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,wBAAwB;IAatG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,wBAAwB,GAAG,MAAM;IAa5D,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,OAAO,GAAG,wBAAwB;IAOvF,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,wBAAwB;IAIxD,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,wBAAwB;CAIrD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,
|
|
1
|
+
{"version":3,"file":"Event.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,OAAO,CAAC;AAGhE,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,qBAAa,KAAM,YAAW,aAAa;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAW;IAChB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAO9D,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAW;IAC7B,MAAM,CAAC,SAAS,EAAE,aAAa,EAAE,CAAM;IAEvC,MAAM,CAAC,MAAM;;;;;MAKX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,aAAa;IAahF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM;IAYjD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,aAAa;IAMjE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,aAAa;IAI7C,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAI1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Gateway.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,
|
|
1
|
+
{"version":3,"file":"Gateway.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,OAAO,CAAC;AAGhE,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;CACd;AAGD,qBAAa,OAAQ,YAAW,eAAe;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAa;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;gBAER,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAOhE,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAa;IAC/B,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,CAAM;IAEzC,MAAM,CAAC,MAAM;;;;;MAKX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;IAapF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM;IAYnD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,eAAe;IAMrE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,eAAe;IAI/C,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;CAI5C"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
+
import { EntityInstance, RelationInstance, EventSourceInstance } from '../../core';
|
|
2
|
+
import { Controller } from '../../runtime';
|
|
1
3
|
import { ActionInstance } from './Action.js';
|
|
2
4
|
import { ConditionInstance } from './Condition.js';
|
|
3
5
|
import { ConditionsInstance } from './Conditions.js';
|
|
4
6
|
import { AttributiveInstance, AttributivesInstance } from './Attributive.js';
|
|
5
7
|
import { PayloadInstance } from './Payload.js';
|
|
6
|
-
import { EntityInstance } from '../../core/Entity.js';
|
|
7
|
-
import { RelationInstance } from '../../core/Relation.js';
|
|
8
8
|
import { DataPolicyInstance } from './Data.js';
|
|
9
|
-
|
|
10
|
-
export interface InteractionInstance extends EventSourceInstance<InteractionEventArgs> {
|
|
9
|
+
export interface InteractionInstance extends EventSourceInstance<InteractionEventArgs, unknown> {
|
|
11
10
|
conditions?: ConditionsInstance | ConditionInstance;
|
|
12
11
|
userAttributives?: AttributivesInstance | AttributiveInstance;
|
|
13
12
|
userRef?: AttributiveInstance;
|
|
@@ -21,9 +20,10 @@ export type InteractionEventArgs = {
|
|
|
21
20
|
query?: EventQuery;
|
|
22
21
|
payload?: EventPayload;
|
|
23
22
|
activityId?: string;
|
|
23
|
+
context?: Record<string, unknown>;
|
|
24
24
|
};
|
|
25
25
|
export type EventQuery = {
|
|
26
|
-
match?:
|
|
26
|
+
match?: unknown;
|
|
27
27
|
modifier?: Record<string, unknown>;
|
|
28
28
|
attributeQuery?: string[];
|
|
29
29
|
};
|
|
@@ -61,9 +61,9 @@ export declare class Interaction implements InteractionInstance {
|
|
|
61
61
|
data?: EntityInstance | RelationInstance;
|
|
62
62
|
dataPolicy?: DataPolicyInstance;
|
|
63
63
|
entity: EntityInstance;
|
|
64
|
-
guard?: (this:
|
|
65
|
-
mapEventData?: (args: InteractionEventArgs) => Record<string,
|
|
66
|
-
resolve?: (this:
|
|
64
|
+
guard?: (this: Controller, args: InteractionEventArgs) => Promise<void>;
|
|
65
|
+
mapEventData?: (args: InteractionEventArgs) => Record<string, unknown>;
|
|
66
|
+
resolve?: (this: Controller, args: InteractionEventArgs) => Promise<unknown>;
|
|
67
67
|
constructor(args: InteractionCreateArgs, options?: {
|
|
68
68
|
uuid?: string;
|
|
69
69
|
});
|
|
@@ -121,12 +121,19 @@ export declare class Interaction implements InteractionInstance {
|
|
|
121
121
|
}
|
|
122
122
|
export declare class InteractionGuardError extends Error {
|
|
123
123
|
readonly type: string;
|
|
124
|
-
readonly error:
|
|
124
|
+
readonly error: unknown;
|
|
125
125
|
readonly checkType: string;
|
|
126
126
|
constructor(message: string, options: {
|
|
127
127
|
type: string;
|
|
128
128
|
checkType: string;
|
|
129
|
-
error?:
|
|
129
|
+
error?: unknown;
|
|
130
130
|
});
|
|
131
131
|
}
|
|
132
|
+
export declare function checkCondition(controller: {
|
|
133
|
+
system: {
|
|
134
|
+
storage: any;
|
|
135
|
+
};
|
|
136
|
+
ignoreGuard: boolean;
|
|
137
|
+
}, interaction: InteractionInstance, eventArgs: InteractionEventArgs): Promise<void>;
|
|
138
|
+
export declare function checkPayload(_controller: unknown, interaction: InteractionInstance, eventArgs: InteractionEventArgs): Promise<void>;
|
|
132
139
|
//# sourceMappingURL=Interaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Interaction.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Interaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Interaction.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Interaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,
|
|
1
|
+
{"version":3,"file":"Payload.d.ts","sourceRoot":"","sources":["../../../src/builtins/interaction/Payload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgC,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAC/B;AAED,qBAAa,OAAQ,YAAW,eAAe;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,SAAa;IAClB,QAAQ,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,KAAK,EAAE,mBAAmB,EAAE,CAAC;gBAExB,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IAOhE,MAAM,CAAC,OAAO,EAAG,IAAI,CAAU;IAC/B,MAAM,CAAC,WAAW,SAAa;IAC/B,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,CAAM;IAEzC,MAAM,CAAC,MAAM;;;;;;;MAOX;IAEF,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;IAapF,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM;IAYnD,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,eAAe;IAMrE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,eAAe;IAI/C,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;IAItC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;CAI5C"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { IInstance } from '../../core
|
|
1
|
+
import { IInstance, EntityInstance } from '../../core';
|
|
2
2
|
import { AttributiveInstance } from './Attributive.js';
|
|
3
|
-
import { EntityInstance } from '../../core/Entity.js';
|
|
4
3
|
export interface PayloadItemInstance extends IInstance {
|
|
5
4
|
name: string;
|
|
6
5
|
type: string;
|