@adobe/data 0.9.41 → 0.9.42
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/AGENTS.md +1 -1
- package/dist/ecs/database/combine-plugins.d.ts +3 -3
- package/dist/ecs/database/combine-plugins.js +24 -0
- package/dist/ecs/database/combine-plugins.js.map +1 -1
- package/dist/ecs/database/create-plugin.d.ts +17 -18
- package/dist/ecs/database/create-plugin.js +2 -1
- package/dist/ecs/database/create-plugin.js.map +1 -1
- package/dist/ecs/database/create-plugin.test.js +8 -8
- package/dist/ecs/database/create-plugin.test.js.map +1 -1
- package/dist/ecs/database/create-plugin.type-test.js +17 -37
- package/dist/ecs/database/create-plugin.type-test.js.map +1 -1
- package/dist/ecs/database/database.d.ts +8 -11
- package/dist/ecs/database/public/create-database.d.ts +2 -2
- package/dist/ecs/database/public/create-database.js +12 -4
- package/dist/ecs/database/public/create-database.js.map +1 -1
- package/dist/ecs/database/public/create-database.test.js +34 -45
- package/dist/ecs/database/public/create-database.test.js.map +1 -1
- package/dist/ecs/plugins/scheduler/scheduler.d.ts +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/references/data-lit/package.json +1 -1
- package/references/data-lit-tictactoe/package.json +1 -1
- package/references/data-lit-tictactoe/src/state/agent-plugin.ts +5 -5
- package/references/data-react/package.json +1 -1
- package/references/data-react-hello/package.json +1 -1
- package/references/data-react-pixie/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -71,7 +71,7 @@ Source lives under `src/` with one main `index.ts` per area; built output is in
|
|
|
71
71
|
| Property | Purpose |
|
|
72
72
|
|----------|---------|
|
|
73
73
|
| `extends` | Base plugin to extend (single parent only) |
|
|
74
|
-
| `services` | `(db) =>
|
|
74
|
+
| `services` | `(db) => { name1: service1, ... }` — single factory returning all services; extended plugin services initialize first |
|
|
75
75
|
| `components` | Schema object for ECS component data. Use `transient: true` for non-persistable values (DOM refs, HTML elements). |
|
|
76
76
|
| `resources` | `{ default: value as Type }` — global state. Use `as Type` for compile-time type; use `null as unknown as Type` for resources initialized later in a system. |
|
|
77
77
|
| `archetypes` | `['comp1', 'comp2']` — standard ECS archetypes for querying and inserting related components |
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Simplify } from "../../types/types.js";
|
|
2
|
-
import type { Database } from "./database.js";
|
|
2
|
+
import type { Database, FromServiceFactory } from "./database.js";
|
|
3
3
|
type IntersectAll<T extends readonly unknown[]> = Simplify<T extends readonly [infer H, ...infer R] ? H & IntersectAll<R> : unknown>;
|
|
4
4
|
type UnionAll<T extends readonly unknown[]> = Simplify<T extends readonly [infer H, ...infer R] ? H | UnionAll<R> : never>;
|
|
5
5
|
export type CombinePlugins<Plugins extends readonly Database.Plugin[]> = Database.Plugin<Simplify<{} & IntersectAll<{
|
|
@@ -14,8 +14,8 @@ export type CombinePlugins<Plugins extends readonly Database.Plugin[]> = Databas
|
|
|
14
14
|
[K in keyof Plugins]: Plugins[K] extends Database.Plugin<any, any, any, any, infer S, any, any, any> ? S : never;
|
|
15
15
|
}>>, string>, Simplify<{} & IntersectAll<{
|
|
16
16
|
[K in keyof Plugins]: Plugins[K] extends Database.Plugin<any, any, any, any, any, infer AD, any, any> ? AD : never;
|
|
17
|
-
}>>, Simplify<{} & IntersectAll<{
|
|
18
|
-
[K in keyof Plugins]: Plugins[K] extends Database.Plugin<any, any, any, any, any, any, infer SVF, any> ? SVF :
|
|
17
|
+
}>>, (db: any) => Simplify<{} & IntersectAll<{
|
|
18
|
+
[K in keyof Plugins]: Plugins[K] extends Database.Plugin<any, any, any, any, any, any, infer SVF, any> ? FromServiceFactory<SVF> : {};
|
|
19
19
|
}>>, Simplify<{} & IntersectAll<{
|
|
20
20
|
[K in keyof Plugins]: Plugins[K] extends Database.Plugin<any, any, any, any, any, any, any, infer CVF> ? CVF : never;
|
|
21
21
|
}>>>;
|
|
@@ -9,7 +9,31 @@
|
|
|
9
9
|
*/
|
|
10
10
|
export function combinePlugins(...plugins) {
|
|
11
11
|
const keys = ['services', 'components', 'resources', 'archetypes', 'computed', 'transactions', 'actions', 'systems'];
|
|
12
|
+
const emptyServiceFactory = () => ({});
|
|
12
13
|
const merge = (base, next) => Object.fromEntries(keys.map(key => {
|
|
14
|
+
if (key === "services") {
|
|
15
|
+
const baseFn = typeof base[key] === "function" ? base[key] : emptyServiceFactory;
|
|
16
|
+
const nextFn = typeof next[key] === "function" ? next[key] : emptyServiceFactory;
|
|
17
|
+
if (baseFn === emptyServiceFactory)
|
|
18
|
+
return [key, nextFn];
|
|
19
|
+
if (nextFn === emptyServiceFactory)
|
|
20
|
+
return [key, baseFn];
|
|
21
|
+
return [key, (db) => {
|
|
22
|
+
const s1 = baseFn(db) ?? {};
|
|
23
|
+
Object.assign(db.services, s1);
|
|
24
|
+
const s2 = nextFn(db) ?? {};
|
|
25
|
+
const merged = { ...s1 };
|
|
26
|
+
for (const k of Object.keys(s2)) {
|
|
27
|
+
// if (k in merged && merged[k] !== (s2 as Record<string, unknown>)[k]) {
|
|
28
|
+
// throw new Error(
|
|
29
|
+
// `Plugin combine conflict: services.${k} must be identical (===) across plugins`
|
|
30
|
+
// );
|
|
31
|
+
// }
|
|
32
|
+
merged[k] = s2[k];
|
|
33
|
+
}
|
|
34
|
+
return merged;
|
|
35
|
+
}];
|
|
36
|
+
}
|
|
13
37
|
const baseObj = base[key] ?? {};
|
|
14
38
|
const nextObj = next[key] ?? {};
|
|
15
39
|
// All keys require identity (===) check
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"combine-plugins.js","sourceRoot":"","sources":["../../../src/ecs/database/combine-plugins.ts"],"names":[],"mappings":"AAAA,uDAAuD;
|
|
1
|
+
{"version":3,"file":"combine-plugins.js","sourceRoot":"","sources":["../../../src/ecs/database/combine-plugins.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Database, SystemFunction,
|
|
1
|
+
import { Database, SystemFunction, ServiceFactory, FromServiceFactory, FromComputedFactories, type PluginComputedFactories } from "./database.js";
|
|
2
2
|
import type { ComponentSchemas } from "../component-schemas.js";
|
|
3
3
|
import type { ResourceSchemas } from "../resource-schemas.js";
|
|
4
4
|
import type { ArchetypeComponents } from "../store/archetype-components.js";
|
|
@@ -31,10 +31,10 @@ type RemoveIndex<T> = Simplify<{
|
|
|
31
31
|
* ```ts
|
|
32
32
|
* Database.Plugin.create({
|
|
33
33
|
* extends: basePlugin, // 1. extends first
|
|
34
|
-
* services: {
|
|
35
|
-
* myService:
|
|
36
|
-
* }
|
|
37
|
-
* components: { ... },
|
|
34
|
+
* services: (db) => ({ // 2. single factory returns all services
|
|
35
|
+
* myService: createMyService(db.resources.config),
|
|
36
|
+
* }),
|
|
37
|
+
* components: { ... }, // 3. components
|
|
38
38
|
* resources: { ... }, // 4. resources
|
|
39
39
|
* archetypes: { ... }, // 5. archetypes
|
|
40
40
|
* computed: { ... }, // 6. computed
|
|
@@ -44,10 +44,10 @@ type RemoveIndex<T> = Simplify<{
|
|
|
44
44
|
* })
|
|
45
45
|
* ```
|
|
46
46
|
*
|
|
47
|
-
* **Services**:
|
|
48
|
-
* extended plugins are initialized first,
|
|
49
|
-
*
|
|
50
|
-
*
|
|
47
|
+
* **Services**: A single factory function `(db) => ({ name1: service1, ... })` that
|
|
48
|
+
* creates all plugin services. Services from extended plugins are initialized first,
|
|
49
|
+
* so the factory receives a database with access to extended plugin's resources,
|
|
50
|
+
* transactions, actions, and services.
|
|
51
51
|
*
|
|
52
52
|
* **Computed**: Factory functions that return values extending Observe<unknown>. Each receives
|
|
53
53
|
* the full db (CS, RS, A from current plugin and extend). Database keeps ComputedFactories
|
|
@@ -55,23 +55,22 @@ type RemoveIndex<T> = Simplify<{
|
|
|
55
55
|
*
|
|
56
56
|
* @throws Error if properties are not in the correct order
|
|
57
57
|
*/
|
|
58
|
-
type FullDBForPlugin<CS, RS, A, TD, S extends string, AD, XP extends Database.Plugin, SVF extends
|
|
59
|
-
|
|
58
|
+
type FullDBForPlugin<CS, RS, A, TD, S extends string, AD, XP extends Database.Plugin, SVF extends ServiceFactory<Database.FromPlugin<XP>>> = Database<FromSchemas<CS & XP['components']>, FromSchemas<RS & XP['resources']>, A & XP['archetypes'], ToTransactionFunctions<TD & XP['transactions']>, S | StringKeyof<XP['systems']>, ToActionFunctions<AD & XP['actions']>, FromServiceFactory<SVF> & FromServiceFactory<XP['services']>>;
|
|
59
|
+
declare const emptyServiceFactory: (_db: unknown) => Record<string, unknown>;
|
|
60
|
+
export declare function createPlugin<const XP extends Database.Plugin<{}, {}, {}, {}, never, {}, any, {}>, const CS extends ComponentSchemas, const RS extends ResourceSchemas, const A extends ArchetypeComponents<StringKeyof<RemoveIndex<CS> & XP['components']>>, const TD extends TransactionDeclarations<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes']>, const AD, const S extends string = never, const SVF extends ServiceFactory<Database.FromPlugin<XP>> = typeof emptyServiceFactory, const CVF extends PluginComputedFactories<FullDBForPlugin<RemoveIndex<CS>, RemoveIndex<RS>, RemoveIndex<A>, RemoveIndex<TD>, S, RemoveIndex<AD> & XP['actions'], XP, SVF>> = {}>(plugins: {
|
|
60
61
|
extends?: XP;
|
|
61
|
-
services?: SVF &
|
|
62
|
-
readonly [K: string]: (db: Database.FromPlugin<XP>) => unknown;
|
|
63
|
-
};
|
|
62
|
+
services?: SVF & ((db: Database.FromPlugin<XP>) => Record<string, unknown>);
|
|
64
63
|
components?: CS;
|
|
65
64
|
resources?: RS;
|
|
66
65
|
archetypes?: A;
|
|
67
|
-
computed?: CVF & PluginComputedFactories<FullDBForPlugin<RemoveIndex<CS>, RemoveIndex<RS>, RemoveIndex<A>, {}, string, RemoveIndex<AD> & XP['actions'], XP,
|
|
66
|
+
computed?: CVF & PluginComputedFactories<FullDBForPlugin<RemoveIndex<CS>, RemoveIndex<RS>, RemoveIndex<A>, {}, string, RemoveIndex<AD> & XP['actions'], XP, SVF>>;
|
|
68
67
|
transactions?: TD;
|
|
69
68
|
actions?: AD & {
|
|
70
|
-
readonly [K: string]: (db: Database<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes'], ToTransactionFunctions<RemoveIndex<TD> & XP['transactions']>, S | StringKeyof<XP['systems']>, ToActionFunctions<XP['actions']>,
|
|
69
|
+
readonly [K: string]: (db: Database<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes'], ToTransactionFunctions<RemoveIndex<TD> & XP['transactions']>, S | StringKeyof<XP['systems']>, ToActionFunctions<XP['actions']>, FromServiceFactory<SVF> & FromServiceFactory<XP['services']>, FromComputedFactories<RemoveIndex<CVF> & XP['computed']>>, input?: any) => any;
|
|
71
70
|
};
|
|
72
71
|
systems?: {
|
|
73
72
|
readonly [K in S]: {
|
|
74
|
-
readonly create: (db: Database<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes'], ToTransactionFunctions<RemoveIndex<TD> & XP['transactions']>, S | StringKeyof<XP['systems']>, ToActionFunctions<RemoveIndex<AD> & XP['actions']>,
|
|
73
|
+
readonly create: (db: Database<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes'], ToTransactionFunctions<RemoveIndex<TD> & XP['transactions']>, S | StringKeyof<XP['systems']>, ToActionFunctions<RemoveIndex<AD> & XP['actions']>, FromServiceFactory<SVF> & FromServiceFactory<XP['services']>, FromComputedFactories<RemoveIndex<CVF> & XP['computed']>> & {
|
|
75
74
|
readonly store: Store<FromSchemas<RemoveIndex<CS> & XP['components']>, FromSchemas<RemoveIndex<RS> & XP['resources']>, RemoveIndex<A> & XP['archetypes']>;
|
|
76
75
|
}) => SystemFunction | void;
|
|
77
76
|
readonly schedule?: {
|
|
@@ -83,6 +82,6 @@ export declare function createPlugin<const XP extends Database.Plugin<{}, {}, {}
|
|
|
83
82
|
};
|
|
84
83
|
}): CombinePlugins<[
|
|
85
84
|
XP,
|
|
86
|
-
Database.Plugin<RemoveIndex<CS>, RemoveIndex<RS>, RemoveIndex<A>, RemoveIndex<TD>, S, AD & ActionDeclarations<FromSchemas<RemoveIndex<CS>>, FromSchemas<RemoveIndex<RS>>, RemoveIndex<A>, ToTransactionFunctions<RemoveIndex<TD>>, S>,
|
|
85
|
+
Database.Plugin<RemoveIndex<CS>, RemoveIndex<RS>, RemoveIndex<A>, RemoveIndex<TD>, S, AD & ActionDeclarations<FromSchemas<RemoveIndex<CS>>, FromSchemas<RemoveIndex<RS>>, RemoveIndex<A>, ToTransactionFunctions<RemoveIndex<TD>>, S>, SVF, RemoveIndex<CVF>>
|
|
87
86
|
]>;
|
|
88
87
|
export {};
|
|
@@ -21,11 +21,12 @@ function validatePropertyOrder(plugins) {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
+
const emptyServiceFactory = (_db) => ({});
|
|
24
25
|
export function createPlugin(plugins) {
|
|
25
26
|
validatePropertyOrder(plugins);
|
|
26
27
|
// Normalize plugins descriptor to a plugin object in correct order
|
|
27
28
|
const plugin = {
|
|
28
|
-
services: plugins.services ??
|
|
29
|
+
services: plugins.services ?? emptyServiceFactory,
|
|
29
30
|
components: plugins.components ?? {},
|
|
30
31
|
resources: plugins.resources ?? {},
|
|
31
32
|
archetypes: plugins.archetypes ?? {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-plugin.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAUvD,OAAO,EAAkB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA4BtE,SAAS,qBAAqB,CAAC,OAAgC;IAC3D,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzI,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC;IAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,6CAA6C,GAAG,4BAA4B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;QACD,uDAAuD;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,iBAAiB,GAAG,aAAa,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACX,qCAAqC,GAAG,uBAAuB,OAAO,KAAK;oBAC3E,mBAAmB,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrF,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC;AA2DD,MAAM,UAAU,YAAY,CAWxB,
|
|
1
|
+
{"version":3,"file":"create-plugin.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAUvD,OAAO,EAAkB,cAAc,EAAE,MAAM,sBAAsB,CAAC;AA4BtE,SAAS,qBAAqB,CAAC,OAAgC;IAC3D,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzI,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,CAAC;IAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,6CAA6C,GAAG,4BAA4B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5H,CAAC;QACD,uDAAuD;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACzD,IAAI,iBAAiB,GAAG,aAAa,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CACX,qCAAqC,GAAG,uBAAuB,OAAO,KAAK;oBAC3E,mBAAmB,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrF,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC;AA2DD,MAAM,mBAAmB,GAAG,CAAC,GAAY,EAA2B,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAE5E,MAAM,UAAU,YAAY,CAWxB,OA4CC;IAWD,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAE/B,mEAAmE;IACnE,MAAM,MAAM,GAAQ;QAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,mBAAmB;QACjD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;QACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,EAAE;QACxC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;KACjC,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC"}
|
|
@@ -15,7 +15,7 @@ describe("Database.Plugin.create", () => {
|
|
|
15
15
|
expect(() => {
|
|
16
16
|
Database.Plugin.create({
|
|
17
17
|
components: {},
|
|
18
|
-
services: {}, // services should come before components
|
|
18
|
+
services: () => ({}), // services should come before components
|
|
19
19
|
});
|
|
20
20
|
}).toThrow('Property "services" must come before "components"');
|
|
21
21
|
expect(() => {
|
|
@@ -44,7 +44,7 @@ describe("Database.Plugin.create", () => {
|
|
|
44
44
|
expect(() => {
|
|
45
45
|
Database.Plugin.create({
|
|
46
46
|
extends: undefined,
|
|
47
|
-
services: {},
|
|
47
|
+
services: () => ({}),
|
|
48
48
|
components: {},
|
|
49
49
|
resources: {},
|
|
50
50
|
archetypes: {},
|
|
@@ -56,7 +56,7 @@ describe("Database.Plugin.create", () => {
|
|
|
56
56
|
}).not.toThrow();
|
|
57
57
|
expect(() => {
|
|
58
58
|
Database.Plugin.create({
|
|
59
|
-
services: {},
|
|
59
|
+
services: () => ({}),
|
|
60
60
|
components: {},
|
|
61
61
|
resources: {},
|
|
62
62
|
archetypes: {},
|
|
@@ -112,16 +112,16 @@ describe("Database.Plugin.create", () => {
|
|
|
112
112
|
expect(scaledValue).toBe(30);
|
|
113
113
|
});
|
|
114
114
|
it("should allow actions to access services from the same plugin", () => {
|
|
115
|
-
const authService = { token:
|
|
115
|
+
const authService = { token: "test", isAuthenticated: true };
|
|
116
116
|
const plugin = Database.Plugin.create({
|
|
117
|
-
services: {
|
|
118
|
-
auth: () => authService,
|
|
119
|
-
},
|
|
117
|
+
services: () => ({ auth: authService }),
|
|
120
118
|
actions: {
|
|
121
119
|
getAuth: (db) => db.services.auth,
|
|
122
120
|
},
|
|
123
121
|
});
|
|
124
|
-
|
|
122
|
+
const db = Database.create(plugin);
|
|
123
|
+
expect(db.services.auth).toBeDefined();
|
|
124
|
+
expect(db.services.auth).toBe(authService);
|
|
125
125
|
expect(plugin.actions.getAuth).toBeDefined();
|
|
126
126
|
});
|
|
127
127
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-plugin.test.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-plugin.test.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -816,17 +816,13 @@ function checkDatabaseTypeFromExtendedPlugin() {
|
|
|
816
816
|
// Test: Basic service factory inference
|
|
817
817
|
function validServiceFactoryBasic() {
|
|
818
818
|
const plugin = createPlugin({
|
|
819
|
-
services: {
|
|
820
|
-
auth: (_db) => ({ token: 'test', isAuthenticated: true }),
|
|
821
|
-
},
|
|
819
|
+
services: (db) => ({ auth: { token: "test", isAuthenticated: true } }),
|
|
822
820
|
});
|
|
823
821
|
}
|
|
824
822
|
// Test: Service accessible in systems
|
|
825
823
|
function validServiceAccessInSystems() {
|
|
826
824
|
const plugin = createPlugin({
|
|
827
|
-
services: {
|
|
828
|
-
auth: (_db) => ({ token: 'test', isAuthenticated: true }),
|
|
829
|
-
},
|
|
825
|
+
services: () => ({ auth: { token: "test", isAuthenticated: true } }),
|
|
830
826
|
systems: {
|
|
831
827
|
testSystem: {
|
|
832
828
|
create: (db) => () => {
|
|
@@ -849,23 +845,17 @@ function validServiceFactoryWithExtendedPlugin() {
|
|
|
849
845
|
});
|
|
850
846
|
const extendedPlugin = createPlugin({
|
|
851
847
|
extends: basePlugin,
|
|
852
|
-
services: {
|
|
853
|
-
//
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
// Note: ToTransactionFunctions wraps the input type with AsyncArgsProvider union
|
|
857
|
-
db.transactions.setEnvironment(null);
|
|
858
|
-
return { token: 'test', isAuthenticated: true };
|
|
859
|
-
},
|
|
848
|
+
services: (db) => {
|
|
849
|
+
// Verify db has access to base plugin's transactions
|
|
850
|
+
db.transactions.setEnvironment(null);
|
|
851
|
+
return { auth: { token: "test", isAuthenticated: true } };
|
|
860
852
|
},
|
|
861
853
|
});
|
|
862
854
|
}
|
|
863
855
|
// Test: Service accessible in actions (same plugin)
|
|
864
856
|
function validServiceAccessInActions() {
|
|
865
857
|
const plugin = createPlugin({
|
|
866
|
-
services: {
|
|
867
|
-
auth: (_db) => ({ token: 'test', isAuthenticated: true }),
|
|
868
|
-
},
|
|
858
|
+
services: () => ({ auth: { token: "test", isAuthenticated: true } }),
|
|
869
859
|
actions: {
|
|
870
860
|
useAuth: (db) => {
|
|
871
861
|
},
|
|
@@ -875,9 +865,7 @@ function validServiceAccessInActions() {
|
|
|
875
865
|
// Test: Extended plugin services accessible in current plugin's actions
|
|
876
866
|
function validExtendedServiceAccessInActions() {
|
|
877
867
|
const basePlugin = createPlugin({
|
|
878
|
-
services: {
|
|
879
|
-
auth: (_db) => ({ token: 'test', isAuthenticated: true }),
|
|
880
|
-
},
|
|
868
|
+
services: () => ({ auth: { token: "test", isAuthenticated: true } }),
|
|
881
869
|
});
|
|
882
870
|
const extendedPlugin = createPlugin({
|
|
883
871
|
extends: basePlugin,
|
|
@@ -896,20 +884,14 @@ function validChainedExtensionWithServices() {
|
|
|
896
884
|
});
|
|
897
885
|
const level2 = createPlugin({
|
|
898
886
|
extends: level1,
|
|
899
|
-
services: {
|
|
900
|
-
|
|
901
|
-
auth: (db) => {
|
|
902
|
-
return { token: 'test', isAuthenticated: true };
|
|
903
|
-
},
|
|
887
|
+
services: (db) => {
|
|
888
|
+
return { auth: { token: "test", isAuthenticated: true } };
|
|
904
889
|
},
|
|
905
890
|
});
|
|
906
891
|
const level3 = createPlugin({
|
|
907
892
|
extends: level2,
|
|
908
|
-
services: {
|
|
909
|
-
|
|
910
|
-
session: (db) => {
|
|
911
|
-
return { sessionId: 'abc123' };
|
|
912
|
-
},
|
|
893
|
+
services: (db) => {
|
|
894
|
+
return { session: { sessionId: "abc123" } };
|
|
913
895
|
},
|
|
914
896
|
systems: {
|
|
915
897
|
testSystem: {
|
|
@@ -922,13 +904,11 @@ function validChainedExtensionWithServices() {
|
|
|
922
904
|
// Test: Service cannot access current plugin's services (only extended)
|
|
923
905
|
function invalidServiceAccessCurrentPluginServices() {
|
|
924
906
|
createPlugin({
|
|
925
|
-
services: {
|
|
926
|
-
a
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
return { value: 2 };
|
|
931
|
-
},
|
|
907
|
+
services: (db) => {
|
|
908
|
+
// @ts-expect-error - Service 'a' is not accessible via db.services (same plugin)
|
|
909
|
+
const _value = db.services.a;
|
|
910
|
+
const a = { value: 1 };
|
|
911
|
+
return { a, b: { value: 2 } };
|
|
932
912
|
},
|
|
933
913
|
});
|
|
934
914
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-plugin.type-test.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.type-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-plugin.type-test.js","sourceRoot":"","sources":["../../../src/ecs/database/create-plugin.type-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,17 +40,14 @@ export type SystemDeclarations<S extends string> = {
|
|
|
40
40
|
readonly [K in S]: SystemDeclaration;
|
|
41
41
|
};
|
|
42
42
|
/**
|
|
43
|
-
* Service
|
|
43
|
+
* Service factory - single function that creates all plugin services from the database.
|
|
44
|
+
* Returns an object with named services matching the plugin's service declarations.
|
|
44
45
|
*/
|
|
45
|
-
export type
|
|
46
|
-
readonly [K: string]: (db: DB) => unknown;
|
|
47
|
-
};
|
|
46
|
+
export type ServiceFactory<DB = any> = (db: DB) => Record<string, unknown>;
|
|
48
47
|
/**
|
|
49
|
-
* Extracts service types from service
|
|
48
|
+
* Extracts service types from a service factory function's return type.
|
|
50
49
|
*/
|
|
51
|
-
export type
|
|
52
|
-
[K in keyof SF]: SF[K] extends (db: any) => infer R ? R : never;
|
|
53
|
-
};
|
|
50
|
+
export type FromServiceFactory<SF> = SF extends (...args: any[]) => infer R ? R : {};
|
|
54
51
|
/**
|
|
55
52
|
* Computed factories map - functions that create computed values from the database.
|
|
56
53
|
* Used on Database and Plugin for flexible typing (return type unknown).
|
|
@@ -107,7 +104,7 @@ export interface Database<C extends Components = {}, R extends ResourceComponent
|
|
|
107
104
|
};
|
|
108
105
|
toData(): unknown;
|
|
109
106
|
fromData(data: unknown): void;
|
|
110
|
-
extend<P extends Database.Plugin<any, any, any, any, any, any, any, any>>(plugin: P): Database<C & (P extends Database.Plugin<infer XC, any, any, any, any, any, any, any> ? FromSchemas<XC> : never), R & (P extends Database.Plugin<any, infer XR, any, any, any, any, any, any> ? FromSchemas<XR> : never), A & (P extends Database.Plugin<any, any, infer XA, any, any, any, any, any> ? XA : never), F & (P extends Database.Plugin<any, any, any, infer XTD, any, any, any, any> ? ToTransactionFunctions<XTD> : never), S | (P extends Database.Plugin<any, any, any, any, infer XS, any, any, any> ? XS : never), AF & (P extends Database.Plugin<any, any, any, any, any, infer XAD, any, any> ? ToActionFunctions<XAD> : never), SV & (P extends Database.Plugin<any, any, any, any, any, any, infer XSVF, any> ?
|
|
107
|
+
extend<P extends Database.Plugin<any, any, any, any, any, any, any, any>>(plugin: P): Database<C & (P extends Database.Plugin<infer XC, any, any, any, any, any, any, any> ? FromSchemas<XC> : never), R & (P extends Database.Plugin<any, infer XR, any, any, any, any, any, any> ? FromSchemas<XR> : never), A & (P extends Database.Plugin<any, any, infer XA, any, any, any, any, any> ? XA : never), F & (P extends Database.Plugin<any, any, any, infer XTD, any, any, any, any> ? ToTransactionFunctions<XTD> : never), S | (P extends Database.Plugin<any, any, any, any, infer XS, any, any, any> ? XS : never), AF & (P extends Database.Plugin<any, any, any, any, any, infer XAD, any, any> ? ToActionFunctions<XAD> : never), SV & (P extends Database.Plugin<any, any, any, any, any, any, infer XSVF, any> ? FromServiceFactory<XSVF> : never), CV & (P extends Database.Plugin<any, any, any, any, any, any, any, infer XCVF> ? FromComputedFactories<XCVF> : never)>;
|
|
111
108
|
}
|
|
112
109
|
export declare namespace Database {
|
|
113
110
|
/** Stepwise inference helpers - each infers one Plugin param to reduce compiler depth. */
|
|
@@ -119,11 +116,11 @@ export declare namespace Database {
|
|
|
119
116
|
type FromPluginActions<P> = P extends Database.Plugin<any, any, any, any, any, infer AD, any, any> ? AD : never;
|
|
120
117
|
type FromPluginServices<P> = P extends Database.Plugin<any, any, any, any, any, any, infer SVF, any> ? SVF : never;
|
|
121
118
|
type FromPluginComputed<P> = P extends Database.Plugin<any, any, any, any, any, any, any, infer CVF> ? CVF : never;
|
|
122
|
-
export type FromPlugin<P extends Database.Plugin> = P extends Database.Plugin ? Database<FromSchemas<FromPluginComponents<P>>, FromSchemas<FromPluginResources<P>>, FromPluginArchetypes<P>, ToTransactionFunctions<FromPluginTransactions<P>>, FromPluginSystems<P>, ToActionFunctions<FromPluginActions<P>>,
|
|
119
|
+
export type FromPlugin<P extends Database.Plugin> = P extends Database.Plugin ? Database<FromSchemas<FromPluginComponents<P>>, FromSchemas<FromPluginResources<P>>, FromPluginArchetypes<P>, ToTransactionFunctions<FromPluginTransactions<P>>, FromPluginSystems<P>, ToActionFunctions<FromPluginActions<P>>, FromServiceFactory<FromPluginServices<P>>, FromComputedFactories<FromPluginComputed<P>>> : never;
|
|
123
120
|
export const create: typeof createDatabase;
|
|
124
121
|
export const is: (value: unknown) => value is Database;
|
|
125
122
|
export const observeSelectDeep: <C extends Components, Include extends StringKeyof<C>>(db: Database<C, any, any, any, any, any, any, any>, include: readonly Include[] | ReadonlySet<Include | "id">, options?: EntitySelectOptions<C, Pick<C & RequiredComponents, Include>>) => Observe<readonly (RequiredComponents & { readonly [K in Include]: C[K]; })[]>;
|
|
126
|
-
export type Plugin<CS extends ComponentSchemas = any, RS extends ResourceSchemas = any, A extends ArchetypeComponents<StringKeyof<CS>> = any, TD extends TransactionDeclarations<FromSchemas<CS>, FromSchemas<RS>, any> = any, S extends string = any, AD extends ActionDeclarations<FromSchemas<CS>, FromSchemas<RS>, A, ToTransactionFunctions<TD>, S> = any, SVF extends
|
|
123
|
+
export type Plugin<CS extends ComponentSchemas = any, RS extends ResourceSchemas = any, A extends ArchetypeComponents<StringKeyof<CS>> = any, TD extends TransactionDeclarations<FromSchemas<CS>, FromSchemas<RS>, any> = any, S extends string = any, AD extends ActionDeclarations<FromSchemas<CS>, FromSchemas<RS>, A, ToTransactionFunctions<TD>, S> = any, SVF extends ServiceFactory = any, CVF extends ComputedFactories = any> = {
|
|
127
124
|
readonly components: CS;
|
|
128
125
|
readonly resources: RS;
|
|
129
126
|
readonly archetypes: A;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Database,
|
|
1
|
+
import { Database, FromServiceFactory, FromComputedFactories } from "../database.js";
|
|
2
2
|
import type { ToTransactionFunctions } from "../../store/transaction-functions.js";
|
|
3
3
|
import type { ToActionFunctions } from "../../store/action-functions.js";
|
|
4
4
|
import { FromSchemas } from "../../../schema/from-schemas.js";
|
|
5
5
|
export declare function createDatabase(): Database<{}, {}, {}, {}, never, {}, {}, {}>;
|
|
6
|
-
export declare function createDatabase<P extends Database.Plugin<{}, {}, {}, {}, never, {}, any, any>>(plugin: P): Database<FromSchemas<P extends Database.Plugin<infer CS, any, any, any, any, any, any, any> ? CS : never>, FromSchemas<P extends Database.Plugin<any, infer RS, any, any, any, any, any, any> ? RS : never>, P extends Database.Plugin<any, any, infer A, any, any, any, any, any> ? A : never, ToTransactionFunctions<P extends Database.Plugin<any, any, any, infer TD, any, any, any, any> ? TD : never>, P extends Database.Plugin<any, any, any, any, infer S, any, any, any> ? S : never, ToActionFunctions<P extends Database.Plugin<any, any, any, any, any, infer AD, any, any> ? AD : never>, P extends Database.Plugin<any, any, any, any, any, any, infer SVF, any> ?
|
|
6
|
+
export declare function createDatabase<P extends Database.Plugin<{}, {}, {}, {}, never, {}, any, any>>(plugin: P): Database<FromSchemas<P extends Database.Plugin<infer CS, any, any, any, any, any, any, any> ? CS : never>, FromSchemas<P extends Database.Plugin<any, infer RS, any, any, any, any, any, any> ? RS : never>, P extends Database.Plugin<any, any, infer A, any, any, any, any, any> ? A : never, ToTransactionFunctions<P extends Database.Plugin<any, any, any, infer TD, any, any, any, any> ? TD : never>, P extends Database.Plugin<any, any, any, any, infer S, any, any, any> ? S : never, ToActionFunctions<P extends Database.Plugin<any, any, any, any, any, infer AD, any, any> ? AD : never>, P extends Database.Plugin<any, any, any, any, any, any, infer SVF, any> ? FromServiceFactory<SVF> : never, P extends Database.Plugin<any, any, any, any, any, any, any, infer CVF> ? FromComputedFactories<CVF> : never>;
|
|
@@ -135,13 +135,21 @@ function createEmptyDatabase() {
|
|
|
135
135
|
reconcilingDatabase.extend(plugin);
|
|
136
136
|
const pluginTransactions = plugin.transactions ?? {};
|
|
137
137
|
const pluginActions = plugin.actions ?? {};
|
|
138
|
-
const pluginServices = plugin.services
|
|
138
|
+
const pluginServices = plugin.services;
|
|
139
139
|
const pluginComputed = plugin.computed ?? {};
|
|
140
140
|
addTransactionWrappers(pluginTransactions);
|
|
141
141
|
addActionWrappers(pluginActions, partialDatabase);
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
142
|
+
if (typeof pluginServices === "function") {
|
|
143
|
+
const newServices = pluginServices(partialDatabase);
|
|
144
|
+
if (newServices && typeof newServices === "object") {
|
|
145
|
+
for (const name of Object.keys(newServices)) {
|
|
146
|
+
if (name in services && services[name] !== newServices[name]) {
|
|
147
|
+
throw new Error(`Plugin combine conflict: services.${name} must be identical (===) across plugins`);
|
|
148
|
+
}
|
|
149
|
+
if (!(name in services))
|
|
150
|
+
services[name] = newServices[name];
|
|
151
|
+
}
|
|
152
|
+
}
|
|
145
153
|
}
|
|
146
154
|
for (const name in pluginComputed) {
|
|
147
155
|
if (!(name in computed))
|