@dryvcode/author 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +341 -0
- package/dist/behavior/duration.d.ts +7 -0
- package/dist/behavior/duration.d.ts.map +1 -0
- package/dist/behavior/duration.js +20 -0
- package/dist/behavior/duration.js.map +1 -0
- package/dist/behavior/event.d.ts +23 -0
- package/dist/behavior/event.d.ts.map +1 -0
- package/dist/behavior/event.js +57 -0
- package/dist/behavior/event.js.map +1 -0
- package/dist/behavior/failure.d.ts +19 -0
- package/dist/behavior/failure.d.ts.map +1 -0
- package/dist/behavior/failure.js +48 -0
- package/dist/behavior/failure.js.map +1 -0
- package/dist/behavior/index.d.ts +6 -0
- package/dist/behavior/index.d.ts.map +1 -0
- package/dist/behavior/index.js +6 -0
- package/dist/behavior/index.js.map +1 -0
- package/dist/behavior/operation.d.ts +72 -0
- package/dist/behavior/operation.d.ts.map +1 -0
- package/dist/behavior/operation.js +193 -0
- package/dist/behavior/operation.js.map +1 -0
- package/dist/behavior/policy.d.ts +29 -0
- package/dist/behavior/policy.d.ts.map +1 -0
- package/dist/behavior/policy.js +80 -0
- package/dist/behavior/policy.js.map +1 -0
- package/dist/composition/application.d.ts +28 -0
- package/dist/composition/application.d.ts.map +1 -0
- package/dist/composition/application.js +64 -0
- package/dist/composition/application.js.map +1 -0
- package/dist/composition/feature.d.ts +37 -0
- package/dist/composition/feature.d.ts.map +1 -0
- package/dist/composition/feature.js +82 -0
- package/dist/composition/feature.js.map +1 -0
- package/dist/composition/index.d.ts +3 -0
- package/dist/composition/index.d.ts.map +1 -0
- package/dist/composition/index.js +3 -0
- package/dist/composition/index.js.map +1 -0
- package/dist/contracts/behavior.d.ts +106 -0
- package/dist/contracts/behavior.d.ts.map +1 -0
- package/dist/contracts/behavior.js +2 -0
- package/dist/contracts/behavior.js.map +1 -0
- package/dist/contracts/composition.d.ts +20 -0
- package/dist/contracts/composition.d.ts.map +1 -0
- package/dist/contracts/composition.js +2 -0
- package/dist/contracts/composition.js.map +1 -0
- package/dist/contracts/definitions.d.ts +286 -0
- package/dist/contracts/definitions.d.ts.map +1 -0
- package/dist/contracts/definitions.js +35 -0
- package/dist/contracts/definitions.js.map +1 -0
- package/dist/contracts/expressions.d.ts +44 -0
- package/dist/contracts/expressions.d.ts.map +1 -0
- package/dist/contracts/expressions.js +2 -0
- package/dist/contracts/expressions.js.map +1 -0
- package/dist/contracts/foundation.d.ts +141 -0
- package/dist/contracts/foundation.d.ts.map +1 -0
- package/dist/contracts/foundation.js +2 -0
- package/dist/contracts/foundation.js.map +1 -0
- package/dist/contracts/index.d.ts +10 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/index.js +10 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/contracts/interaction.d.ts +52 -0
- package/dist/contracts/interaction.d.ts.map +1 -0
- package/dist/contracts/interaction.js +2 -0
- package/dist/contracts/interaction.js.map +1 -0
- package/dist/contracts/interfaces.d.ts +73 -0
- package/dist/contracts/interfaces.d.ts.map +1 -0
- package/dist/contracts/interfaces.js +2 -0
- package/dist/contracts/interfaces.js.map +1 -0
- package/dist/contracts/orchestration.d.ts +56 -0
- package/dist/contracts/orchestration.d.ts.map +1 -0
- package/dist/contracts/orchestration.js +2 -0
- package/dist/contracts/orchestration.js.map +1 -0
- package/dist/contracts/project.d.ts +70 -0
- package/dist/contracts/project.d.ts.map +1 -0
- package/dist/contracts/project.js +2 -0
- package/dist/contracts/project.js.map +1 -0
- package/dist/data/index.d.ts +2 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +2 -0
- package/dist/data/index.js.map +1 -0
- package/dist/data/storage.d.ts +23 -0
- package/dist/data/storage.d.ts.map +1 -0
- package/dist/data/storage.js +93 -0
- package/dist/data/storage.js.map +1 -0
- package/dist/definitions/expressions/expression.d.ts +49 -0
- package/dist/definitions/expressions/expression.d.ts.map +1 -0
- package/dist/definitions/expressions/expression.js +181 -0
- package/dist/definitions/expressions/expression.js.map +1 -0
- package/dist/definitions/expressions/index.d.ts +2 -0
- package/dist/definitions/expressions/index.d.ts.map +1 -0
- package/dist/definitions/expressions/index.js +2 -0
- package/dist/definitions/expressions/index.js.map +1 -0
- package/dist/definitions/index.d.ts +7 -0
- package/dist/definitions/index.d.ts.map +1 -0
- package/dist/definitions/index.js +7 -0
- package/dist/definitions/index.js.map +1 -0
- package/dist/definitions/properties/advanced.d.ts +27 -0
- package/dist/definitions/properties/advanced.d.ts.map +1 -0
- package/dist/definitions/properties/advanced.js +95 -0
- package/dist/definitions/properties/advanced.js.map +1 -0
- package/dist/definitions/properties/base.d.ts +29 -0
- package/dist/definitions/properties/base.d.ts.map +1 -0
- package/dist/definitions/properties/base.js +60 -0
- package/dist/definitions/properties/base.js.map +1 -0
- package/dist/definitions/properties/composite.d.ts +14 -0
- package/dist/definitions/properties/composite.d.ts.map +1 -0
- package/dist/definitions/properties/composite.js +41 -0
- package/dist/definitions/properties/composite.js.map +1 -0
- package/dist/definitions/properties/enumeration.d.ts +17 -0
- package/dist/definitions/properties/enumeration.d.ts.map +1 -0
- package/dist/definitions/properties/enumeration.js +48 -0
- package/dist/definitions/properties/enumeration.js.map +1 -0
- package/dist/definitions/properties/generic.d.ts +22 -0
- package/dist/definitions/properties/generic.d.ts.map +1 -0
- package/dist/definitions/properties/generic.js +61 -0
- package/dist/definitions/properties/generic.js.map +1 -0
- package/dist/definitions/properties/index.d.ts +12 -0
- package/dist/definitions/properties/index.d.ts.map +1 -0
- package/dist/definitions/properties/index.js +3 -0
- package/dist/definitions/properties/index.js.map +1 -0
- package/dist/definitions/properties/metadata.d.ts +6 -0
- package/dist/definitions/properties/metadata.d.ts.map +1 -0
- package/dist/definitions/properties/metadata.js +4 -0
- package/dist/definitions/properties/metadata.js.map +1 -0
- package/dist/definitions/properties/primitive.d.ts +66 -0
- package/dist/definitions/properties/primitive.d.ts.map +1 -0
- package/dist/definitions/properties/primitive.js +266 -0
- package/dist/definitions/properties/primitive.js.map +1 -0
- package/dist/definitions/properties/property.d.ts +171 -0
- package/dist/definitions/properties/property.d.ts.map +1 -0
- package/dist/definitions/properties/property.js +211 -0
- package/dist/definitions/properties/property.js.map +1 -0
- package/dist/definitions/properties/temporal.d.ts +37 -0
- package/dist/definitions/properties/temporal.d.ts.map +1 -0
- package/dist/definitions/properties/temporal.js +115 -0
- package/dist/definitions/properties/temporal.js.map +1 -0
- package/dist/definitions/schemas/field.d.ts +123 -0
- package/dist/definitions/schemas/field.d.ts.map +1 -0
- package/dist/definitions/schemas/field.js +329 -0
- package/dist/definitions/schemas/field.js.map +1 -0
- package/dist/definitions/schemas/index.d.ts +6 -0
- package/dist/definitions/schemas/index.d.ts.map +1 -0
- package/dist/definitions/schemas/index.js +6 -0
- package/dist/definitions/schemas/index.js.map +1 -0
- package/dist/definitions/schemas/projection.d.ts +90 -0
- package/dist/definitions/schemas/projection.d.ts.map +1 -0
- package/dist/definitions/schemas/projection.js +146 -0
- package/dist/definitions/schemas/projection.js.map +1 -0
- package/dist/definitions/schemas/relation.d.ts +12 -0
- package/dist/definitions/schemas/relation.d.ts.map +1 -0
- package/dist/definitions/schemas/relation.js +27 -0
- package/dist/definitions/schemas/relation.js.map +1 -0
- package/dist/definitions/schemas/schema.d.ts +46 -0
- package/dist/definitions/schemas/schema.d.ts.map +1 -0
- package/dist/definitions/schemas/schema.js +134 -0
- package/dist/definitions/schemas/schema.js.map +1 -0
- package/dist/definitions/schemas/source.d.ts +30 -0
- package/dist/definitions/schemas/source.d.ts.map +1 -0
- package/dist/definitions/schemas/source.js +73 -0
- package/dist/definitions/schemas/source.js.map +1 -0
- package/dist/definitions/types/expressions.d.ts +28 -0
- package/dist/definitions/types/expressions.d.ts.map +1 -0
- package/dist/definitions/types/expressions.js +81 -0
- package/dist/definitions/types/expressions.js.map +1 -0
- package/dist/definitions/types/index.d.ts +4 -0
- package/dist/definitions/types/index.d.ts.map +1 -0
- package/dist/definitions/types/index.js +4 -0
- package/dist/definitions/types/index.js.map +1 -0
- package/dist/definitions/types/parameter.d.ts +9 -0
- package/dist/definitions/types/parameter.d.ts.map +1 -0
- package/dist/definitions/types/parameter.js +24 -0
- package/dist/definitions/types/parameter.js.map +1 -0
- package/dist/definitions/types/spec.d.ts +26 -0
- package/dist/definitions/types/spec.d.ts.map +1 -0
- package/dist/definitions/types/spec.js +74 -0
- package/dist/definitions/types/spec.js.map +1 -0
- package/dist/foundation/declaration.d.ts +24 -0
- package/dist/foundation/declaration.d.ts.map +1 -0
- package/dist/foundation/declaration.js +43 -0
- package/dist/foundation/declaration.js.map +1 -0
- package/dist/foundation/group.d.ts +55 -0
- package/dist/foundation/group.d.ts.map +1 -0
- package/dist/foundation/group.js +199 -0
- package/dist/foundation/group.js.map +1 -0
- package/dist/foundation/index.d.ts +7 -0
- package/dist/foundation/index.d.ts.map +1 -0
- package/dist/foundation/index.js +7 -0
- package/dist/foundation/index.js.map +1 -0
- package/dist/foundation/metadata.d.ts +22 -0
- package/dist/foundation/metadata.d.ts.map +1 -0
- package/dist/foundation/metadata.js +43 -0
- package/dist/foundation/metadata.js.map +1 -0
- package/dist/foundation/ref.d.ts +200 -0
- package/dist/foundation/ref.d.ts.map +1 -0
- package/dist/foundation/ref.js +230 -0
- package/dist/foundation/ref.js.map +1 -0
- package/dist/foundation/scope.d.ts +13 -0
- package/dist/foundation/scope.d.ts.map +1 -0
- package/dist/foundation/scope.js +63 -0
- package/dist/foundation/scope.js.map +1 -0
- package/dist/foundation/value-declaration.d.ts +9 -0
- package/dist/foundation/value-declaration.d.ts.map +1 -0
- package/dist/foundation/value-declaration.js +2 -0
- package/dist/foundation/value-declaration.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/interaction/index.d.ts +3 -0
- package/dist/interaction/index.d.ts.map +1 -0
- package/dist/interaction/index.js +3 -0
- package/dist/interaction/index.js.map +1 -0
- package/dist/interaction/part.d.ts +58 -0
- package/dist/interaction/part.d.ts.map +1 -0
- package/dist/interaction/part.js +178 -0
- package/dist/interaction/part.js.map +1 -0
- package/dist/interaction/view.d.ts +34 -0
- package/dist/interaction/view.d.ts.map +1 -0
- package/dist/interaction/view.js +109 -0
- package/dist/interaction/view.js.map +1 -0
- package/dist/interfaces/facet.d.ts +6 -0
- package/dist/interfaces/facet.d.ts.map +1 -0
- package/dist/interfaces/facet.js +2 -0
- package/dist/interfaces/facet.js.map +1 -0
- package/dist/interfaces/http.d.ts +39 -0
- package/dist/interfaces/http.d.ts.map +1 -0
- package/dist/interfaces/http.js +109 -0
- package/dist/interfaces/http.js.map +1 -0
- package/dist/interfaces/index.d.ts +7 -0
- package/dist/interfaces/index.d.ts.map +1 -0
- package/dist/interfaces/index.js +7 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/representation.d.ts +14 -0
- package/dist/interfaces/representation.d.ts.map +1 -0
- package/dist/interfaces/representation.js +25 -0
- package/dist/interfaces/representation.js.map +1 -0
- package/dist/interfaces/schedule.d.ts +14 -0
- package/dist/interfaces/schedule.d.ts.map +1 -0
- package/dist/interfaces/schedule.js +46 -0
- package/dist/interfaces/schedule.js.map +1 -0
- package/dist/interfaces/surface.d.ts +22 -0
- package/dist/interfaces/surface.d.ts.map +1 -0
- package/dist/interfaces/surface.js +44 -0
- package/dist/interfaces/surface.js.map +1 -0
- package/dist/interfaces/websocket.d.ts +11 -0
- package/dist/interfaces/websocket.d.ts.map +1 -0
- package/dist/interfaces/websocket.js +25 -0
- package/dist/interfaces/websocket.js.map +1 -0
- package/dist/orchestration/index.d.ts +4 -0
- package/dist/orchestration/index.d.ts.map +1 -0
- package/dist/orchestration/index.js +4 -0
- package/dist/orchestration/index.js.map +1 -0
- package/dist/orchestration/steps.d.ts +41 -0
- package/dist/orchestration/steps.d.ts.map +1 -0
- package/dist/orchestration/steps.js +105 -0
- package/dist/orchestration/steps.js.map +1 -0
- package/dist/orchestration/value-source.d.ts +8 -0
- package/dist/orchestration/value-source.d.ts.map +1 -0
- package/dist/orchestration/value-source.js +10 -0
- package/dist/orchestration/value-source.js.map +1 -0
- package/dist/orchestration/workflow.d.ts +38 -0
- package/dist/orchestration/workflow.d.ts.map +1 -0
- package/dist/orchestration/workflow.js +116 -0
- package/dist/orchestration/workflow.js.map +1 -0
- package/dist/project/index.d.ts +2 -0
- package/dist/project/index.d.ts.map +1 -0
- package/dist/project/index.js +2 -0
- package/dist/project/index.js.map +1 -0
- package/dist/project/project.d.ts +27 -0
- package/dist/project/project.d.ts.map +1 -0
- package/dist/project/project.js +161 -0
- package/dist/project/project.js.map +1 -0
- package/dist/project/registry.d.ts +33 -0
- package/dist/project/registry.d.ts.map +1 -0
- package/dist/project/registry.js +58 -0
- package/dist/project/registry.js.map +1 -0
- package/dist/project/snapshot.d.ts +4 -0
- package/dist/project/snapshot.d.ts.map +1 -0
- package/dist/project/snapshot.js +15 -0
- package/dist/project/snapshot.js.map +1 -0
- package/dist/version.d.ts +3 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +3 -0
- package/dist/version.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import type { PolicyRoleState, EventRoleState } from "./foundation.js";
|
|
2
|
+
import type { AuthorSourceLocation, DeclarationRef, ExecutionMode, OperationPortRefState, SemanticMetadataState, TypeExpressionState, ValuePortState, ValueRefState, ValueTargetRef } from "./foundation.js";
|
|
3
|
+
import type { HttpFacetState, ScheduleFacetState, WebSocketFacetState } from "./interfaces.js";
|
|
4
|
+
export interface PolicyContextState {
|
|
5
|
+
readonly requires?: Readonly<Record<string, ValueTargetRef>>;
|
|
6
|
+
readonly provides?: Readonly<Record<string, ValueTargetRef>>;
|
|
7
|
+
}
|
|
8
|
+
export interface PolicyState extends SemanticMetadataState {
|
|
9
|
+
readonly role?: PolicyRoleState;
|
|
10
|
+
readonly identity: symbol;
|
|
11
|
+
readonly kind: "policy";
|
|
12
|
+
readonly description?: string;
|
|
13
|
+
readonly context?: PolicyContextState;
|
|
14
|
+
readonly rule?: DeclarationRef<"expression">;
|
|
15
|
+
readonly group?: DeclarationRef<"group">;
|
|
16
|
+
readonly feature?: DeclarationRef<"feature">;
|
|
17
|
+
readonly origin?: AuthorSourceLocation;
|
|
18
|
+
}
|
|
19
|
+
export interface FailureState extends SemanticMetadataState {
|
|
20
|
+
readonly identity: symbol;
|
|
21
|
+
readonly kind: "failure";
|
|
22
|
+
readonly code: string;
|
|
23
|
+
readonly description?: string;
|
|
24
|
+
readonly payload?: TypeExpressionState;
|
|
25
|
+
readonly group?: DeclarationRef<"group">;
|
|
26
|
+
readonly feature?: DeclarationRef<"feature">;
|
|
27
|
+
readonly origin?: AuthorSourceLocation;
|
|
28
|
+
}
|
|
29
|
+
export type EventListenerState = {
|
|
30
|
+
readonly kind: "operation";
|
|
31
|
+
readonly operation: DeclarationRef<"operation">;
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: "workflow";
|
|
34
|
+
readonly workflow: DeclarationRef<"workflow">;
|
|
35
|
+
};
|
|
36
|
+
export interface EventState extends SemanticMetadataState {
|
|
37
|
+
readonly role?: EventRoleState;
|
|
38
|
+
readonly identity: symbol;
|
|
39
|
+
readonly kind: "event";
|
|
40
|
+
readonly description?: string;
|
|
41
|
+
readonly payload?: ValueRefState;
|
|
42
|
+
readonly listeners: readonly EventListenerState[];
|
|
43
|
+
readonly group?: DeclarationRef<"group">;
|
|
44
|
+
readonly feature?: DeclarationRef<"feature">;
|
|
45
|
+
readonly origin?: AuthorSourceLocation;
|
|
46
|
+
}
|
|
47
|
+
export interface DurationState {
|
|
48
|
+
readonly seconds: number;
|
|
49
|
+
}
|
|
50
|
+
export interface AccessState {
|
|
51
|
+
readonly authenticated: boolean;
|
|
52
|
+
readonly policies: readonly DeclarationRef<"policy">[];
|
|
53
|
+
}
|
|
54
|
+
export interface RateLimitState {
|
|
55
|
+
readonly limit: number;
|
|
56
|
+
readonly window: DurationState;
|
|
57
|
+
}
|
|
58
|
+
export interface CacheState {
|
|
59
|
+
readonly ttl: DurationState;
|
|
60
|
+
}
|
|
61
|
+
export interface TransactionState {
|
|
62
|
+
readonly required: boolean;
|
|
63
|
+
}
|
|
64
|
+
export interface RetryState {
|
|
65
|
+
readonly maxAttempts: number;
|
|
66
|
+
readonly backoff?: DurationState;
|
|
67
|
+
}
|
|
68
|
+
export interface IdempotencyState {
|
|
69
|
+
readonly key: OperationPortRefState;
|
|
70
|
+
}
|
|
71
|
+
export interface AuditState {
|
|
72
|
+
readonly required: boolean;
|
|
73
|
+
}
|
|
74
|
+
export interface ExecutionState {
|
|
75
|
+
readonly mode: ExecutionMode;
|
|
76
|
+
readonly timeout?: DurationState;
|
|
77
|
+
readonly rateLimit?: RateLimitState;
|
|
78
|
+
readonly cache?: CacheState;
|
|
79
|
+
readonly transaction?: TransactionState;
|
|
80
|
+
readonly retry?: RetryState;
|
|
81
|
+
readonly idempotency?: IdempotencyState;
|
|
82
|
+
readonly audit?: AuditState;
|
|
83
|
+
readonly invalidates: readonly DeclarationRef<"operation">[];
|
|
84
|
+
}
|
|
85
|
+
export type OperationRoleState = "create" | "update" | "delete" | "detail" | "list" | "search" | "validate" | "transform" | "action";
|
|
86
|
+
export interface OperationState extends SemanticMetadataState {
|
|
87
|
+
readonly identity: symbol;
|
|
88
|
+
readonly kind: "operation";
|
|
89
|
+
readonly description?: string;
|
|
90
|
+
readonly group?: DeclarationRef<"group">;
|
|
91
|
+
readonly feature?: DeclarationRef<"feature">;
|
|
92
|
+
readonly role?: OperationRoleState;
|
|
93
|
+
readonly inputs: readonly ValuePortState[];
|
|
94
|
+
readonly outputs: readonly ValuePortState[];
|
|
95
|
+
readonly failures: readonly DeclarationRef<"failure">[];
|
|
96
|
+
readonly emits: readonly DeclarationRef<"event">[];
|
|
97
|
+
readonly access: AccessState;
|
|
98
|
+
readonly execution: ExecutionState;
|
|
99
|
+
readonly facets: {
|
|
100
|
+
readonly http?: HttpFacetState;
|
|
101
|
+
readonly websocket?: WebSocketFacetState;
|
|
102
|
+
readonly schedule?: ScheduleFacetState;
|
|
103
|
+
};
|
|
104
|
+
readonly origin?: AuthorSourceLocation;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=behavior.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../../src/contracts/behavior.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavior.js","sourceRoot":"","sources":["../../src/contracts/behavior.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AuthorSourceLocation, DeclarationRef, ScopeFacetsState, SemanticMetadataState } from "./foundation.js";
|
|
2
|
+
export interface FeatureState extends SemanticMetadataState {
|
|
3
|
+
readonly identity: symbol;
|
|
4
|
+
readonly kind: "feature";
|
|
5
|
+
readonly description?: string;
|
|
6
|
+
readonly group: DeclarationRef<"group">;
|
|
7
|
+
readonly origin?: AuthorSourceLocation;
|
|
8
|
+
}
|
|
9
|
+
export interface ApplicationState extends SemanticMetadataState {
|
|
10
|
+
readonly identity: symbol;
|
|
11
|
+
readonly kind: "application";
|
|
12
|
+
readonly description?: string;
|
|
13
|
+
readonly group?: DeclarationRef<"group">;
|
|
14
|
+
readonly groups: readonly DeclarationRef<"group">[];
|
|
15
|
+
readonly policies: readonly DeclarationRef<"policy">[];
|
|
16
|
+
readonly facets?: ScopeFacetsState;
|
|
17
|
+
readonly surfaces: readonly DeclarationRef<"surface">[];
|
|
18
|
+
readonly origin?: AuthorSourceLocation;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=composition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composition.d.ts","sourceRoot":"","sources":["../../src/contracts/composition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EAEd,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,YAAa,SAAQ,qBAAqB;IACzD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;IACpD,QAAQ,CAAC,QAAQ,EAAE,SAAS,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvD,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,SAAS,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"composition.js","sourceRoot":"","sources":["../../src/contracts/composition.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import type { SchemaRoleState } from "./foundation.js";
|
|
2
|
+
import type { CanonicalScalar, CanonicalValue, DeclarationRef, DefinitionMetadataState, LengthConstraintState, OperationPortRefState, PropertyDeclarationKind, SemanticMetadataState, TypeExpressionState, TypeParameterState, ValueTargetState } from "./foundation.js";
|
|
3
|
+
export interface RangeConstraintState {
|
|
4
|
+
readonly min?: number;
|
|
5
|
+
readonly max?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface PatternConstraintState {
|
|
8
|
+
readonly match?: readonly string[];
|
|
9
|
+
readonly starts?: readonly string[];
|
|
10
|
+
readonly ends?: readonly string[];
|
|
11
|
+
readonly allow?: readonly string[];
|
|
12
|
+
readonly deny?: readonly string[];
|
|
13
|
+
}
|
|
14
|
+
/** Static authoring components normalized by the TypeScript compiler. */
|
|
15
|
+
export interface TemporalValueState {
|
|
16
|
+
readonly timeZone?: string;
|
|
17
|
+
readonly year?: number;
|
|
18
|
+
readonly month?: number;
|
|
19
|
+
readonly day?: number;
|
|
20
|
+
readonly hour?: number;
|
|
21
|
+
readonly minute?: number;
|
|
22
|
+
readonly second?: number;
|
|
23
|
+
readonly millisecond?: number;
|
|
24
|
+
readonly microsecond?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface TemporalDurationState {
|
|
27
|
+
readonly years?: number;
|
|
28
|
+
readonly months?: number;
|
|
29
|
+
readonly days?: number;
|
|
30
|
+
readonly hours?: number;
|
|
31
|
+
readonly minutes?: number;
|
|
32
|
+
readonly seconds?: number;
|
|
33
|
+
readonly milliseconds?: number;
|
|
34
|
+
}
|
|
35
|
+
export type TemporalBoundState = string | TemporalValueState | TemporalDurationState | DeclarationRef<"expression">;
|
|
36
|
+
export interface TemporalRangeState {
|
|
37
|
+
readonly min?: TemporalBoundState;
|
|
38
|
+
readonly max?: TemporalBoundState;
|
|
39
|
+
}
|
|
40
|
+
export type TemporalDirectionRuleState = true | TemporalDurationState;
|
|
41
|
+
export type StringKindState = "text" | "format";
|
|
42
|
+
/** The canonical string formats. Other shapes are text with a pattern. */
|
|
43
|
+
export declare const STRING_FORMATS: readonly ["uuid", "ulid", "email", "url", "uri", "hostname", "ipv4", "ipv6", "phone", "e164", "slug", "hex-color", "base64", "hex", "jwt", "semver", "mime-type", "locale", "language-tag", "country-code", "currency-code", "path", "file-path", "file-name", "regex", "html", "markdown", "json", "yaml", "xml", "csv"];
|
|
44
|
+
export type StringFormatState = (typeof STRING_FORMATS)[number];
|
|
45
|
+
export type NumberKindState = "number" | "integer" | "decimal" | "float" | "double";
|
|
46
|
+
export type TemporalKindState = "date" | "time" | "date-time" | "instant" | "zoned-date-time" | "duration" | "interval" | "year-month" | "month-day";
|
|
47
|
+
export type TemporalPrecisionState = "second" | "millisecond" | "microsecond";
|
|
48
|
+
export interface PropertyDeprecationState {
|
|
49
|
+
readonly since: string;
|
|
50
|
+
readonly reason: string;
|
|
51
|
+
readonly replacedBy?: DeclarationRef<PropertyDeclarationKind>;
|
|
52
|
+
}
|
|
53
|
+
export interface PropertyDefinitionMetadataState extends DefinitionMetadataState, SemanticMetadataState {
|
|
54
|
+
readonly deprecated?: PropertyDeprecationState;
|
|
55
|
+
readonly removed: boolean;
|
|
56
|
+
}
|
|
57
|
+
export interface StringPropertyState extends PropertyDefinitionMetadataState {
|
|
58
|
+
readonly identity: symbol;
|
|
59
|
+
readonly kind: "primitive";
|
|
60
|
+
readonly type: "string";
|
|
61
|
+
readonly primitiveKind: StringKindState;
|
|
62
|
+
readonly format?: StringFormatState;
|
|
63
|
+
readonly length?: LengthConstraintState;
|
|
64
|
+
readonly pattern?: PatternConstraintState;
|
|
65
|
+
}
|
|
66
|
+
export interface NumberPropertyState extends PropertyDefinitionMetadataState {
|
|
67
|
+
readonly identity: symbol;
|
|
68
|
+
readonly kind: "primitive";
|
|
69
|
+
readonly type: "number";
|
|
70
|
+
readonly primitiveKind: NumberKindState;
|
|
71
|
+
readonly format?: string;
|
|
72
|
+
readonly range?: RangeConstraintState;
|
|
73
|
+
readonly multipleOf?: number;
|
|
74
|
+
readonly bits?: number;
|
|
75
|
+
readonly unsigned?: boolean;
|
|
76
|
+
readonly precision?: number;
|
|
77
|
+
readonly scale?: number;
|
|
78
|
+
readonly currency?: string;
|
|
79
|
+
readonly minorUnits?: true;
|
|
80
|
+
}
|
|
81
|
+
export interface BooleanPropertyState extends PropertyDefinitionMetadataState {
|
|
82
|
+
readonly identity: symbol;
|
|
83
|
+
readonly kind: "primitive";
|
|
84
|
+
readonly type: "boolean";
|
|
85
|
+
}
|
|
86
|
+
export type PrimitivePropertyState = StringPropertyState | NumberPropertyState | BooleanPropertyState;
|
|
87
|
+
export interface TemporalPropertyState extends PropertyDefinitionMetadataState {
|
|
88
|
+
readonly identity: symbol;
|
|
89
|
+
readonly kind: "temporal";
|
|
90
|
+
readonly temporalKind: TemporalKindState;
|
|
91
|
+
readonly precision?: TemporalPrecisionState;
|
|
92
|
+
readonly point?: DeclarationRef<"temporal">;
|
|
93
|
+
readonly range?: TemporalRangeState;
|
|
94
|
+
readonly past?: TemporalDirectionRuleState;
|
|
95
|
+
readonly future?: TemporalDirectionRuleState;
|
|
96
|
+
readonly timeZone?: string;
|
|
97
|
+
}
|
|
98
|
+
export interface EnumMemberState {
|
|
99
|
+
readonly value: CanonicalScalar;
|
|
100
|
+
readonly title?: string;
|
|
101
|
+
readonly description?: string;
|
|
102
|
+
}
|
|
103
|
+
export interface EnumPropertyState extends PropertyDefinitionMetadataState {
|
|
104
|
+
readonly identity: symbol;
|
|
105
|
+
readonly kind: "enum";
|
|
106
|
+
readonly values: Readonly<Record<string, EnumMemberState>>;
|
|
107
|
+
readonly ordered: boolean;
|
|
108
|
+
}
|
|
109
|
+
export interface CompositeFieldState extends SemanticMetadataState {
|
|
110
|
+
readonly target: ValueTargetState;
|
|
111
|
+
readonly optional?: true;
|
|
112
|
+
readonly nullable?: true;
|
|
113
|
+
readonly array?: {
|
|
114
|
+
readonly min?: number;
|
|
115
|
+
readonly max?: number;
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
export interface CompositePropertyState extends PropertyDefinitionMetadataState {
|
|
119
|
+
readonly identity: symbol;
|
|
120
|
+
readonly kind: "composite";
|
|
121
|
+
readonly fields: Readonly<Record<string, CompositeFieldState>>;
|
|
122
|
+
readonly invariants: readonly DeclarationRef<"expression">[];
|
|
123
|
+
}
|
|
124
|
+
export interface LiteralPropertyState extends PropertyDefinitionMetadataState {
|
|
125
|
+
readonly identity: symbol;
|
|
126
|
+
readonly kind: "literal";
|
|
127
|
+
readonly value: CanonicalScalar | null;
|
|
128
|
+
}
|
|
129
|
+
export interface UnionPropertyState extends PropertyDefinitionMetadataState {
|
|
130
|
+
readonly identity: symbol;
|
|
131
|
+
readonly kind: "union";
|
|
132
|
+
readonly discriminant: string;
|
|
133
|
+
readonly members: Readonly<Record<string, TypeExpressionState>>;
|
|
134
|
+
}
|
|
135
|
+
export interface RecordPropertyState extends PropertyDefinitionMetadataState {
|
|
136
|
+
readonly identity: symbol;
|
|
137
|
+
readonly kind: "record";
|
|
138
|
+
readonly keys: TypeExpressionState;
|
|
139
|
+
readonly values: TypeExpressionState;
|
|
140
|
+
}
|
|
141
|
+
export interface TuplePropertyState extends PropertyDefinitionMetadataState {
|
|
142
|
+
readonly identity: symbol;
|
|
143
|
+
readonly kind: "tuple";
|
|
144
|
+
readonly items: readonly TypeExpressionState[];
|
|
145
|
+
}
|
|
146
|
+
export interface GenericDefinitionPropertyState extends PropertyDefinitionMetadataState {
|
|
147
|
+
readonly identity: symbol;
|
|
148
|
+
readonly kind: "generic";
|
|
149
|
+
readonly genericKind: "definition";
|
|
150
|
+
readonly parameters: readonly TypeParameterState[];
|
|
151
|
+
readonly value: TypeExpressionState;
|
|
152
|
+
}
|
|
153
|
+
export interface GenericApplicationPropertyState extends PropertyDefinitionMetadataState {
|
|
154
|
+
readonly identity: symbol;
|
|
155
|
+
readonly kind: "generic";
|
|
156
|
+
readonly genericKind: "application";
|
|
157
|
+
readonly target: DeclarationRef<"generic">;
|
|
158
|
+
readonly arguments: readonly TypeExpressionState[];
|
|
159
|
+
}
|
|
160
|
+
export type GenericPropertyState = GenericDefinitionPropertyState | GenericApplicationPropertyState;
|
|
161
|
+
export interface SchemaFieldRefState {
|
|
162
|
+
readonly schema: DeclarationRef<"schema">;
|
|
163
|
+
readonly field: string;
|
|
164
|
+
}
|
|
165
|
+
export type FieldMutationState = "create-only" | "system";
|
|
166
|
+
export type QueryOperatorState = "equal" | "notEqual" | "in" | "notIn" | "contains" | "startsWith" | "endsWith" | "greaterThan" | "greaterThanOrEqual" | "lessThan" | "lessThanOrEqual" | "between" | "before" | "after" | "isNull" | "isNotNull" | "exists" | "notExists" | "containsAny" | "containsAll" | "isEmpty" | "isNotEmpty";
|
|
167
|
+
export interface FieldQueryState {
|
|
168
|
+
readonly filter?: readonly QueryOperatorState[] | "*";
|
|
169
|
+
readonly sort?: true;
|
|
170
|
+
readonly search?: true;
|
|
171
|
+
readonly allowNested?: true;
|
|
172
|
+
}
|
|
173
|
+
export interface FieldPolicyState {
|
|
174
|
+
readonly read?: DeclarationRef<"policy">;
|
|
175
|
+
readonly write?: DeclarationRef<"policy">;
|
|
176
|
+
}
|
|
177
|
+
export type RelationCardinalityState = "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many";
|
|
178
|
+
export type RelationLifecycleState = "restrict" | "cascade" | "detach" | "reset";
|
|
179
|
+
export interface FieldRelationState {
|
|
180
|
+
readonly target: SchemaFieldRefState;
|
|
181
|
+
readonly cardinality: RelationCardinalityState;
|
|
182
|
+
readonly onDelete?: RelationLifecycleState;
|
|
183
|
+
readonly onUpdate?: RelationLifecycleState;
|
|
184
|
+
}
|
|
185
|
+
export interface RelatedFieldState {
|
|
186
|
+
readonly via: SchemaFieldRefState;
|
|
187
|
+
readonly inverse?: SchemaFieldRefState;
|
|
188
|
+
readonly cardinality?: RelationCardinalityState;
|
|
189
|
+
}
|
|
190
|
+
export type FieldSourceInputState = {
|
|
191
|
+
readonly kind: "value";
|
|
192
|
+
} | {
|
|
193
|
+
readonly kind: "field";
|
|
194
|
+
readonly value: SchemaFieldRefState;
|
|
195
|
+
};
|
|
196
|
+
export type FieldSourcePurposeState = "value" | "resolve" | "options";
|
|
197
|
+
export interface FieldSourceBindingState {
|
|
198
|
+
readonly target: OperationPortRefState;
|
|
199
|
+
readonly source: FieldSourceInputState;
|
|
200
|
+
}
|
|
201
|
+
export interface FieldSourceState {
|
|
202
|
+
readonly purpose: FieldSourcePurposeState;
|
|
203
|
+
readonly output: OperationPortRefState;
|
|
204
|
+
readonly inputs?: readonly FieldSourceBindingState[];
|
|
205
|
+
}
|
|
206
|
+
export interface ProjectionFieldState {
|
|
207
|
+
readonly from: string;
|
|
208
|
+
readonly optional?: boolean;
|
|
209
|
+
readonly nullable?: boolean;
|
|
210
|
+
readonly array?: {
|
|
211
|
+
readonly min?: number;
|
|
212
|
+
readonly max?: number;
|
|
213
|
+
} | false;
|
|
214
|
+
}
|
|
215
|
+
export interface ProjectionUsageState {
|
|
216
|
+
readonly optional?: boolean;
|
|
217
|
+
readonly nullable?: boolean;
|
|
218
|
+
readonly array?: {
|
|
219
|
+
readonly min?: number;
|
|
220
|
+
readonly max?: number;
|
|
221
|
+
} | false;
|
|
222
|
+
}
|
|
223
|
+
export interface ProjectionSelectionState {
|
|
224
|
+
readonly pick?: readonly string[];
|
|
225
|
+
readonly omit?: readonly string[];
|
|
226
|
+
readonly rename?: Readonly<Record<string, string>>;
|
|
227
|
+
readonly usage?: Readonly<Record<string, ProjectionUsageState>>;
|
|
228
|
+
}
|
|
229
|
+
export type ProjectionPurposeState = "read" | "create" | "edit" | "query" | "custom";
|
|
230
|
+
/** Author-only selectors; compiler expands these to canonical projection fields. */
|
|
231
|
+
export interface ProjectionState {
|
|
232
|
+
readonly source: DeclarationRef<"schema">;
|
|
233
|
+
readonly purpose: ProjectionPurposeState;
|
|
234
|
+
readonly policies?: readonly DeclarationRef<"policy">[];
|
|
235
|
+
readonly selection: ProjectionSelectionState;
|
|
236
|
+
}
|
|
237
|
+
export interface SchemaStorageIndexState {
|
|
238
|
+
readonly fields: readonly string[];
|
|
239
|
+
readonly name?: string;
|
|
240
|
+
readonly unique: boolean;
|
|
241
|
+
}
|
|
242
|
+
export type StorageKindState = "persistent" | "volatile";
|
|
243
|
+
export interface SchemaStorageFacetState {
|
|
244
|
+
readonly name?: string;
|
|
245
|
+
readonly namespace?: string;
|
|
246
|
+
readonly kind: StorageKindState;
|
|
247
|
+
readonly primaryKey?: readonly string[];
|
|
248
|
+
readonly indexes?: readonly SchemaStorageIndexState[];
|
|
249
|
+
}
|
|
250
|
+
export interface SchemaFacetsState {
|
|
251
|
+
readonly storage?: SchemaStorageFacetState;
|
|
252
|
+
}
|
|
253
|
+
export interface SchemaFieldState extends SemanticMetadataState {
|
|
254
|
+
readonly target: ValueTargetState;
|
|
255
|
+
readonly optional?: true;
|
|
256
|
+
readonly nullable?: true;
|
|
257
|
+
readonly array?: {
|
|
258
|
+
readonly min?: number;
|
|
259
|
+
readonly max?: number;
|
|
260
|
+
};
|
|
261
|
+
readonly default?: CanonicalValue | DeclarationRef<"expression">;
|
|
262
|
+
readonly mutation?: FieldMutationState;
|
|
263
|
+
readonly query?: FieldQueryState;
|
|
264
|
+
readonly sensitive?: true;
|
|
265
|
+
readonly policy?: FieldPolicyState;
|
|
266
|
+
readonly relation?: FieldRelationState;
|
|
267
|
+
readonly related?: RelatedFieldState;
|
|
268
|
+
readonly sources?: Readonly<Record<string, FieldSourceState>>;
|
|
269
|
+
}
|
|
270
|
+
export interface SchemaInvariantState {
|
|
271
|
+
readonly name: string;
|
|
272
|
+
readonly rule: DeclarationRef<"expression">;
|
|
273
|
+
readonly message?: string;
|
|
274
|
+
}
|
|
275
|
+
export interface SchemaState extends DefinitionMetadataState, SemanticMetadataState {
|
|
276
|
+
readonly identity: symbol;
|
|
277
|
+
readonly kind: "schema";
|
|
278
|
+
readonly role?: SchemaRoleState;
|
|
279
|
+
readonly abstract?: true;
|
|
280
|
+
readonly extends?: DeclarationRef<"schema">;
|
|
281
|
+
readonly projection?: ProjectionState;
|
|
282
|
+
readonly fields: Readonly<Record<string, SchemaFieldState>>;
|
|
283
|
+
readonly facets?: SchemaFacetsState;
|
|
284
|
+
readonly invariants?: readonly SchemaInvariantState[];
|
|
285
|
+
}
|
|
286
|
+
//# sourceMappingURL=definitions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/contracts/definitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACd,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC;AAED,yEAAyE;AACzE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN,kBAAkB,GAClB,qBAAqB,GACrB,cAAc,CAAC,YAAY,CAAC,CAAC;AAEjC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,kBAAkB,CAAC;CACnC;AAED,MAAM,MAAM,0BAA0B,GAAG,IAAI,GAAG,qBAAqB,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhD,0EAA0E;AAC1E,eAAO,MAAM,cAAc,YACzB,MAAM,EACN,MAAM,EACN,OAAO,EACP,KAAK,EACL,KAAK,EACL,UAAU,EACV,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,WAAW,EACX,QAAQ,EACR,KAAK,EACL,KAAK,EACL,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,cAAc,EACd,cAAc,EACd,eAAe,EACf,MAAM,EACN,WAAW,EACX,WAAW,EACX,OAAO,EACP,MAAM,EACN,UAAU,EACV,MAAM,EACN,MAAM,EACN,KAAK,EACL,KAAK,CACG,CAAC;AACX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAChE,MAAM,MAAM,eAAe,GACvB,QAAQ,GACR,SAAS,GACT,SAAS,GACT,OAAO,GACP,QAAQ,CAAC;AACb,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,MAAM,GACN,WAAW,GACX,SAAS,GACT,iBAAiB,GACjB,UAAU,GACV,UAAU,GACV,YAAY,GACZ,WAAW,CAAC;AAChB,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,aAAa,GAAG,aAAa,CAAC;AAE9E,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,+BACf,SAAQ,uBAAuB,EAC7B,qBAAqB;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC;IAC/C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAoB,SAAQ,+BAA+B;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAoB,SAAQ,+BAA+B;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAqB,SAAQ,+BAA+B;IAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC1B;AAED,MAAM,MAAM,sBAAsB,GAC9B,mBAAmB,GACnB,mBAAmB,GACnB,oBAAoB,CAAC;AAEzB,MAAM,WAAW,qBAAsB,SAAQ,+BAA+B;IAC5E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,0BAA0B,CAAC;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,0BAA0B,CAAC;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAkB,SAAQ,+BAA+B;IACxE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACnE;AAED,MAAM,WAAW,sBACf,SAAQ,+BAA+B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC/D,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;CAC9D;AAED,MAAM,WAAW,oBAAqB,SAAQ,+BAA+B;IAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;CACxC;AAED,MAAM,WAAW,kBAAmB,SAAQ,+BAA+B;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,mBAAoB,SAAQ,+BAA+B;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,WAAW,kBAAmB,SAAQ,+BAA+B;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,8BACf,SAAQ,+BAA+B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACnD,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;CACrC;AAED,MAAM,WAAW,+BACf,SAAQ,+BAA+B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACpD;AAED,MAAM,MAAM,oBAAoB,GAC5B,8BAA8B,GAC9B,+BAA+B,CAAC;AAEpC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,QAAQ,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAC1B,OAAO,GACP,UAAU,GACV,IAAI,GACJ,OAAO,GACP,UAAU,GACV,YAAY,GACZ,UAAU,GACV,aAAa,GACb,oBAAoB,GACpB,UAAU,GACV,iBAAiB,GACjB,SAAS,GACT,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,WAAW,GACX,QAAQ,GACR,WAAW,GACX,aAAa,GACb,aAAa,GACb,SAAS,GACT,YAAY,CAAC;AAEjB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,kBAAkB,EAAE,GAAG,GAAG,CAAC;IACtD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;CAC3C;AAED,MAAM,MAAM,wBAAwB,GAChC,YAAY,GACZ,aAAa,GACb,aAAa,GACb,cAAc,CAAC;AAEnB,MAAM,MAAM,sBAAsB,GAC9B,UAAU,GACV,SAAS,GACT,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,wBAAwB,CAAC;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACjD;AAED,MAAM,MAAM,qBAAqB,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;CACtD;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;CAC3E;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;CAC3E;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;CACjE;AAED,MAAM,MAAM,sBAAsB,GAC9B,MAAM,GACN,QAAQ,GACR,MAAM,GACN,OAAO,GACP,QAAQ,CAAC;AAEb,oFAAoF;AACpF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,wBAAwB,CAAC;CAC9C;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,UAAU,CAAC;AAEzD,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;CACvD;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IACjE,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,WACf,SAAQ,uBAAuB,EAC7B,qBAAqB;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC5D,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACvD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** The canonical string formats. Other shapes are text with a pattern. */
|
|
2
|
+
export const STRING_FORMATS = [
|
|
3
|
+
"uuid",
|
|
4
|
+
"ulid",
|
|
5
|
+
"email",
|
|
6
|
+
"url",
|
|
7
|
+
"uri",
|
|
8
|
+
"hostname",
|
|
9
|
+
"ipv4",
|
|
10
|
+
"ipv6",
|
|
11
|
+
"phone",
|
|
12
|
+
"e164",
|
|
13
|
+
"slug",
|
|
14
|
+
"hex-color",
|
|
15
|
+
"base64",
|
|
16
|
+
"hex",
|
|
17
|
+
"jwt",
|
|
18
|
+
"semver",
|
|
19
|
+
"mime-type",
|
|
20
|
+
"locale",
|
|
21
|
+
"language-tag",
|
|
22
|
+
"country-code",
|
|
23
|
+
"currency-code",
|
|
24
|
+
"path",
|
|
25
|
+
"file-path",
|
|
26
|
+
"file-name",
|
|
27
|
+
"regex",
|
|
28
|
+
"html",
|
|
29
|
+
"markdown",
|
|
30
|
+
"json",
|
|
31
|
+
"yaml",
|
|
32
|
+
"xml",
|
|
33
|
+
"csv",
|
|
34
|
+
];
|
|
35
|
+
//# sourceMappingURL=definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/contracts/definitions.ts"],"names":[],"mappings":"AAkEA,0EAA0E;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;IACL,KAAK;IACL,UAAU;IACV,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,WAAW;IACX,QAAQ;IACR,KAAK;IACL,KAAK;IACL,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,cAAc;IACd,cAAc;IACd,eAAe;IACf,MAAM;IACN,WAAW;IACX,WAAW;IACX,OAAO;IACP,MAAM;IACN,UAAU;IACV,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;CACG,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { AuthorSourceLocation, CanonicalValue, DeclarationRef, SemanticMetadataState } from "./foundation.js";
|
|
2
|
+
import type { TemporalDurationState } from "./definitions.js";
|
|
3
|
+
export type ComparisonOperatorState = "equal" | "not-equal" | "less-than" | "less-than-or-equal" | "greater-than" | "greater-than-or-equal";
|
|
4
|
+
export type ArithmeticOperatorState = "add" | "subtract" | "multiply" | "divide";
|
|
5
|
+
export type LogicalOperatorState = "and" | "or";
|
|
6
|
+
export type TemporalFunctionState = "now" | "in-time-zone" | "date" | "time" | "date-time" | "instant" | "year-month";
|
|
7
|
+
export type ExpressionValueState = DeclarationRef<"expression"> | {
|
|
8
|
+
readonly value: CanonicalValue;
|
|
9
|
+
} | {
|
|
10
|
+
readonly context: string;
|
|
11
|
+
readonly path: readonly string[];
|
|
12
|
+
} | {
|
|
13
|
+
readonly duration: TemporalDurationState;
|
|
14
|
+
} | {
|
|
15
|
+
readonly operator: ComparisonOperatorState;
|
|
16
|
+
readonly left: ExpressionValueState;
|
|
17
|
+
readonly right: ExpressionValueState;
|
|
18
|
+
} | {
|
|
19
|
+
readonly operator: ArithmeticOperatorState | LogicalOperatorState;
|
|
20
|
+
readonly values: readonly ExpressionValueState[];
|
|
21
|
+
} | {
|
|
22
|
+
readonly operator: "not";
|
|
23
|
+
readonly value: ExpressionValueState;
|
|
24
|
+
} | {
|
|
25
|
+
readonly function: "now";
|
|
26
|
+
} | {
|
|
27
|
+
readonly function: "in-time-zone";
|
|
28
|
+
readonly value: ExpressionValueState;
|
|
29
|
+
readonly timeZone: string;
|
|
30
|
+
} | {
|
|
31
|
+
readonly function: Exclude<TemporalFunctionState, "now" | "in-time-zone">;
|
|
32
|
+
readonly value: ExpressionValueState;
|
|
33
|
+
};
|
|
34
|
+
/** A named, owned expression declaration (decision 0011). */
|
|
35
|
+
export interface ExpressionState extends SemanticMetadataState {
|
|
36
|
+
readonly identity: symbol;
|
|
37
|
+
readonly kind: "expression";
|
|
38
|
+
readonly group?: DeclarationRef<"group">;
|
|
39
|
+
readonly feature?: DeclarationRef<"feature">;
|
|
40
|
+
readonly description?: string;
|
|
41
|
+
readonly value: ExpressionValueState;
|
|
42
|
+
readonly origin?: AuthorSourceLocation;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=expressions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../../src/contracts/expressions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,cAAc,EACd,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,MAAM,MAAM,uBAAuB,GAC/B,OAAO,GACP,WAAW,GACX,WAAW,GACX,oBAAoB,GACpB,cAAc,GACd,uBAAuB,CAAC;AAE5B,MAAM,MAAM,uBAAuB,GAC/B,KAAK,GACL,UAAU,GACV,UAAU,GACV,QAAQ,CAAC;AAEb,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,IAAI,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAC7B,KAAK,GACL,cAAc,GACd,MAAM,GACN,MAAM,GACN,WAAW,GACX,SAAS,GACT,YAAY,CAAC;AAEjB,MAAM,MAAM,oBAAoB,GAC5B,cAAc,CAAC,YAAY,CAAC,GAC5B;IAAE,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAAE,GAClC;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC9D;IAAE,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAA;CAAE,GAC5C;IACE,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,CAAC;IAC3C,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,GAAG,oBAAoB,CAAC;IAClE,QAAQ,CAAC,MAAM,EAAE,SAAS,oBAAoB,EAAE,CAAC;CAClD,GACD;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAA;CAAE,GAClE;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAA;CAAE,GAC5B;IACE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,GACD;IACE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,qBAAqB,EAAE,KAAK,GAAG,cAAc,CAAC,CAAC;IAC1E,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;CACtC,CAAC;AAEN,6DAA6D;AAC7D,MAAM,WAAW,eAAgB,SAAQ,qBAAqB;IAC5D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../src/contracts/expressions.ts"],"names":[],"mappings":""}
|