@owlmeans/server-planning 0.1.18-rc.2 → 0.1.18-rc.21
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 +40 -12
- package/agent-meta/manifest.json +2 -2
- package/agent-meta/skills/server-planning/SKILL.md +193 -18
- package/build/actions/cards.d.ts +3 -5
- package/build/actions/cards.d.ts.map +1 -1
- package/build/actions/cards.js +1 -1
- package/build/actions/cards.js.map +1 -1
- package/build/actions/execute.d.ts +24 -3
- package/build/actions/execute.d.ts.map +1 -1
- package/build/actions/execute.js +82 -8
- package/build/actions/execute.js.map +1 -1
- package/build/actions/schemas.d.ts +27 -5
- package/build/actions/schemas.d.ts.map +1 -1
- package/build/actions/schemas.js +67 -7
- package/build/actions/schemas.js.map +1 -1
- package/build/actions/specs.d.ts +2 -4
- package/build/actions/specs.d.ts.map +1 -1
- package/build/actions/specs.js.map +1 -1
- package/build/actions/types.d.ts +4 -0
- package/build/actions/types.d.ts.map +1 -0
- package/build/actions/types.js +2 -0
- package/build/actions/types.js.map +1 -0
- package/build/actions/watch.d.ts.map +1 -1
- package/build/actions/watch.js +4 -2
- package/build/actions/watch.js.map +1 -1
- package/build/conformance/assert.d.ts +20 -0
- package/build/conformance/assert.d.ts.map +1 -0
- package/build/conformance/assert.js +54 -0
- package/build/conformance/assert.js.map +1 -0
- package/build/conformance/cases.d.ts +7 -0
- package/build/conformance/cases.d.ts.map +1 -0
- package/build/conformance/cases.js +447 -0
- package/build/conformance/cases.js.map +1 -0
- package/build/conformance/consts.d.ts +19 -0
- package/build/conformance/consts.d.ts.map +1 -0
- package/build/conformance/consts.js +42 -0
- package/build/conformance/consts.js.map +1 -0
- package/build/conformance/fixtures.d.ts +14 -0
- package/build/conformance/fixtures.d.ts.map +1 -0
- package/build/conformance/fixtures.js +109 -0
- package/build/conformance/fixtures.js.map +1 -0
- package/build/conformance/index.d.ts +12 -0
- package/build/conformance/index.d.ts.map +1 -0
- package/build/conformance/index.js +11 -0
- package/build/conformance/index.js.map +1 -0
- package/build/conformance/types.d.ts +18 -0
- package/build/conformance/types.d.ts.map +1 -0
- package/build/conformance/types.js +2 -0
- package/build/conformance/types.js.map +1 -0
- package/build/consts.d.ts +5 -0
- package/build/consts.d.ts.map +1 -1
- package/build/consts.js +5 -0
- package/build/consts.js.map +1 -1
- package/build/definitions.d.ts +17 -0
- package/build/definitions.d.ts.map +1 -0
- package/build/definitions.js +211 -0
- package/build/definitions.js.map +1 -0
- package/build/executor/changes.d.ts +2 -2
- package/build/executor/changes.d.ts.map +1 -1
- package/build/executor/changes.js.map +1 -1
- package/build/executor/code.d.ts +3 -3
- package/build/executor/code.d.ts.map +1 -1
- package/build/executor/code.js +1 -1
- package/build/executor/code.js.map +1 -1
- package/build/executor/consts.local.d.ts +5 -0
- package/build/executor/consts.local.d.ts.map +1 -0
- package/build/executor/consts.local.js +6 -0
- package/build/executor/consts.local.js.map +1 -0
- package/build/executor/creator.d.ts +30 -0
- package/build/executor/creator.d.ts.map +1 -0
- package/build/executor/creator.js +46 -0
- package/build/executor/creator.js.map +1 -0
- package/build/executor/resolve.d.ts +31 -23
- package/build/executor/resolve.d.ts.map +1 -1
- package/build/executor/resolve.js +74 -15
- package/build/executor/resolve.js.map +1 -1
- package/build/executor/types.d.ts +24 -0
- package/build/executor/types.d.ts.map +1 -0
- package/build/executor/types.js +2 -0
- package/build/executor/types.js.map +1 -0
- package/build/executor/validate.d.ts +6 -5
- package/build/executor/validate.d.ts.map +1 -1
- package/build/executor/validate.js +18 -15
- package/build/executor/validate.js.map +1 -1
- package/build/executor.d.ts +10 -7
- package/build/executor.d.ts.map +1 -1
- package/build/executor.js +17 -14
- package/build/executor.js.map +1 -1
- package/build/facade.d.ts +20 -2
- package/build/facade.d.ts.map +1 -1
- package/build/facade.js +128 -18
- package/build/facade.js.map +1 -1
- package/build/helper.d.ts +3 -2
- package/build/helper.d.ts.map +1 -1
- package/build/helper.js +7 -3
- package/build/helper.js.map +1 -1
- package/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/projection.d.ts +2 -10
- package/build/projection.d.ts.map +1 -1
- package/build/projection.js +1 -1
- package/build/projection.js.map +1 -1
- package/build/queue/consts.d.ts +5 -0
- package/build/queue/consts.d.ts.map +1 -0
- package/build/queue/consts.js +5 -0
- package/build/queue/consts.js.map +1 -0
- package/build/queue/index.d.ts +4 -16
- package/build/queue/index.d.ts.map +1 -1
- package/build/queue/index.js +2 -4
- package/build/queue/index.js.map +1 -1
- package/build/queue/types.d.ts +13 -0
- package/build/queue/types.d.ts.map +1 -0
- package/build/queue/types.js +2 -0
- package/build/queue/types.js.map +1 -0
- package/build/registry.d.ts +2 -21
- package/build/registry.d.ts.map +1 -1
- package/build/registry.js +3 -1
- package/build/registry.js.map +1 -1
- package/build/service.d.ts +3 -16
- package/build/service.d.ts.map +1 -1
- package/build/service.js +9 -0
- package/build/service.js.map +1 -1
- package/build/store/commits.d.ts.map +1 -1
- package/build/store/commits.js +3 -1
- package/build/store/commits.js.map +1 -1
- package/build/store/composite.d.ts +1 -0
- package/build/store/composite.d.ts.map +1 -1
- package/build/store/composite.js +3 -0
- package/build/store/composite.js.map +1 -1
- package/build/store/consts.local.d.ts +2 -0
- package/build/store/consts.local.d.ts.map +1 -0
- package/build/store/consts.local.js +2 -0
- package/build/store/consts.local.js.map +1 -0
- package/build/store/fold.d.ts +4 -3
- package/build/store/fold.d.ts.map +1 -1
- package/build/store/fold.js +14 -6
- package/build/store/fold.js.map +1 -1
- package/build/store/memory.d.ts +12 -0
- package/build/store/memory.d.ts.map +1 -1
- package/build/store/memory.js +0 -0
- package/build/store/memory.js.map +1 -1
- package/build/store/types.d.ts +15 -1
- package/build/store/types.d.ts.map +1 -1
- package/build/store/types.local.d.ts +3 -0
- package/build/store/types.local.d.ts.map +1 -0
- package/build/store/types.local.js +2 -0
- package/build/store/types.local.js.map +1 -0
- package/build/types.d.ts +111 -1
- package/build/types.d.ts.map +1 -1
- package/build/types.local.d.ts +7 -0
- package/build/types.local.d.ts.map +1 -0
- package/build/types.local.js +2 -0
- package/build/types.local.js.map +1 -0
- package/build/utils/index.d.ts +1 -0
- package/build/utils/index.d.ts.map +1 -1
- package/build/utils/scope.d.ts +39 -2
- package/build/utils/scope.d.ts.map +1 -1
- package/build/utils/scope.js +79 -15
- package/build/utils/scope.js.map +1 -1
- package/build/utils/types.d.ts +8 -0
- package/build/utils/types.d.ts.map +1 -0
- package/build/utils/types.js +2 -0
- package/build/utils/types.js.map +1 -0
- package/package.json +28 -20
- package/src/actions/cards.ts +2 -6
- package/src/actions/execute.ts +95 -12
- package/src/actions/schemas.ts +81 -9
- package/src/actions/specs.ts +1 -2
- package/src/actions/types.ts +4 -0
- package/src/actions/watch.ts +5 -2
- package/src/conformance/assert.ts +59 -0
- package/src/conformance/cases.ts +522 -0
- package/src/conformance/consts.ts +44 -0
- package/src/conformance/fixtures.ts +121 -0
- package/src/conformance/index.ts +11 -0
- package/src/conformance/types.ts +20 -0
- package/src/consts.ts +6 -0
- package/src/definitions.ts +250 -0
- package/src/executor/changes.ts +2 -6
- package/src/executor/code.ts +3 -9
- package/src/executor/consts.local.ts +8 -0
- package/src/executor/creator.ts +51 -0
- package/src/executor/resolve.ts +84 -40
- package/src/executor/types.ts +25 -0
- package/src/executor/validate.ts +22 -26
- package/src/executor.ts +21 -21
- package/src/facade.ts +143 -25
- package/src/helper.ts +7 -3
- package/src/index.ts +1 -0
- package/src/projection.ts +4 -14
- package/src/queue/consts.ts +5 -0
- package/src/queue/index.ts +6 -21
- package/src/queue/types.ts +14 -0
- package/src/registry.ts +5 -29
- package/src/service.ts +13 -20
- package/src/store/commits.ts +5 -4
- package/src/store/composite.ts +3 -0
- package/src/store/consts.local.ts +1 -0
- package/src/store/fold.ts +15 -12
- package/src/store/memory.ts +0 -0
- package/src/store/types.local.ts +3 -0
- package/src/store/types.ts +16 -1
- package/src/types.local.ts +7 -0
- package/src/types.ts +126 -4
- package/src/utils/index.ts +1 -0
- package/src/utils/scope.ts +97 -17
- package/src/utils/types.ts +8 -0
- package/tests/access.spec.ts +160 -0
- package/tests/conformance.spec.ts +47 -0
- package/tests/create-example.spec.ts +202 -0
- package/tests/creator.spec.ts +257 -0
- package/tests/entrypoints.spec.ts +5 -0
- package/tests/narrowing.spec.ts +94 -0
- package/tests/plugins.spec.ts +4 -3
- package/tests/writes.spec.ts +140 -0
package/build/executor.js
CHANGED
|
@@ -2,9 +2,11 @@ import { uuid } from '@owlmeans/basic-ids';
|
|
|
2
2
|
import { PlanningError, PlanningUnsupported, WorkcardConflict } from '@owlmeans/planning';
|
|
3
3
|
import { changeSetOf, transitionOf } from './executor/changes.js';
|
|
4
4
|
import { assignCode } from './executor/code.js';
|
|
5
|
+
import { withCreator } from './executor/creator.js';
|
|
5
6
|
import { makeReceipt } from './executor/receipt.js';
|
|
6
|
-
import { normalizeExecution, projectFor, resolveExecution } from './executor/resolve.js';
|
|
7
7
|
import { validateExecution } from './executor/validate.js';
|
|
8
|
+
import { resolveHelper } from './executor/resolve.js';
|
|
9
|
+
export { assertCreatorFixed, creatorOf, withCreator } from './executor/creator.js';
|
|
8
10
|
const isoNow = () => new Date().toISOString();
|
|
9
11
|
/** What a type/parent change by a middleware is judged by. */
|
|
10
12
|
const identityOf = (exec) => typeof exec.card === 'string'
|
|
@@ -13,7 +15,7 @@ const identityOf = (exec) => typeof exec.card === 'string'
|
|
|
13
15
|
const execContextOf = (runtime, facade, resolved) => (plugin) => ({
|
|
14
16
|
context: runtime.context(),
|
|
15
17
|
scope: facade.scope,
|
|
16
|
-
schemas:
|
|
18
|
+
schemas: resolved.schemas,
|
|
17
19
|
store: resolved.store,
|
|
18
20
|
facade,
|
|
19
21
|
plugin,
|
|
@@ -43,19 +45,20 @@ const currentReceipt = async (store, resolved, entityId, opts) => {
|
|
|
43
45
|
/**
|
|
44
46
|
* THE write path. Nothing is appended before step 11, so every refusal leaves the log untouched.
|
|
45
47
|
*
|
|
46
|
-
* 1 normalize
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
*
|
|
48
|
+
* 1 normalize (a create's `createdBy` defaults to the scope's subject — {@link withCreator}) →
|
|
49
|
+
* 2 scope → 3 idempotency (a known `key` answers its first receipt, before any validation) →
|
|
50
|
+
* 4 resolve → 5 the plugins' `before` chain (re-resolved once when it moved the type or the parent)
|
|
51
|
+
* → 6 validate (a `createdBy` in `changes`/`unset` is refused — {@link assertCreatorFixed}) →
|
|
52
|
+
* 7 allocate the card id → 8 code → 9 changes (an update changing nothing answers
|
|
53
|
+
* the current receipt and appends nothing) → 10 seq, a CAS against the head → 11 append →
|
|
54
|
+
* 12 request the projection → 13 receipt → 14 `wait`.
|
|
51
55
|
*
|
|
52
56
|
* `after` hooks are NOT run here — the process that folds runs them, once per commit.
|
|
53
57
|
*/
|
|
54
58
|
export const executeTransition = async (runtime, facade, input, opts) => {
|
|
55
59
|
const scope = facade.scope;
|
|
56
|
-
const service = runtime.service();
|
|
57
60
|
const at = (runtime.options.now ?? isoNow)();
|
|
58
|
-
let exec = normalizeExecution(input);
|
|
61
|
+
let exec = withCreator(resolveHelper.normalizeExecution(input), scope);
|
|
59
62
|
if (scope.entityId == null || scope.entityId === '') {
|
|
60
63
|
throw new PlanningError('malformed:scope-without-entity');
|
|
61
64
|
}
|
|
@@ -65,11 +68,11 @@ export const executeTransition = async (runtime, facade, input, opts) => {
|
|
|
65
68
|
return await makeReceipt(found.store, found.transition, opts);
|
|
66
69
|
}
|
|
67
70
|
}
|
|
68
|
-
let resolved = await resolveExecution(runtime, facade, exec);
|
|
71
|
+
let resolved = await resolveHelper.resolveExecution(runtime, facade, exec);
|
|
69
72
|
const before = identityOf(exec);
|
|
70
|
-
exec = normalizeExecution(await runtime.registry.before(exec, execContextOf(runtime, facade, resolved)));
|
|
73
|
+
exec = resolveHelper.normalizeExecution(await runtime.registry.before(exec, execContextOf(runtime, facade, resolved)));
|
|
71
74
|
if (identityOf(exec) !== before) {
|
|
72
|
-
resolved = await resolveExecution(runtime, facade, exec);
|
|
75
|
+
resolved = await resolveHelper.resolveExecution(runtime, facade, exec);
|
|
73
76
|
}
|
|
74
77
|
await validateExecution(runtime, facade, exec, resolved);
|
|
75
78
|
const store = resolved.store;
|
|
@@ -81,7 +84,7 @@ export const executeTransition = async (runtime, facade, input, opts) => {
|
|
|
81
84
|
? store.newId?.() ?? runtime.options.ids?.() ?? uuid()
|
|
82
85
|
: resolved.card.id;
|
|
83
86
|
exec = await assignCode(exec, resolved, scope, runtime.registry, execContextOf(runtime, facade, resolved));
|
|
84
|
-
const { set, empty } = changeSetOf(exec, resolved,
|
|
87
|
+
const { set, empty } = changeSetOf(exec, resolved, resolved.schemas, at);
|
|
85
88
|
if (empty) {
|
|
86
89
|
return await currentReceipt(store, resolved, scope.entityId, opts);
|
|
87
90
|
}
|
|
@@ -91,7 +94,7 @@ export const executeTransition = async (runtime, facade, input, opts) => {
|
|
|
91
94
|
}
|
|
92
95
|
const transition = transitionOf({
|
|
93
96
|
exec, resolved, scope, set, cardId, seq, at,
|
|
94
|
-
project: projectFor(resolved, exec, cardId),
|
|
97
|
+
project: resolveHelper.projectFor(resolved, exec, cardId),
|
|
95
98
|
});
|
|
96
99
|
let appended;
|
|
97
100
|
try {
|
package/build/executor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE1C,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
|
package/build/facade.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type {
|
|
1
|
+
import { type PlanningFacade, type PlanningScope, type Workcard } from '@owlmeans/planning';
|
|
2
|
+
import type { Criteria } from '@owlmeans/resource';
|
|
3
|
+
import type { PlanningRuntime } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* The criteria a scope narrowed to `projects` adds to every card list, count and summary: the
|
|
6
|
+
* projects themselves, every card whose `parents` name one of them, and the specifications whose
|
|
7
|
+
* parent card is one of `through` — the cards of those projects a specification is seen through,
|
|
8
|
+
* exactly as a single read sees it (a specification's `parents` hold only its own card).
|
|
9
|
+
*/
|
|
10
|
+
export declare const projectCriteriaOf: (projects: readonly string[], through?: readonly string[]) => Criteria<Workcard>;
|
|
3
11
|
/**
|
|
4
12
|
* The scoped facade over the service's stores.
|
|
5
13
|
*
|
|
@@ -7,6 +15,16 @@ import type { PlanningRuntime } from './service.js';
|
|
|
7
15
|
* a card of another entity is simply absent — `load` answers `null`, `get` throws
|
|
8
16
|
* `WorkcardNotFound`, exactly as for an id that never existed. Reads go through the composite
|
|
9
17
|
* store (the default store plus the stores plugins own); writes go through the executor.
|
|
18
|
+
*
|
|
19
|
+
* A scope naming `projects` sees those projects, the cards whose `parents` name one of them, and a
|
|
20
|
+
* specification whose parent card is one of those (a card's specification through its card);
|
|
21
|
+
* everything else reads as absent. Lists, counts and summaries are narrowed by an AND'd criteria
|
|
22
|
+
* that admits the same cards a single read does — the parent cards a specification is seen through
|
|
23
|
+
* are resolved once per call ({@link projectCriteriaOf}) — and commit events and transitions
|
|
24
|
+
* outside the set are dropped or refused.
|
|
25
|
+
*
|
|
26
|
+
* `definitions` is present when the default store holds data-defined schemas; a model is then
|
|
27
|
+
* built over the registry of the card's own project.
|
|
10
28
|
*/
|
|
11
29
|
export declare const makeStoreFacade: (runtime: PlanningRuntime, scope: PlanningScope) => PlanningFacade;
|
|
12
30
|
//# sourceMappingURL=facade.d.ts.map
|
package/build/facade.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"facade.d.ts","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6O,KAAK,cAAc,EAAE,KAAK,aAAa,EAA0D,KAAK,QAAQ,EAA0C,MAAM,oBAAoB,CAAA;AACta,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAGlD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAIjD;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAAc,SAAS,MAAM,EAAE,YAAW,SAAS,MAAM,EAAE,KAAQ,QAAQ,CAAC,QAAQ,CAM1F,CAAA;AAExB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,YAAa,eAAe,SAAS,aAAa,KAAG,cA+OhF,CAAA"}
|
package/build/facade.js
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
|
-
import { criteriaOf, currentSpecification, isSpecification, linkWhereOf, listOptionsOf, modelOf, PlanningUnsupported, specCriteriaOf, transitionWhereOf, WorkcardKind, WorkcardNotFound
|
|
1
|
+
import { criteriaOf, currentSpecification, isProject, isSpecification, linkWhereOf, listOptionsOf, modelOf, projectOf, PlanningUnsupported, specCriteriaOf, transitionWhereOf, WorkcardKind, WorkcardNotFound } from '@owlmeans/planning';
|
|
2
|
+
import { makeDefinitions } from './definitions.js';
|
|
2
3
|
import { executeTransition } from './executor.js';
|
|
4
|
+
import { wantsSpecifications } from './store/memory.js';
|
|
5
|
+
/**
|
|
6
|
+
* The criteria a scope narrowed to `projects` adds to every card list, count and summary: the
|
|
7
|
+
* projects themselves, every card whose `parents` name one of them, and the specifications whose
|
|
8
|
+
* parent card is one of `through` — the cards of those projects a specification is seen through,
|
|
9
|
+
* exactly as a single read sees it (a specification's `parents` hold only its own card).
|
|
10
|
+
*/
|
|
11
|
+
export const projectCriteriaOf = (projects, through = []) => ({
|
|
12
|
+
$or: [
|
|
13
|
+
{ id: { $in: [...projects] } },
|
|
14
|
+
{ parents: { $overlaps: [...projects] } },
|
|
15
|
+
...(through.length > 0 ? [{ kind: WorkcardKind.Specification, parent: { $in: [...through] } }] : []),
|
|
16
|
+
],
|
|
17
|
+
});
|
|
3
18
|
/**
|
|
4
19
|
* The scoped facade over the service's stores.
|
|
5
20
|
*
|
|
@@ -7,11 +22,66 @@ import { executeTransition } from './executor.js';
|
|
|
7
22
|
* a card of another entity is simply absent — `load` answers `null`, `get` throws
|
|
8
23
|
* `WorkcardNotFound`, exactly as for an id that never existed. Reads go through the composite
|
|
9
24
|
* store (the default store plus the stores plugins own); writes go through the executor.
|
|
25
|
+
*
|
|
26
|
+
* A scope naming `projects` sees those projects, the cards whose `parents` name one of them, and a
|
|
27
|
+
* specification whose parent card is one of those (a card's specification through its card);
|
|
28
|
+
* everything else reads as absent. Lists, counts and summaries are narrowed by an AND'd criteria
|
|
29
|
+
* that admits the same cards a single read does — the parent cards a specification is seen through
|
|
30
|
+
* are resolved once per call ({@link projectCriteriaOf}) — and commit events and transitions
|
|
31
|
+
* outside the set are dropped or refused.
|
|
32
|
+
*
|
|
33
|
+
* `definitions` is present when the default store holds data-defined schemas; a model is then
|
|
34
|
+
* built over the registry of the card's own project.
|
|
10
35
|
*/
|
|
11
36
|
export const makeStoreFacade = (runtime, scope) => {
|
|
12
37
|
const entityId = scope.entityId;
|
|
38
|
+
const projects = scope.projects != null ? [...new Set(scope.projects)] : undefined;
|
|
13
39
|
const reader = () => runtime.reader();
|
|
14
40
|
const mine = (record) => record != null && record.entityId === entityId ? record : null;
|
|
41
|
+
const inProjects = (card) => projects == null
|
|
42
|
+
|| (card.id != null && projects.includes(card.id))
|
|
43
|
+
|| card.parents.some(parent => projects.includes(parent));
|
|
44
|
+
/** A card this scope may see — a specification through its parent card. */
|
|
45
|
+
const visible = async (card) => {
|
|
46
|
+
if (card == null || inProjects(card)) {
|
|
47
|
+
return card;
|
|
48
|
+
}
|
|
49
|
+
if (isSpecification(card) && card.parent != null) {
|
|
50
|
+
const parent = mine(await reader().cards.get(card.parent, entityId));
|
|
51
|
+
return parent != null && inProjects(parent) ? card : null;
|
|
52
|
+
}
|
|
53
|
+
return null;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* The cards a narrowed list or count may see specifications THROUGH — what {@link visible} admits
|
|
57
|
+
* one by: its parent card in the scope's projects. One read per call, and only for criteria that
|
|
58
|
+
* ask for specifications at all (`wantsSpecifications`, the rule every store routes a list by): the
|
|
59
|
+
* parent the query names, or else the projects' own cards. A summary counts no specification.
|
|
60
|
+
*/
|
|
61
|
+
const throughOf = async (where, parent) => {
|
|
62
|
+
if (projects == null || projects.length === 0 || !wantsSpecifications(where)) {
|
|
63
|
+
return [];
|
|
64
|
+
}
|
|
65
|
+
if (parent != null) {
|
|
66
|
+
const card = mine(await reader().cards.get(parent, entityId));
|
|
67
|
+
return card != null && inProjects(card) ? [parent] : [];
|
|
68
|
+
}
|
|
69
|
+
const listed = await reader().cards.list({ entityId, parents: { $overlaps: projects } }, { size: 0 });
|
|
70
|
+
// A project's own specifications are matched by their `parents` already.
|
|
71
|
+
return listed.items.filter(card => card.id != null && !projects.includes(card.id) && inProjects(card)).map(card => card.id);
|
|
72
|
+
};
|
|
73
|
+
/** A narrowed list's or count's criteria — `through` as {@link throughOf} resolved it. */
|
|
74
|
+
const narrowed = async (query) => {
|
|
75
|
+
const where = criteriaOf(query, scope);
|
|
76
|
+
return narrow(where, await throughOf(where, query?.parent));
|
|
77
|
+
};
|
|
78
|
+
const narrow = (where, through = []) => projects == null
|
|
79
|
+
? where
|
|
80
|
+
: {
|
|
81
|
+
...where,
|
|
82
|
+
$and: [...(where.$and ?? []), projectCriteriaOf(projects, through)],
|
|
83
|
+
};
|
|
84
|
+
const projectVisible = (project) => projects == null || (project != null && projects.includes(project));
|
|
15
85
|
const commitSource = () => {
|
|
16
86
|
const commits = reader().commits;
|
|
17
87
|
if (commits == null) {
|
|
@@ -19,25 +89,33 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
19
89
|
}
|
|
20
90
|
return commits;
|
|
21
91
|
};
|
|
22
|
-
/** The transition is this entity's — its row, or the remembered commit of a purged one. */
|
|
92
|
+
/** The transition is this entity's (and this scope's) — its row, or the remembered commit of a purged one. */
|
|
23
93
|
const assertTransition = async (transition) => {
|
|
24
94
|
const row = await reader().transitions?.get(transition);
|
|
25
95
|
if (row != null) {
|
|
26
|
-
if (row.entityId !== entityId) {
|
|
96
|
+
if (row.entityId !== entityId || !projectVisible(row.project)) {
|
|
27
97
|
throw new WorkcardNotFound(`transition:${transition}`);
|
|
28
98
|
}
|
|
29
99
|
return;
|
|
30
100
|
}
|
|
31
101
|
const recalled = reader().commits?.recall?.(transition);
|
|
32
|
-
if (recalled == null || recalled.entityId !== entityId) {
|
|
102
|
+
if (recalled == null || recalled.entityId !== entityId || !projectVisible(recalled.project)) {
|
|
33
103
|
throw new WorkcardNotFound(`transition:${transition}`);
|
|
34
104
|
}
|
|
35
105
|
};
|
|
106
|
+
/** The project a card resolves its data-defined types in. */
|
|
107
|
+
const projectFor = async (card) => {
|
|
108
|
+
if (isProject(card) || card.parent == null) {
|
|
109
|
+
return projectOf(card);
|
|
110
|
+
}
|
|
111
|
+
const parent = mine(await reader().cards.get(card.parent, entityId));
|
|
112
|
+
return projectOf(card, parent);
|
|
113
|
+
};
|
|
36
114
|
const facade = {
|
|
37
|
-
scope: Object.freeze({ ...scope }),
|
|
115
|
+
scope: Object.freeze({ ...scope, ...(projects != null ? { projects } : {}) }),
|
|
38
116
|
schemas: runtime.service().schemas,
|
|
39
117
|
cards: {
|
|
40
|
-
load: async (id) => mine(await reader().cards.get(id, entityId)),
|
|
118
|
+
load: async (id) => await visible(mine(await reader().cards.get(id, entityId))),
|
|
41
119
|
get: async (id) => {
|
|
42
120
|
const card = await facade.cards.load(id);
|
|
43
121
|
if (card == null) {
|
|
@@ -45,14 +123,17 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
45
123
|
}
|
|
46
124
|
return card;
|
|
47
125
|
},
|
|
48
|
-
list: async (query) => await reader().cards.list(
|
|
49
|
-
count: async (query) => await reader().cards.count(
|
|
126
|
+
list: async (query) => await reader().cards.list(await narrowed(query), listOptionsOf(query)),
|
|
127
|
+
count: async (query) => await reader().cards.count(await narrowed(query)),
|
|
50
128
|
summary: async (parents, query) => parents.length === 0
|
|
51
129
|
? {}
|
|
52
|
-
: await reader().cards.summary(parents, criteriaOf({ kind: query?.kind, type: query?.type }, scope)),
|
|
130
|
+
: await reader().cards.summary(parents, narrow(criteriaOf({ kind: query?.kind, type: query?.type }, scope))),
|
|
53
131
|
},
|
|
54
132
|
specifications: {
|
|
55
133
|
current: async (parent, category) => {
|
|
134
|
+
if (projects != null && await facade.cards.load(parent) == null) {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
56
137
|
const specs = reader().specs;
|
|
57
138
|
if (specs != null) {
|
|
58
139
|
return mine(await specs.current(parent, category, entityId));
|
|
@@ -61,6 +142,9 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
61
142
|
return currentSpecification(listed.items, category);
|
|
62
143
|
},
|
|
63
144
|
list: async (parent, query) => {
|
|
145
|
+
if (projects != null && await facade.cards.load(parent) == null) {
|
|
146
|
+
return { items: [], total: 0 };
|
|
147
|
+
}
|
|
64
148
|
const specs = reader().specs;
|
|
65
149
|
if (specs != null) {
|
|
66
150
|
return await specs.list(parent, entityId, query);
|
|
@@ -86,24 +170,40 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
86
170
|
relationships: {
|
|
87
171
|
list: async (query) => {
|
|
88
172
|
const links = reader().links;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
173
|
+
if (links == null) {
|
|
174
|
+
return { items: [], total: 0 };
|
|
175
|
+
}
|
|
176
|
+
if (projects == null) {
|
|
177
|
+
return await links.list(linkWhereOf(query, scope), listOptionsOf(query));
|
|
178
|
+
}
|
|
179
|
+
const listed = await links.list({ ...linkWhereOf(query, scope), project: projects }, listOptionsOf(query));
|
|
180
|
+
// A store that ignores `project` must still not leak an edge filed under another project.
|
|
181
|
+
const items = listed.items.filter((link) => projectVisible(link.project));
|
|
182
|
+
return items.length === listed.items.length ? listed : { ...listed, items, total: listed.total - (listed.items.length - items.length) };
|
|
92
183
|
},
|
|
93
184
|
},
|
|
94
185
|
transitions: {
|
|
95
186
|
get: async (id) => {
|
|
96
187
|
const transition = mine(await reader().transitions?.get(id));
|
|
97
|
-
if (transition == null) {
|
|
188
|
+
if (transition == null || !projectVisible(transition.project)) {
|
|
98
189
|
throw new WorkcardNotFound(`transition:${id}`);
|
|
99
190
|
}
|
|
100
191
|
return transition;
|
|
101
192
|
},
|
|
102
193
|
list: async (query) => {
|
|
103
194
|
const transitions = reader().transitions;
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
195
|
+
if (transitions == null) {
|
|
196
|
+
return { items: [], total: 0 };
|
|
197
|
+
}
|
|
198
|
+
if (projects == null) {
|
|
199
|
+
return await transitions.list(transitionWhereOf(query, scope), listOptionsOf(query));
|
|
200
|
+
}
|
|
201
|
+
if (query.project != null && !projects.includes(query.project)) {
|
|
202
|
+
return { items: [], total: 0 };
|
|
203
|
+
}
|
|
204
|
+
const listed = await transitions.list({ ...transitionWhereOf(query, scope), project: query.project ?? projects }, listOptionsOf(query));
|
|
205
|
+
const items = listed.items.filter((transition) => projectVisible(transition.project));
|
|
206
|
+
return items.length === listed.items.length ? listed : { ...listed, items, total: listed.total - (listed.items.length - items.length) };
|
|
107
207
|
},
|
|
108
208
|
},
|
|
109
209
|
commits: {
|
|
@@ -111,7 +211,9 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
111
211
|
await assertTransition(transition);
|
|
112
212
|
return await commitSource().status(transition);
|
|
113
213
|
},
|
|
114
|
-
subscribe: (listener, filter) => commitSource().subscribe(
|
|
214
|
+
subscribe: (listener, filter) => commitSource().subscribe(projects == null
|
|
215
|
+
? listener
|
|
216
|
+
: (event) => projectVisible(event.project) ? listener(event) : undefined, { ...filter, entityId }),
|
|
115
217
|
wait: async (transition, opts) => {
|
|
116
218
|
await assertTransition(transition);
|
|
117
219
|
return await commitSource().wait(transition, opts);
|
|
@@ -123,9 +225,17 @@ export const makeStoreFacade = (runtime, scope) => {
|
|
|
123
225
|
if (record.entityId !== entityId) {
|
|
124
226
|
throw new WorkcardNotFound(record.id ?? WorkcardKind.Card);
|
|
125
227
|
}
|
|
126
|
-
|
|
228
|
+
if (runtime.schemaStore() == null) {
|
|
229
|
+
return modelOf(record, facade);
|
|
230
|
+
}
|
|
231
|
+
// A data-defined type answers from the registry of the card's own project.
|
|
232
|
+
const schemas = await runtime.schemasFor(entityId, await projectFor(record));
|
|
233
|
+
return modelOf(record, { ...facade, schemas });
|
|
127
234
|
},
|
|
128
235
|
};
|
|
236
|
+
if (runtime.schemaStore() != null) {
|
|
237
|
+
facade.definitions = makeDefinitions(runtime, facade);
|
|
238
|
+
}
|
|
129
239
|
return facade;
|
|
130
240
|
};
|
|
131
241
|
//# sourceMappingURL=facade.js.map
|
package/build/facade.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facade.js","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"facade.js","sourceRoot":"","sources":["../src/facade.ts"],"names":[],"mappings":"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"}
|
package/build/helper.d.ts
CHANGED
|
@@ -4,8 +4,9 @@ import type { PlanningFacade, PlanningProtocols, PlanningScope } from '@owlmeans
|
|
|
4
4
|
import type { PlanningHandlerOptions } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Bind this package's handlers to a tree declared by `makePlanningProtocols` — one binding per
|
|
7
|
-
* protocol, the base included.
|
|
8
|
-
* wants its own handler for one leaf binds
|
|
7
|
+
* protocol, the base included (and `schema.define` when the tree declares it). Pass the tree
|
|
8
|
+
* itself, never a flattened list; an application that wants its own handler for one leaf binds
|
|
9
|
+
* that protocol afterwards.
|
|
9
10
|
*/
|
|
10
11
|
export declare const servePlanningEntrypoints: (protocols: PlanningProtocols, opts?: PlanningHandlerOptions) => import("@owlmeans/server-entrypoint").ServerProtocolEntrypoint<import("@owlmeans/entrypoint").EntrypointProtocolDeclaration>[];
|
|
11
12
|
/**
|
package/build/helper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAO1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAGxD
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAO1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAGxD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,cAAe,iBAAiB,SAAS,sBAAsB,mIAkBnG,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,QACjB,YAAY,CAAC,WAAW,CAAC,OAAO,eAAe,UAAU,OAAO,CAAC,aAAa,CAAC,SAC7E,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,KAC7C,cAAuE,CAAA"}
|
package/build/helper.js
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
import { bind } from '@owlmeans/server-entrypoint';
|
|
2
|
-
import { executePlanning, getCard, getCommit, getSpecification, getTransition, listCardSpecifications, listCardTransitions, listCards, listLinks, listSchemas, listSpecificationRevisions, summarizeCards, watchCommits, } from './actions/index.js';
|
|
2
|
+
import { defineSchemas, executePlanning, getCard, getCommit, getSpecification, getTransition, listCardSpecifications, listCardTransitions, listCards, listLinks, listSchemas, listSpecificationRevisions, summarizeCards, watchCommits, } from './actions/index.js';
|
|
3
3
|
import { planningServiceOf, scopeOf } from './utils/index.js';
|
|
4
4
|
/**
|
|
5
5
|
* Bind this package's handlers to a tree declared by `makePlanningProtocols` — one binding per
|
|
6
|
-
* protocol, the base included.
|
|
7
|
-
* wants its own handler for one leaf binds
|
|
6
|
+
* protocol, the base included (and `schema.define` when the tree declares it). Pass the tree
|
|
7
|
+
* itself, never a flattened list; an application that wants its own handler for one leaf binds
|
|
8
|
+
* that protocol afterwards.
|
|
8
9
|
*/
|
|
9
10
|
export const servePlanningEntrypoints = (protocols, opts) => [
|
|
10
11
|
bind(protocols.base),
|
|
11
12
|
bind(protocols.schema.list, listSchemas(protocols.schema.list, opts)),
|
|
13
|
+
...(protocols.schema.define != null
|
|
14
|
+
? [bind(protocols.schema.define, defineSchemas(protocols.schema.define, opts))]
|
|
15
|
+
: []),
|
|
12
16
|
bind(protocols.card.list, listCards(protocols.card.list, opts)),
|
|
13
17
|
bind(protocols.card.summary, summarizeCards(protocols.card.summary, opts)),
|
|
14
18
|
bind(protocols.card.get, getCard(protocols.card.get, opts)),
|
package/build/helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAA;AAClD,OAAO,EACL,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../src/helper.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,kBAAkB,CAAA;AAErC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,kBAAkB,CAAA;AAErC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
package/build/index.js
CHANGED
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,oBAAoB,CAAA;AAClC,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA"}
|
package/build/projection.d.ts
CHANGED
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
import type { BasicConfig, BasicContext } from '@owlmeans/context';
|
|
2
|
-
import type {
|
|
3
|
-
import type { ProjectionRequest } from './queue/index.js';
|
|
2
|
+
import type { ProjectionRequest } from './queue/types.js';
|
|
4
3
|
import type { JobProcessor, QueueHooks } from '@owlmeans/queue';
|
|
4
|
+
import type { ProjectionOptions } from './types.js';
|
|
5
5
|
import type { FoldResult } from './store/types.js';
|
|
6
|
-
export interface ProjectionOptions {
|
|
7
|
-
/** The planning service alias. */
|
|
8
|
-
service?: string;
|
|
9
|
-
/** The store the queue folds — the service's default store when omitted. */
|
|
10
|
-
store?: (service: PlanningService) => PlanningStore;
|
|
11
|
-
/** Where events go — the store's commit hub `publish` when it has one. */
|
|
12
|
-
publish?: (event: CommitEvent) => Promise<void>;
|
|
13
|
-
}
|
|
14
6
|
/**
|
|
15
7
|
* The body of a projection job: fold one card with the service's `committed` as the commit
|
|
16
8
|
* listener, so the `after` chain runs in the process that took the job.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGlE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE/D,OAAO,KAAK,EAAuB,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACxE,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAW7D;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,QAC7B,YAAY,CAAC,WAAW,CAAC,SAAS,iBAAiB,KACvD,YAAY,CAAC,iBAAiB,EAAE,UAAU,CAU5C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,QAAS,YAAY,CAAC,WAAW,CAAC,SAAS,iBAAiB,KAAG,UAU5F,CAAA"}
|
package/build/projection.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PLANNING_SERVICE } from '@owlmeans/planning';
|
|
2
|
-
import { PLANNING_PROJECT_JOB, PLANNING_PROJECTION_QUEUE } from './queue/
|
|
2
|
+
import { PLANNING_PROJECT_JOB, PLANNING_PROJECTION_QUEUE } from './queue/consts.js';
|
|
3
3
|
import { failPending, foldPending } from './store/fold.js';
|
|
4
4
|
const serviceOf = (ctx, opts) => ctx.service(opts?.service ?? PLANNING_SERVICE);
|
|
5
5
|
const storeOf = (service, opts) => opts?.store?.(service) ?? service.store();
|
package/build/projection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../src/projection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAA4C,MAAM,oBAAoB,CAAA;AAC/F,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAGnF,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAI1D,MAAM,SAAS,GAAG,CAAC,GAA8B,EAAE,IAAwB,EAAmB,EAAE,CAC9F,GAAG,CAAC,OAAO,CAAsB,IAAI,EAAE,OAAO,IAAI,gBAAgB,CAAC,CAAA;AAErE,MAAM,OAAO,GAAG,CAAC,OAAwB,EAAE,IAAwB,EAAiB,EAAE,CACpF,IAAI,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAA;AAE3C,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,IAAwB,EAAE,EAAE,CACrE,IAAI,EAAE,OAAO,IAAK,KAAK,CAAC,OAA0C,EAAE,OAAO,CAAA;AAE7E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,GAA8B,EAAE,IAAwB,EACX,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;IAC5D,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAExC,OAAO,MAAM,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;QAClE,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC;QAC9D,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAA8B,EAAE,IAAwB,EAAc,EAAE,CAAC,CAAC;IAC3G,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAC/B,IAAI,GAAG,CAAC,KAAK,KAAK,yBAAyB,IAAI,GAAG,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;YACjF,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAyB,CAAA;QAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAA;QACjD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACxC,MAAM,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACxG,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** The server-side queue used to project planning transitions. */
|
|
2
|
+
export declare const PLANNING_PROJECTION_QUEUE = "planning-projection";
|
|
3
|
+
/** The processor name accepted by the planning projection queue. */
|
|
4
|
+
export declare const PLANNING_PROJECT_JOB = "planning:project";
|
|
5
|
+
//# sourceMappingURL=consts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../src/queue/consts.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,eAAO,MAAM,yBAAyB,wBAAwB,CAAA;AAE9D,oEAAoE;AACpE,eAAO,MAAM,oBAAoB,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/** The server-side queue used to project planning transitions. */
|
|
2
|
+
export const PLANNING_PROJECTION_QUEUE = 'planning-projection';
|
|
3
|
+
/** The processor name accepted by the planning projection queue. */
|
|
4
|
+
export const PLANNING_PROJECT_JOB = 'planning:project';
|
|
5
|
+
//# sourceMappingURL=consts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consts.js","sourceRoot":"","sources":["../../src/queue/consts.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAAA;AAE9D,oEAAoE;AACpE,MAAM,CAAC,MAAM,oBAAoB,GAAG,kBAAkB,CAAA"}
|
package/build/queue/index.d.ts
CHANGED
|
@@ -1,19 +1,7 @@
|
|
|
1
|
-
import type
|
|
2
|
-
|
|
3
|
-
export declare const PLANNING_PROJECTION_QUEUE = "planning-projection";
|
|
4
|
-
/** The processor name accepted by the planning projection queue. */
|
|
5
|
-
export declare const PLANNING_PROJECT_JOB = "planning:project";
|
|
6
|
-
/** What one projection job folds. */
|
|
7
|
-
export interface ProjectionRequest {
|
|
8
|
-
cardId: string;
|
|
9
|
-
entityId: string;
|
|
10
|
-
/** The transition that requested projection; it is a hint rather than a fold bound. */
|
|
11
|
-
transition?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface PlanningQueueOptions {
|
|
14
|
-
worker?: QueueWorkerOptions;
|
|
15
|
-
defaults?: JobOptions;
|
|
16
|
-
}
|
|
1
|
+
import { type Config } from '@owlmeans/queue';
|
|
2
|
+
import type { PlanningQueueOptions } from './types.js';
|
|
17
3
|
/** Declare the shared projection address; each process separately chooses whether to listen. */
|
|
18
4
|
export declare const declarePlanningQueue: <C extends Config>(cfg: C, opts?: PlanningQueueOptions) => C;
|
|
5
|
+
export { PLANNING_PROJECTION_QUEUE, PLANNING_PROJECT_JOB } from './consts.js';
|
|
6
|
+
export type { PlanningQueueOptions, ProjectionRequest } from './types.js';
|
|
19
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queue/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAE3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEtD,gGAAgG;AAChG,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,MAAM,OAAO,CAAC,SAAS,oBAAoB,KAAG,CACjB,CAAA;AAE5E,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAC7E,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA"}
|