@empressaio/atom-contract 1.22.0 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/dist/absence/absence-verdict.d.ts +32 -0
- package/dist/absence/absence-verdict.d.ts.map +1 -0
- package/dist/absence/absence-verdict.js +55 -0
- package/dist/absence/absence-verdict.js.map +1 -0
- package/dist/absence/index.d.ts +3 -0
- package/dist/absence/index.d.ts.map +1 -0
- package/dist/absence/index.js +2 -0
- package/dist/absence/index.js.map +1 -0
- package/dist/access/access-pair.d.ts +29 -0
- package/dist/access/access-pair.d.ts.map +1 -0
- package/dist/access/access-pair.js +106 -0
- package/dist/access/access-pair.js.map +1 -0
- package/dist/access/index.d.ts +3 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/index.js +2 -0
- package/dist/access/index.js.map +1 -0
- package/dist/conformance/index.d.ts +2 -0
- package/dist/conformance/index.d.ts.map +1 -1
- package/dist/conformance/index.js +2 -0
- package/dist/conformance/index.js.map +1 -1
- package/dist/conformance/track2-absence.d.ts +8 -0
- package/dist/conformance/track2-absence.d.ts.map +1 -0
- package/dist/conformance/track2-absence.js +19 -0
- package/dist/conformance/track2-absence.js.map +1 -0
- package/dist/conformance/track2-access.d.ts +6 -0
- package/dist/conformance/track2-access.d.ts.map +1 -0
- package/dist/conformance/track2-access.js +10 -0
- package/dist/conformance/track2-access.js.map +1 -0
- package/dist/conformance/track2-alias.d.ts +7 -0
- package/dist/conformance/track2-alias.d.ts.map +1 -0
- package/dist/conformance/track2-alias.js +21 -0
- package/dist/conformance/track2-alias.js.map +1 -0
- package/dist/conformance/track2-derivation.d.ts +6 -0
- package/dist/conformance/track2-derivation.d.ts.map +1 -0
- package/dist/conformance/track2-derivation.js +15 -0
- package/dist/conformance/track2-derivation.js.map +1 -0
- package/dist/conformance/track2-node-id.d.ts +7 -0
- package/dist/conformance/track2-node-id.d.ts.map +1 -0
- package/dist/conformance/track2-node-id.js +9 -0
- package/dist/conformance/track2-node-id.js.map +1 -0
- package/dist/conformance/track2-provenance.d.ts +11 -0
- package/dist/conformance/track2-provenance.d.ts.map +1 -0
- package/dist/conformance/track2-provenance.js +39 -0
- package/dist/conformance/track2-provenance.js.map +1 -0
- package/dist/conformance/track2-selector.d.ts +12 -0
- package/dist/conformance/track2-selector.d.ts.map +1 -0
- package/dist/conformance/track2-selector.js +12 -0
- package/dist/conformance/track2-selector.js.map +1 -0
- package/dist/conformance/track2-supersession.d.ts +6 -0
- package/dist/conformance/track2-supersession.d.ts.map +1 -0
- package/dist/conformance/track2-supersession.js +12 -0
- package/dist/conformance/track2-supersession.js.map +1 -0
- package/dist/derivation/derivation.d.ts +30 -0
- package/dist/derivation/derivation.d.ts.map +1 -0
- package/dist/derivation/derivation.js +61 -0
- package/dist/derivation/derivation.js.map +1 -0
- package/dist/derivation/index.d.ts +3 -0
- package/dist/derivation/index.d.ts.map +1 -0
- package/dist/derivation/index.js +2 -0
- package/dist/derivation/index.js.map +1 -0
- package/dist/identity/alias.d.ts +53 -0
- package/dist/identity/alias.d.ts.map +1 -0
- package/dist/identity/alias.js +99 -0
- package/dist/identity/alias.js.map +1 -0
- package/dist/identity/index.d.ts +8 -0
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/identity/index.js +8 -0
- package/dist/identity/index.js.map +1 -0
- package/dist/identity/node-id.d.ts +56 -0
- package/dist/identity/node-id.d.ts.map +1 -0
- package/dist/identity/node-id.js +82 -0
- package/dist/identity/node-id.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lineage/index.d.ts +3 -0
- package/dist/lineage/index.d.ts.map +1 -0
- package/dist/lineage/index.js +2 -0
- package/dist/lineage/index.js.map +1 -0
- package/dist/lineage/supersession.d.ts +34 -0
- package/dist/lineage/supersession.d.ts.map +1 -0
- package/dist/lineage/supersession.js +48 -0
- package/dist/lineage/supersession.js.map +1 -0
- package/dist/property/buildable-envelope.d.ts +20 -20
- package/dist/property/building-footprint.d.ts +20 -20
- package/dist/property/cad-parcel-roll.d.ts +20 -20
- package/dist/property/common.d.ts +12 -12
- package/dist/property/flood-hazard-fact.d.ts +24 -24
- package/dist/property/land-use-fact.d.ts +20 -20
- package/dist/property/owner-fact.d.ts +20 -20
- package/dist/property/parcel-node.d.ts +20 -20
- package/dist/property/parcel-terrain-model.d.ts +20 -20
- package/dist/property/rail-corridor-fact.d.ts +20 -20
- package/dist/property/road-node.d.ts +16 -16
- package/dist/property/rrc-pipeline-fact.d.ts +20 -20
- package/dist/property/setback-rule.d.ts +20 -20
- package/dist/property/special-district-fact.d.ts +20 -20
- package/dist/property/utility-easement.d.ts +20 -20
- package/dist/property/well-fact.d.ts +20 -20
- package/dist/property/zoning-fact.d.ts +20 -20
- package/dist/provenance/index.d.ts +3 -0
- package/dist/provenance/index.d.ts.map +1 -0
- package/dist/provenance/index.js +2 -0
- package/dist/provenance/index.js.map +1 -0
- package/dist/provenance/provenance-class.d.ts +52 -0
- package/dist/provenance/provenance-class.d.ts.map +1 -0
- package/dist/provenance/provenance-class.js +91 -0
- package/dist/provenance/provenance-class.js.map +1 -0
- package/dist/read-contract/reasoning-axes.d.ts +28 -28
- package/dist/selector/index.d.ts +3 -0
- package/dist/selector/index.d.ts.map +1 -0
- package/dist/selector/index.js +2 -0
- package/dist/selector/index.js.map +1 -0
- package/dist/selector/selector-predicate.d.ts +101 -0
- package/dist/selector/selector-predicate.d.ts.map +1 -0
- package/dist/selector/selector-predicate.js +104 -0
- package/dist/selector/selector-predicate.js.map +1 -0
- package/package.json +5 -1
|
@@ -31,15 +31,15 @@ export declare const PROPERTY_CONSEQUENCE_PROPERTY_RISK_SCHEMA: z.ZodObject<{
|
|
|
31
31
|
assertedAt: z.ZodString;
|
|
32
32
|
auditRef: z.ZodOptional<z.ZodString>;
|
|
33
33
|
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
kind: "property-risk";
|
|
34
35
|
stratum: PropertyRiskStratum;
|
|
35
36
|
assertedAt: string;
|
|
36
|
-
kind: "property-risk";
|
|
37
37
|
basis: string;
|
|
38
38
|
auditRef?: string | undefined;
|
|
39
39
|
}, {
|
|
40
|
+
kind: "property-risk";
|
|
40
41
|
stratum: PropertyRiskStratum;
|
|
41
42
|
assertedAt: string;
|
|
42
|
-
kind: "property-risk";
|
|
43
43
|
basis: string;
|
|
44
44
|
auditRef?: string | undefined;
|
|
45
45
|
}>;
|
|
@@ -48,12 +48,12 @@ export declare const PROPERTY_CONSEQUENCE_NOT_APPLICABLE_SCHEMA: z.ZodObject<{
|
|
|
48
48
|
reason: z.ZodString;
|
|
49
49
|
assertedAt: z.ZodString;
|
|
50
50
|
}, "strip", z.ZodTypeAny, {
|
|
51
|
-
assertedAt: string;
|
|
52
51
|
kind: "not-applicable";
|
|
52
|
+
assertedAt: string;
|
|
53
53
|
reason: string;
|
|
54
54
|
}, {
|
|
55
|
-
assertedAt: string;
|
|
56
55
|
kind: "not-applicable";
|
|
56
|
+
assertedAt: string;
|
|
57
57
|
reason: string;
|
|
58
58
|
}>;
|
|
59
59
|
export declare const PROPERTY_CONSEQUENCE_SCHEMA: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
|
|
@@ -63,15 +63,15 @@ export declare const PROPERTY_CONSEQUENCE_SCHEMA: z.ZodDiscriminatedUnion<"kind"
|
|
|
63
63
|
assertedAt: z.ZodString;
|
|
64
64
|
auditRef: z.ZodOptional<z.ZodString>;
|
|
65
65
|
}, "strip", z.ZodTypeAny, {
|
|
66
|
+
kind: "property-risk";
|
|
66
67
|
stratum: PropertyRiskStratum;
|
|
67
68
|
assertedAt: string;
|
|
68
|
-
kind: "property-risk";
|
|
69
69
|
basis: string;
|
|
70
70
|
auditRef?: string | undefined;
|
|
71
71
|
}, {
|
|
72
|
+
kind: "property-risk";
|
|
72
73
|
stratum: PropertyRiskStratum;
|
|
73
74
|
assertedAt: string;
|
|
74
|
-
kind: "property-risk";
|
|
75
75
|
basis: string;
|
|
76
76
|
auditRef?: string | undefined;
|
|
77
77
|
}>, z.ZodObject<{
|
|
@@ -79,12 +79,12 @@ export declare const PROPERTY_CONSEQUENCE_SCHEMA: z.ZodDiscriminatedUnion<"kind"
|
|
|
79
79
|
reason: z.ZodString;
|
|
80
80
|
assertedAt: z.ZodString;
|
|
81
81
|
}, "strip", z.ZodTypeAny, {
|
|
82
|
-
assertedAt: string;
|
|
83
82
|
kind: "not-applicable";
|
|
83
|
+
assertedAt: string;
|
|
84
84
|
reason: string;
|
|
85
85
|
}, {
|
|
86
|
-
assertedAt: string;
|
|
87
86
|
kind: "not-applicable";
|
|
87
|
+
assertedAt: string;
|
|
88
88
|
reason: string;
|
|
89
89
|
}>]>;
|
|
90
90
|
export interface ReasoningThreeAxisConfidence {
|
|
@@ -132,15 +132,15 @@ export declare const REASONING_THREE_AXIS_CONFIDENCE_SCHEMA: z.ZodReadonly<z.Zod
|
|
|
132
132
|
assertedAt: z.ZodString;
|
|
133
133
|
auditRef: z.ZodOptional<z.ZodString>;
|
|
134
134
|
}, "strip", z.ZodTypeAny, {
|
|
135
|
+
kind: "property-risk";
|
|
135
136
|
stratum: PropertyRiskStratum;
|
|
136
137
|
assertedAt: string;
|
|
137
|
-
kind: "property-risk";
|
|
138
138
|
basis: string;
|
|
139
139
|
auditRef?: string | undefined;
|
|
140
140
|
}, {
|
|
141
|
+
kind: "property-risk";
|
|
141
142
|
stratum: PropertyRiskStratum;
|
|
142
143
|
assertedAt: string;
|
|
143
|
-
kind: "property-risk";
|
|
144
144
|
basis: string;
|
|
145
145
|
auditRef?: string | undefined;
|
|
146
146
|
}>, z.ZodObject<{
|
|
@@ -148,12 +148,12 @@ export declare const REASONING_THREE_AXIS_CONFIDENCE_SCHEMA: z.ZodReadonly<z.Zod
|
|
|
148
148
|
reason: z.ZodString;
|
|
149
149
|
assertedAt: z.ZodString;
|
|
150
150
|
}, "strip", z.ZodTypeAny, {
|
|
151
|
-
assertedAt: string;
|
|
152
151
|
kind: "not-applicable";
|
|
152
|
+
assertedAt: string;
|
|
153
153
|
reason: string;
|
|
154
154
|
}, {
|
|
155
|
-
assertedAt: string;
|
|
156
155
|
kind: "not-applicable";
|
|
156
|
+
assertedAt: string;
|
|
157
157
|
reason: string;
|
|
158
158
|
}>]>;
|
|
159
159
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -170,14 +170,14 @@ export declare const REASONING_THREE_AXIS_CONFIDENCE_SCHEMA: z.ZodReadonly<z.Zod
|
|
|
170
170
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
171
171
|
}>;
|
|
172
172
|
consequence: {
|
|
173
|
+
kind: "property-risk";
|
|
173
174
|
stratum: PropertyRiskStratum;
|
|
174
175
|
assertedAt: string;
|
|
175
|
-
kind: "property-risk";
|
|
176
176
|
basis: string;
|
|
177
177
|
auditRef?: string | undefined;
|
|
178
178
|
} | {
|
|
179
|
-
assertedAt: string;
|
|
180
179
|
kind: "not-applicable";
|
|
180
|
+
assertedAt: string;
|
|
181
181
|
reason: string;
|
|
182
182
|
};
|
|
183
183
|
}, {
|
|
@@ -194,14 +194,14 @@ export declare const REASONING_THREE_AXIS_CONFIDENCE_SCHEMA: z.ZodReadonly<z.Zod
|
|
|
194
194
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
195
195
|
}>;
|
|
196
196
|
consequence: {
|
|
197
|
+
kind: "property-risk";
|
|
197
198
|
stratum: PropertyRiskStratum;
|
|
198
199
|
assertedAt: string;
|
|
199
|
-
kind: "property-risk";
|
|
200
200
|
basis: string;
|
|
201
201
|
auditRef?: string | undefined;
|
|
202
202
|
} | {
|
|
203
|
-
assertedAt: string;
|
|
204
203
|
kind: "not-applicable";
|
|
204
|
+
assertedAt: string;
|
|
205
205
|
reason: string;
|
|
206
206
|
};
|
|
207
207
|
}>>;
|
|
@@ -255,15 +255,15 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
255
255
|
assertedAt: z.ZodString;
|
|
256
256
|
auditRef: z.ZodOptional<z.ZodString>;
|
|
257
257
|
}, "strip", z.ZodTypeAny, {
|
|
258
|
+
kind: "property-risk";
|
|
258
259
|
stratum: PropertyRiskStratum;
|
|
259
260
|
assertedAt: string;
|
|
260
|
-
kind: "property-risk";
|
|
261
261
|
basis: string;
|
|
262
262
|
auditRef?: string | undefined;
|
|
263
263
|
}, {
|
|
264
|
+
kind: "property-risk";
|
|
264
265
|
stratum: PropertyRiskStratum;
|
|
265
266
|
assertedAt: string;
|
|
266
|
-
kind: "property-risk";
|
|
267
267
|
basis: string;
|
|
268
268
|
auditRef?: string | undefined;
|
|
269
269
|
}>, z.ZodObject<{
|
|
@@ -271,12 +271,12 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
271
271
|
reason: z.ZodString;
|
|
272
272
|
assertedAt: z.ZodString;
|
|
273
273
|
}, "strip", z.ZodTypeAny, {
|
|
274
|
-
assertedAt: string;
|
|
275
274
|
kind: "not-applicable";
|
|
275
|
+
assertedAt: string;
|
|
276
276
|
reason: string;
|
|
277
277
|
}, {
|
|
278
|
-
assertedAt: string;
|
|
279
278
|
kind: "not-applicable";
|
|
279
|
+
assertedAt: string;
|
|
280
280
|
reason: string;
|
|
281
281
|
}>]>;
|
|
282
282
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -293,14 +293,14 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
293
293
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
294
294
|
}>;
|
|
295
295
|
consequence: {
|
|
296
|
+
kind: "property-risk";
|
|
296
297
|
stratum: PropertyRiskStratum;
|
|
297
298
|
assertedAt: string;
|
|
298
|
-
kind: "property-risk";
|
|
299
299
|
basis: string;
|
|
300
300
|
auditRef?: string | undefined;
|
|
301
301
|
} | {
|
|
302
|
-
assertedAt: string;
|
|
303
302
|
kind: "not-applicable";
|
|
303
|
+
assertedAt: string;
|
|
304
304
|
reason: string;
|
|
305
305
|
};
|
|
306
306
|
}, {
|
|
@@ -317,14 +317,14 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
317
317
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
318
318
|
}>;
|
|
319
319
|
consequence: {
|
|
320
|
+
kind: "property-risk";
|
|
320
321
|
stratum: PropertyRiskStratum;
|
|
321
322
|
assertedAt: string;
|
|
322
|
-
kind: "property-risk";
|
|
323
323
|
basis: string;
|
|
324
324
|
auditRef?: string | undefined;
|
|
325
325
|
} | {
|
|
326
|
-
assertedAt: string;
|
|
327
326
|
kind: "not-applicable";
|
|
327
|
+
assertedAt: string;
|
|
328
328
|
reason: string;
|
|
329
329
|
};
|
|
330
330
|
}>>;
|
|
@@ -391,14 +391,14 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
391
391
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
392
392
|
}>;
|
|
393
393
|
consequence: {
|
|
394
|
+
kind: "property-risk";
|
|
394
395
|
stratum: PropertyRiskStratum;
|
|
395
396
|
assertedAt: string;
|
|
396
|
-
kind: "property-risk";
|
|
397
397
|
basis: string;
|
|
398
398
|
auditRef?: string | undefined;
|
|
399
399
|
} | {
|
|
400
|
-
assertedAt: string;
|
|
401
400
|
kind: "not-applicable";
|
|
401
|
+
assertedAt: string;
|
|
402
402
|
reason: string;
|
|
403
403
|
};
|
|
404
404
|
}>;
|
|
@@ -431,14 +431,14 @@ export declare const REASONING_READ_CONTRACT_SCHEMA: z.ZodReadonly<z.ZodObject<{
|
|
|
431
431
|
provenance: "asserted" | "backtest" | "seed" | "live";
|
|
432
432
|
}>;
|
|
433
433
|
consequence: {
|
|
434
|
+
kind: "property-risk";
|
|
434
435
|
stratum: PropertyRiskStratum;
|
|
435
436
|
assertedAt: string;
|
|
436
|
-
kind: "property-risk";
|
|
437
437
|
basis: string;
|
|
438
438
|
auditRef?: string | undefined;
|
|
439
439
|
} | {
|
|
440
|
-
assertedAt: string;
|
|
441
440
|
kind: "not-applicable";
|
|
441
|
+
assertedAt: string;
|
|
442
442
|
reason: string;
|
|
443
443
|
};
|
|
444
444
|
}>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { FLOOD_ZONE_SELECTORS, SELECTOR_KINDS, SelectorParseError, SelectorPredicate, match, parseSelector, } from "./selector-predicate.js";
|
|
2
|
+
export type { And, Composition, Equality, Or, Range, SelectorHandlers, SelectorKind, SetMember, SpatialContains, } from "./selector-predicate.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/selector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,EACL,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,GAAG,EACH,WAAW,EACX,QAAQ,EACR,EAAE,EACF,KAAK,EACL,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,eAAe,GAChB,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/selector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,EACL,aAAa,GACd,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Selector predicate — instrument contract item 2.11.
|
|
3
|
+
*
|
|
4
|
+
* Closed discriminated union: spatial containment, set membership,
|
|
5
|
+
* equality, range, and composition. `match` is exhaustive.
|
|
6
|
+
*/
|
|
7
|
+
export type SpatialContains = {
|
|
8
|
+
readonly kind: "spatial-contains";
|
|
9
|
+
readonly geom: unknown;
|
|
10
|
+
};
|
|
11
|
+
export type SetMember = {
|
|
12
|
+
readonly kind: "set-member";
|
|
13
|
+
readonly set: readonly unknown[];
|
|
14
|
+
};
|
|
15
|
+
export type Equality = {
|
|
16
|
+
readonly kind: "eq";
|
|
17
|
+
readonly field: string;
|
|
18
|
+
readonly value: unknown;
|
|
19
|
+
};
|
|
20
|
+
export type Range = {
|
|
21
|
+
readonly kind: "range";
|
|
22
|
+
readonly field: string;
|
|
23
|
+
readonly min: unknown;
|
|
24
|
+
readonly max: unknown;
|
|
25
|
+
};
|
|
26
|
+
export type And = {
|
|
27
|
+
readonly kind: "and";
|
|
28
|
+
readonly clauses: readonly SelectorPredicate[];
|
|
29
|
+
};
|
|
30
|
+
export type Or = {
|
|
31
|
+
readonly kind: "or";
|
|
32
|
+
readonly clauses: readonly SelectorPredicate[];
|
|
33
|
+
};
|
|
34
|
+
export type Composition = And | Or;
|
|
35
|
+
export type SelectorPredicate = SpatialContains | SetMember | Equality | Range | And | Or;
|
|
36
|
+
export declare const SELECTOR_KINDS: readonly ["spatial-contains", "set-member", "eq", "range", "and", "or"];
|
|
37
|
+
export type SelectorKind = (typeof SELECTOR_KINDS)[number];
|
|
38
|
+
export type SelectorHandlers<T> = {
|
|
39
|
+
[K in SelectorPredicate["kind"]]: (pred: Extract<SelectorPredicate, {
|
|
40
|
+
kind: K;
|
|
41
|
+
}>) => T;
|
|
42
|
+
};
|
|
43
|
+
export declare class SelectorParseError extends Error {
|
|
44
|
+
readonly input: unknown;
|
|
45
|
+
readonly code: string;
|
|
46
|
+
constructor(message: string, input: unknown, code?: string);
|
|
47
|
+
}
|
|
48
|
+
export declare function parseSelector(input: unknown): SelectorPredicate;
|
|
49
|
+
export declare function match<T>(pred: SelectorPredicate, handlers: SelectorHandlers<T>): T;
|
|
50
|
+
/** Factory flood selectors from F-16/F-18 close item 8. */
|
|
51
|
+
export declare const FLOOD_ZONE_SELECTORS: {
|
|
52
|
+
readonly A: {
|
|
53
|
+
readonly kind: "eq";
|
|
54
|
+
readonly field: "fld_zone";
|
|
55
|
+
readonly value: "A";
|
|
56
|
+
};
|
|
57
|
+
readonly AE: {
|
|
58
|
+
readonly kind: "eq";
|
|
59
|
+
readonly field: "fld_zone";
|
|
60
|
+
readonly value: "AE";
|
|
61
|
+
};
|
|
62
|
+
readonly AO: {
|
|
63
|
+
readonly kind: "eq";
|
|
64
|
+
readonly field: "fld_zone";
|
|
65
|
+
readonly value: "AO";
|
|
66
|
+
};
|
|
67
|
+
readonly X: {
|
|
68
|
+
readonly kind: "eq";
|
|
69
|
+
readonly field: "fld_zone";
|
|
70
|
+
readonly value: "X";
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
/** Runtime export so the Factory shim check observes `SelectorPredicate` on the module. */
|
|
74
|
+
export declare const SelectorPredicate: Readonly<{
|
|
75
|
+
kinds: readonly ["spatial-contains", "set-member", "eq", "range", "and", "or"];
|
|
76
|
+
parse: typeof parseSelector;
|
|
77
|
+
match: typeof match;
|
|
78
|
+
floodZones: {
|
|
79
|
+
readonly A: {
|
|
80
|
+
readonly kind: "eq";
|
|
81
|
+
readonly field: "fld_zone";
|
|
82
|
+
readonly value: "A";
|
|
83
|
+
};
|
|
84
|
+
readonly AE: {
|
|
85
|
+
readonly kind: "eq";
|
|
86
|
+
readonly field: "fld_zone";
|
|
87
|
+
readonly value: "AE";
|
|
88
|
+
};
|
|
89
|
+
readonly AO: {
|
|
90
|
+
readonly kind: "eq";
|
|
91
|
+
readonly field: "fld_zone";
|
|
92
|
+
readonly value: "AO";
|
|
93
|
+
};
|
|
94
|
+
readonly X: {
|
|
95
|
+
readonly kind: "eq";
|
|
96
|
+
readonly field: "fld_zone";
|
|
97
|
+
readonly value: "X";
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
}>;
|
|
101
|
+
//# sourceMappingURL=selector-predicate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selector-predicate.d.ts","sourceRoot":"","sources":["../../src/selector/selector-predicate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,SAAS,OAAO,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,GAAG,GAAG;IAChB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,EAAE,GAAG;IACf,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,GAAG,GAAG,EAAE,CAAC;AAEnC,MAAM,MAAM,iBAAiB,GACzB,eAAe,GACf,SAAS,GACT,QAAQ,GACR,KAAK,GACL,GAAG,GACH,EAAE,CAAC;AAEP,eAAO,MAAM,cAAc,yEAOjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;KAC/B,CAAC,IAAI,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAChC,IAAI,EAAE,OAAO,CAAC,iBAAiB,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAC1C,CAAC;CACP,CAAC;AAEF,qBAAa,kBAAmB,SAAQ,KAAK;IAKzC,QAAQ,CAAC,KAAK,EAAE,OAAO;IAJzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAGpB,OAAO,EAAE,MAAM,EACN,KAAK,EAAE,OAAO,EACvB,IAAI,SAAmB;CAM1B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAoD/D;AAED,wBAAgB,KAAK,CAAC,CAAC,EACrB,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC5B,CAAC,CAuBH;AAED,2DAA2D;AAC3D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;CAK6B,CAAC;AAE/D,2FAA2F;AAC3F,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;EAK5B,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Selector predicate — instrument contract item 2.11.
|
|
3
|
+
*
|
|
4
|
+
* Closed discriminated union: spatial containment, set membership,
|
|
5
|
+
* equality, range, and composition. `match` is exhaustive.
|
|
6
|
+
*/
|
|
7
|
+
export const SELECTOR_KINDS = [
|
|
8
|
+
"spatial-contains",
|
|
9
|
+
"set-member",
|
|
10
|
+
"eq",
|
|
11
|
+
"range",
|
|
12
|
+
"and",
|
|
13
|
+
"or",
|
|
14
|
+
];
|
|
15
|
+
export class SelectorParseError extends Error {
|
|
16
|
+
input;
|
|
17
|
+
code;
|
|
18
|
+
constructor(message, input, code = "SELECTOR_FIELD") {
|
|
19
|
+
super(message);
|
|
20
|
+
this.input = input;
|
|
21
|
+
this.name = "SelectorParseError";
|
|
22
|
+
this.code = code;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export function parseSelector(input) {
|
|
26
|
+
if (!input || typeof input !== "object") {
|
|
27
|
+
throw new SelectorParseError("selector predicate is not a closed-union kind", input, "SELECTOR_KIND");
|
|
28
|
+
}
|
|
29
|
+
const pred = input;
|
|
30
|
+
const kind = pred.kind;
|
|
31
|
+
if (kind === "spatial-contains") {
|
|
32
|
+
if (pred.geom == null) {
|
|
33
|
+
throw new SelectorParseError("spatial-contains requires geom", input);
|
|
34
|
+
}
|
|
35
|
+
return { kind: "spatial-contains", geom: pred.geom };
|
|
36
|
+
}
|
|
37
|
+
if (kind === "set-member") {
|
|
38
|
+
if (!Array.isArray(pred.set)) {
|
|
39
|
+
throw new SelectorParseError("set-member requires set", input);
|
|
40
|
+
}
|
|
41
|
+
return { kind: "set-member", set: pred.set };
|
|
42
|
+
}
|
|
43
|
+
if (kind === "eq") {
|
|
44
|
+
if (pred.field == null || pred.value === undefined) {
|
|
45
|
+
throw new SelectorParseError("eq requires field and value", input);
|
|
46
|
+
}
|
|
47
|
+
return { kind: "eq", field: String(pred.field), value: pred.value };
|
|
48
|
+
}
|
|
49
|
+
if (kind === "range") {
|
|
50
|
+
if (pred.field == null || pred.min === undefined || pred.max === undefined) {
|
|
51
|
+
throw new SelectorParseError("range requires field, min, max", input);
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
kind: "range",
|
|
55
|
+
field: String(pred.field),
|
|
56
|
+
min: pred.min,
|
|
57
|
+
max: pred.max,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
if (kind === "and" || kind === "or") {
|
|
61
|
+
if (!Array.isArray(pred.clauses)) {
|
|
62
|
+
throw new SelectorParseError(`${kind} requires clauses`, input);
|
|
63
|
+
}
|
|
64
|
+
return kind === "and"
|
|
65
|
+
? { kind: "and", clauses: pred.clauses.map((c) => parseSelector(c)) }
|
|
66
|
+
: { kind: "or", clauses: pred.clauses.map((c) => parseSelector(c)) };
|
|
67
|
+
}
|
|
68
|
+
throw new SelectorParseError("selector predicate is not a closed-union kind", input, "SELECTOR_KIND");
|
|
69
|
+
}
|
|
70
|
+
export function match(pred, handlers) {
|
|
71
|
+
switch (pred.kind) {
|
|
72
|
+
case "spatial-contains":
|
|
73
|
+
return handlers["spatial-contains"](pred);
|
|
74
|
+
case "set-member":
|
|
75
|
+
return handlers["set-member"](pred);
|
|
76
|
+
case "eq":
|
|
77
|
+
return handlers.eq(pred);
|
|
78
|
+
case "range":
|
|
79
|
+
return handlers.range(pred);
|
|
80
|
+
case "and":
|
|
81
|
+
return handlers.and(pred);
|
|
82
|
+
case "or":
|
|
83
|
+
return handlers.or(pred);
|
|
84
|
+
default: {
|
|
85
|
+
const _exhaustive = pred;
|
|
86
|
+
throw new SelectorParseError(`unhandled selector kind ${String(_exhaustive)}`, pred, "SELECTOR_KIND");
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/** Factory flood selectors from F-16/F-18 close item 8. */
|
|
91
|
+
export const FLOOD_ZONE_SELECTORS = {
|
|
92
|
+
A: { kind: "eq", field: "fld_zone", value: "A" },
|
|
93
|
+
AE: { kind: "eq", field: "fld_zone", value: "AE" },
|
|
94
|
+
AO: { kind: "eq", field: "fld_zone", value: "AO" },
|
|
95
|
+
X: { kind: "eq", field: "fld_zone", value: "X" },
|
|
96
|
+
};
|
|
97
|
+
/** Runtime export so the Factory shim check observes `SelectorPredicate` on the module. */
|
|
98
|
+
export const SelectorPredicate = Object.freeze({
|
|
99
|
+
kinds: SELECTOR_KINDS,
|
|
100
|
+
parse: parseSelector,
|
|
101
|
+
match,
|
|
102
|
+
floodZones: FLOOD_ZONE_SELECTORS,
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=selector-predicate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"selector-predicate.js","sourceRoot":"","sources":["../../src/selector/selector-predicate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@empressaio/atom-contract",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.24.0",
|
|
4
4
|
"description": "The typed-data substrate every Empressa atom satisfies: identity, context interface, composition declaration, and history anchoring. Peer to the Hauska SDK (`@hauska-sdk/*`); consumed directly by every product surface and MCP server.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -50,6 +50,10 @@
|
|
|
50
50
|
"types": "./dist/property/index.d.ts",
|
|
51
51
|
"import": "./dist/property/index.js"
|
|
52
52
|
},
|
|
53
|
+
"./identity": {
|
|
54
|
+
"types": "./dist/identity/index.d.ts",
|
|
55
|
+
"import": "./dist/identity/index.js"
|
|
56
|
+
},
|
|
53
57
|
"./package.json": "./package.json"
|
|
54
58
|
},
|
|
55
59
|
"files": [
|