@endge/core 2.0.0 → 2.0.2
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/dist/core.cjs +376 -287
- package/dist/core.js +22256 -19461
- package/dist/domain/entities/reflect/RConfiguration.d.ts +11 -0
- package/dist/domain/entities/runtime/hosts/ComponentSFCRuntimeHost.d.ts +3 -0
- package/dist/domain/types/auth/auth-profile.types.d.ts +17 -4
- package/dist/domain/types/component/sfc/dependencies.types.d.ts +14 -2
- package/dist/domain/types/component/sfc/intrinsic-events.types.d.ts +2 -0
- package/dist/domain/types/component/sfc/ir.types.d.ts +26 -6
- package/dist/domain/types/component/sfc/ports.types.d.ts +3 -1
- package/dist/domain/types/component/sfc/tag-attribute-contract.types.d.ts +11 -0
- package/dist/domain/types/component/sfc/tag-input-contract.types.d.ts +17 -0
- package/dist/domain/types/component/sfc/visual-projection.types.d.ts +99 -8
- package/dist/domain/types/configuration/configuration.type.d.ts +52 -7
- package/dist/domain/types/document/document.types.d.ts +4 -2
- package/dist/domain/types/document/domain-export.type.d.ts +2 -0
- package/dist/domain/types/document/domain-provider.type.d.ts +1 -1
- package/dist/domain/types/document/query.types.d.ts +1 -1
- package/dist/domain/types/document/workspace.types.d.ts +2 -3
- package/dist/domain/types/i18n.types.d.ts +2 -0
- package/dist/domain/types/kernel/events.types.d.ts +0 -3
- package/dist/domain/types/program/program.types.d.ts +9 -2
- package/dist/domain/types/runtime/action.types.d.ts +1 -0
- package/dist/domain/types/runtime/context-persistence.types.d.ts +27 -0
- package/dist/domain/types/source/configuration-source.types.d.ts +47 -0
- package/dist/domain/types/source/query-source.types.d.ts +36 -9
- package/dist/domain/types/source/source-engine.types.d.ts +34 -3
- package/dist/domain/types/source/stream-source.types.d.ts +2 -1
- package/dist/domain/types/ui/tooltip-markdown.types.d.ts +32 -0
- package/dist/main.d.ts +10 -0
- package/dist/model/config/kernel.config.d.ts +5 -1
- package/dist/model/config/sfc-editing.config.d.ts +3 -0
- package/dist/model/config/tooltip.config.d.ts +3 -0
- package/dist/model/config/ui-composition.config.d.ts +10 -10
- package/dist/model/kernel/endge.d.ts +2 -5
- package/dist/model/modules/context/endge-configuration-schema.d.ts +24 -0
- package/dist/model/modules/context/endge-configuration.d.ts +2 -0
- package/dist/model/modules/context/endge-context.d.ts +22 -1
- package/dist/model/modules/context/endge-vars.d.ts +4 -2
- package/dist/model/modules/context/endge-workspace.d.ts +11 -3
- package/dist/model/modules/context/persistence/RuntimeStateController.d.ts +7 -4
- package/dist/model/modules/domain/endge-domain.d.ts +20 -0
- package/dist/model/modules/program/endge-source.d.ts +4 -2
- package/dist/model/modules/runtime/core/endge-runtime.d.ts +3 -2
- package/dist/model/modules/runtime/execution/computation/ComputationResourceRegistry.d.ts +2 -0
- package/dist/model/modules/security/auth/adapters/OAuth2PasswordAuthAdapter.d.ts +11 -0
- package/dist/model/modules/ui/endge-ui.d.ts +0 -11
- package/dist/model/services/compiler/component-sfc/component-sfc-compile.d.ts +3 -0
- package/dist/model/services/compiler/component-sfc/component-sfc-template.d.ts +3 -0
- package/dist/model/services/configuration/configuration-value.d.ts +20 -0
- package/dist/model/services/configuration/endge-configuration.d.ts +3 -1
- package/dist/model/services/i18n/composition-i18n-catalog-projection.d.ts +19 -0
- package/dist/model/services/i18n/i18n-catalog.d.ts +3 -1
- package/dist/model/services/query/QueryExecutor.d.ts +3 -0
- package/dist/model/services/source-engine/compilers/configuration-source-compile.d.ts +4 -0
- package/dist/model/services/source-engine/component-sfc/component-sfc-table-source-patch.d.ts +2 -2
- package/dist/model/services/source-engine/composition-source-i18n-hints.d.ts +5 -0
- package/dist/model/services/source-engine/configuration-source-patch.d.ts +16 -0
- package/dist/model/services/source-engine/strategies/CompositionSourceLanguageStrategy.d.ts +1 -0
- package/dist/model/services/source-engine/strategies/ConfigurationSourceEngineStrategy.d.ts +7 -0
- package/dist/model/services/source-engine/strategies/ConfigurationSourceLanguageStrategy.d.ts +12 -0
- package/dist/model/services/source-engine/strategies/QuerySourceLanguageStrategy.d.ts +1 -1
- package/dist/model/services/source-engine/templates/configuration.default.source.d.ts +2 -0
- package/dist/model/services/source-engine/templates/query.default.source.d.ts +2 -0
- package/dist/model/services/source-engine/type-source-references.d.ts +3 -0
- package/dist/model/services/source-engine/type-source-serialize.d.ts +2 -1
- package/dist/model/services/tooltip/endge-tooltip-markdown.d.ts +5 -0
- package/dist/test/model/services/compiler/component-sfc/component-sfc-tooltip.test.d.ts +1 -0
- package/dist/test/model/services/source-engine/configuration-source.test.d.ts +1 -0
- package/dist/test/tooltip/endge-tooltip-markdown.test.d.ts +1 -0
- package/dist/tools/component-sfc-edit-trigger.d.ts +9 -1
- package/package.json +4 -4
- package/dist/model/modules/runtime/input/endge-sse.d.ts +0 -46
|
@@ -10,6 +10,8 @@ export interface I18nRuntimeCatalogEntry {
|
|
|
10
10
|
}
|
|
11
11
|
/** Накопленный translation catalog, доступный дочернему runtime. */
|
|
12
12
|
export type I18nRuntimeCatalog = Record<string, I18nRuntimeCatalogEntry>;
|
|
13
|
+
/** Authoring-only provenance: public alias -> locale -> message key -> document identity. */
|
|
14
|
+
export type I18nCatalogProvenance = Record<string, Record<string, Record<string, string>>>;
|
|
13
15
|
export interface I18nTranslateOptions {
|
|
14
16
|
locale?: string;
|
|
15
17
|
fallbackLocale?: string;
|
|
@@ -10,9 +10,10 @@ import { ProgramMetadata } from './program-metadata.types';
|
|
|
10
10
|
import { ComputationProgramPayload } from '../computation/computation-program.types';
|
|
11
11
|
import { EndgeStyleSheetArtifact } from '../style/style.types';
|
|
12
12
|
import { ActionImplementation, ActionTargetSelector } from '../runtime/action.types';
|
|
13
|
+
export type { ConfigurationProgramPayload } from '../source/configuration-source.types';
|
|
13
14
|
export type ProgramArtifactKey = string;
|
|
14
15
|
/** Тип доменной сущности, для которой compiler может построить program artifact. */
|
|
15
|
-
export type ProgramEntityType = 'type' | 'component-sfc' | 'computation' | 'action' | 'query' | 'data-view' | 'store' | 'stream' | 'update' | 'filter' | 'composition' | 'style';
|
|
16
|
+
export type ProgramEntityType = 'type' | 'component-sfc' | 'computation' | 'action' | 'query' | 'data-view' | 'store' | 'stream' | 'update' | 'filter' | 'composition' | 'style' | 'configuration';
|
|
16
17
|
/** Итоговый статус artifact после компиляции и валидации. */
|
|
17
18
|
export type ProgramArtifactStatus = 'valid' | 'warning' | 'error';
|
|
18
19
|
/** Возможность, которую artifact предоставляет runtime/render слоям. */
|
|
@@ -136,7 +137,11 @@ export interface QueryProgramPayload {
|
|
|
136
137
|
endpoint: QueryProgramRequestValue<string>;
|
|
137
138
|
/** Тело запроса, GraphQL document или custom query expression. */
|
|
138
139
|
query: QueryProgramRequestValue<string>;
|
|
139
|
-
/**
|
|
140
|
+
/** GraphQL operation name, если artifact использует query-gql transport. */
|
|
141
|
+
operationName?: string;
|
|
142
|
+
/** Политика GraphQL errors в HTTP 2xx response. */
|
|
143
|
+
errorPolicy?: 'throw' | 'ignore';
|
|
144
|
+
/** HTTP headers Query transport. */
|
|
140
145
|
headers?: QueryProgramRequestValue<Record<string, string>>;
|
|
141
146
|
/** Auth config, подготовленный для runtime query layer. */
|
|
142
147
|
auth?: QueryProgramRequestValue<unknown>;
|
|
@@ -148,6 +153,8 @@ export interface QueryProgramPayload {
|
|
|
148
153
|
props: QueryProgramProp[];
|
|
149
154
|
/** Безопасный request.body IR. При null отправляется пустой object payload. */
|
|
150
155
|
requestBody: SourceExpressionIR | null;
|
|
156
|
+
/** Безопасный GraphQL variables IR. */
|
|
157
|
+
requestVariables?: SourceExpressionIR | null;
|
|
151
158
|
/** Включены ли mock data для query. */
|
|
152
159
|
mockDataEnabled?: boolean;
|
|
153
160
|
/** Mock payload query. */
|
|
@@ -4,6 +4,7 @@ export type RuntimeActionSurface = string;
|
|
|
4
4
|
/** Stable identities of targetless Actions provided by Endge itself. */
|
|
5
5
|
export declare const BUILTIN_ACTION_IDS: {
|
|
6
6
|
readonly consoleLog: "built-in-console-log";
|
|
7
|
+
readonly testAlert: "built-in-test-alert";
|
|
7
8
|
readonly vocabAcquire: "built-in-vocabs-acquire";
|
|
8
9
|
readonly vocabRefresh: "built-in-vocabs-refresh";
|
|
9
10
|
readonly vocabInvalidate: "built-in-vocabs-invalidate";
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EndgePublicConfigurationSnapshot } from '../configuration/configuration.type';
|
|
1
2
|
export type EndgePersistenceDriver = 'local' | 'disabled';
|
|
2
3
|
export interface EndgePersistenceOptions {
|
|
3
4
|
driver?: EndgePersistenceDriver;
|
|
@@ -13,6 +14,31 @@ export interface EndgeContextSnapshot {
|
|
|
13
14
|
user: string | null;
|
|
14
15
|
locale: string | null;
|
|
15
16
|
theme: string | null;
|
|
17
|
+
timezone: string | null;
|
|
18
|
+
}
|
|
19
|
+
/** Volatile keyboard state supplied by the active UI adapter. */
|
|
20
|
+
export interface EndgeKeyboardContextSnapshot {
|
|
21
|
+
platform: 'macos' | 'windows' | 'linux' | 'unknown';
|
|
22
|
+
modifiers: {
|
|
23
|
+
ctrl: boolean;
|
|
24
|
+
shift: boolean;
|
|
25
|
+
alt: boolean;
|
|
26
|
+
meta: boolean;
|
|
27
|
+
mod: boolean;
|
|
28
|
+
altGraph: boolean;
|
|
29
|
+
};
|
|
30
|
+
held: {
|
|
31
|
+
key: string[];
|
|
32
|
+
code: string[];
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Full read-only SFC context. Volatile input state is deliberately not serializable. */
|
|
36
|
+
export interface EndgeRuntimeContextSnapshot extends EndgeContextSnapshot {
|
|
37
|
+
/** Static effective configuration of the current build; never persisted or Raph-backed. */
|
|
38
|
+
config: EndgePublicConfigurationSnapshot;
|
|
39
|
+
input: {
|
|
40
|
+
keyboard: EndgeKeyboardContextSnapshot;
|
|
41
|
+
};
|
|
16
42
|
}
|
|
17
43
|
export interface EndgePersistenceScope {
|
|
18
44
|
workspaceId: string;
|
|
@@ -21,6 +47,7 @@ export interface EndgePersistenceScope {
|
|
|
21
47
|
environmentId: string;
|
|
22
48
|
userId: string;
|
|
23
49
|
}
|
|
50
|
+
export type EndgePersistenceScopeResolver = () => EndgePersistenceScope;
|
|
24
51
|
export interface EndgeSessionIdentity {
|
|
25
52
|
userId?: string | null;
|
|
26
53
|
tenantId?: string | null;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ProgramDiagnostic } from '../program/program.types';
|
|
2
|
+
import { TypeSourceExpression } from './type-source.types';
|
|
3
|
+
/** JSON-serializable persisted configuration value. */
|
|
4
|
+
export type EndgeJSONValue = null | boolean | number | string | EndgeJSONValue[] | {
|
|
5
|
+
[key: string]: EndgeJSONValue;
|
|
6
|
+
};
|
|
7
|
+
/** One source-backed user setting. */
|
|
8
|
+
export interface ConfigurationSourceValueDefinition {
|
|
9
|
+
key: string;
|
|
10
|
+
type: TypeSourceExpression;
|
|
11
|
+
defaultValue: EndgeJSONValue;
|
|
12
|
+
defaultWasInferred: boolean;
|
|
13
|
+
label: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
min?: number;
|
|
16
|
+
max?: number;
|
|
17
|
+
step?: number;
|
|
18
|
+
}
|
|
19
|
+
/** Canonical Configuration Source v1 document. */
|
|
20
|
+
export interface ConfigurationSourceDocument {
|
|
21
|
+
values: ConfigurationSourceValueDefinition[];
|
|
22
|
+
}
|
|
23
|
+
/** Early/compiler-facing Configuration artifact. */
|
|
24
|
+
export interface ConfigurationProgramPayload {
|
|
25
|
+
type: 'configuration';
|
|
26
|
+
identity: string;
|
|
27
|
+
displayName: string;
|
|
28
|
+
sourceVersion: 1;
|
|
29
|
+
values: ConfigurationSourceValueDefinition[];
|
|
30
|
+
}
|
|
31
|
+
export interface ConfigurationSourceCompileResult {
|
|
32
|
+
ast: unknown | null;
|
|
33
|
+
document: ConfigurationSourceDocument | null;
|
|
34
|
+
/** Best-effort AST projection for visual repair when semantic diagnostics block compilation. */
|
|
35
|
+
draftDocument?: ConfigurationSourceDocument | null;
|
|
36
|
+
diagnostics: Omit<ProgramDiagnostic, 'entityRef'>[];
|
|
37
|
+
}
|
|
38
|
+
export interface EndgeConfigurationSchemaEntry {
|
|
39
|
+
id: string | number;
|
|
40
|
+
identity: string;
|
|
41
|
+
displayName: string;
|
|
42
|
+
description?: string | null;
|
|
43
|
+
sourceVersion: number;
|
|
44
|
+
document: ConfigurationSourceDocument | null;
|
|
45
|
+
diagnostics: Omit<ProgramDiagnostic, 'entityRef'>[];
|
|
46
|
+
status: 'valid' | 'warning' | 'error';
|
|
47
|
+
}
|
|
@@ -3,12 +3,14 @@ import { ProgramDiagnostic, QueryProgramPayload } from '../program/program.types
|
|
|
3
3
|
import { DataViewRef } from './data-view-source.types';
|
|
4
4
|
import { ProgramMetadataMap } from '../program/program-metadata.types';
|
|
5
5
|
import { QueryProgramProp, SourceExpressionIR, SourceFieldDefinition } from './source-expression.types';
|
|
6
|
-
/** Поддерживаемые kind
|
|
7
|
-
export type QuerySourceKind = 'rest';
|
|
6
|
+
/** Поддерживаемые transport-kind Query source. */
|
|
7
|
+
export type QuerySourceKind = 'rest' | 'graphql';
|
|
8
|
+
/** Политика GraphQL errors в HTTP 2xx response. */
|
|
9
|
+
export type QueryGraphQLErrorPolicy = 'throw' | 'ignore';
|
|
8
10
|
/** Static request value or a safe expression evaluated from Query props at runtime. */
|
|
9
11
|
export type QuerySourceRequestValue<T> = T | SourceExpressionIR;
|
|
10
12
|
/** Source-описание HTTP request части REST-запроса. */
|
|
11
|
-
export interface
|
|
13
|
+
export interface QuerySourceRestRequest {
|
|
12
14
|
/** Endpoint или Endge var-token вида {API_URL}. */
|
|
13
15
|
endpoint: QuerySourceRequestValue<string>;
|
|
14
16
|
/** REST path. В legacy RQuery это поле хранится как query. */
|
|
@@ -26,6 +28,25 @@ export interface QuerySourceRequest {
|
|
|
26
28
|
/** Безопасный body expression для query source v2. */
|
|
27
29
|
body?: SourceExpressionIR | null;
|
|
28
30
|
}
|
|
31
|
+
/** Source-описание GraphQL operation и variables. */
|
|
32
|
+
export interface QuerySourceGraphQLRequest {
|
|
33
|
+
/** GraphQL endpoint или Endge var-token вида {API_URL}. */
|
|
34
|
+
endpoint: QuerySourceRequestValue<string>;
|
|
35
|
+
/** Статический GraphQL document из gql template. */
|
|
36
|
+
document: string;
|
|
37
|
+
/** Operation name для document с несколькими operations. */
|
|
38
|
+
operationName?: string;
|
|
39
|
+
/** Безопасное variables expression, построенное через variables(...). */
|
|
40
|
+
variables?: SourceExpressionIR | null;
|
|
41
|
+
/** Дополнительные HTTP headers. */
|
|
42
|
+
headers: QuerySourceRequestValue<Record<string, string>>;
|
|
43
|
+
/** Auth config. */
|
|
44
|
+
auth: QuerySourceRequestValue<RQueryAuth>;
|
|
45
|
+
/** Request timeout. */
|
|
46
|
+
timeoutMs?: QuerySourceRequestValue<number>;
|
|
47
|
+
/** Обработка GraphQL errors в HTTP 2xx response. */
|
|
48
|
+
errorPolicy: QueryGraphQLErrorPolicy;
|
|
49
|
+
}
|
|
29
50
|
/** Source-описание mock-режима запроса. */
|
|
30
51
|
export interface QuerySourceMock {
|
|
31
52
|
/** Включены ли mock data. */
|
|
@@ -48,12 +69,7 @@ export interface QuerySourceOutput {
|
|
|
48
69
|
contract?: SourceFieldDefinition | null;
|
|
49
70
|
}
|
|
50
71
|
export type QuerySourceOutputs = QuerySourceOutput[];
|
|
51
|
-
|
|
52
|
-
export interface QuerySourceDocument {
|
|
53
|
-
/** Тип source query. */
|
|
54
|
-
kind: QuerySourceKind;
|
|
55
|
-
/** Request config. */
|
|
56
|
-
request: QuerySourceRequest;
|
|
72
|
+
interface QuerySourceDocumentBase {
|
|
57
73
|
/** Единственный runtime input contract Query. */
|
|
58
74
|
props: QueryProgramProp[];
|
|
59
75
|
/** Ordered output graph: response/output sources and transformations. */
|
|
@@ -61,6 +77,16 @@ export interface QuerySourceDocument {
|
|
|
61
77
|
/** Mock config. */
|
|
62
78
|
mock: QuerySourceMock;
|
|
63
79
|
}
|
|
80
|
+
export interface QuerySourceRestDocument extends QuerySourceDocumentBase {
|
|
81
|
+
kind: 'rest';
|
|
82
|
+
request: QuerySourceRestRequest;
|
|
83
|
+
}
|
|
84
|
+
export interface QuerySourceGraphQLDocument extends QuerySourceDocumentBase {
|
|
85
|
+
kind: 'graphql';
|
|
86
|
+
request: QuerySourceGraphQLRequest;
|
|
87
|
+
}
|
|
88
|
+
/** Canonical authoring-модель source-only Query v2. */
|
|
89
|
+
export type QuerySourceDocument = QuerySourceRestDocument | QuerySourceGraphQLDocument;
|
|
64
90
|
/** Публичные editor-slots, которые query source patcher умеет менять точечно. */
|
|
65
91
|
export type QuerySourcePatchPath = 'kind' | 'request.endpoint' | 'request.path' | 'request.method' | 'request.headers' | 'request.auth' | 'request.timeoutMs' | 'request.formUrlencoded' | 'request.body' | 'props' | 'outputs' | 'mock.enabled' | 'mock.data';
|
|
66
92
|
/** Операция AST-патчинга query source. */
|
|
@@ -87,3 +113,4 @@ export interface QuerySourceCompileResult {
|
|
|
87
113
|
/** Diagnostics source compiler-а. */
|
|
88
114
|
diagnostics: Omit<ProgramDiagnostic, 'entityRef'>[];
|
|
89
115
|
}
|
|
116
|
+
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { I18nCatalogProvenance, I18nRuntimeCatalog } from '../i18n.types';
|
|
2
|
+
import { TypeSourceDefinition } from './type-source.types';
|
|
1
3
|
/** Канонический тип source-документа, для которого выбирается source strategy. */
|
|
2
|
-
export type SourceKind = 'query' | 'data-view' | 'filter' | 'composition' | 'store' | 'stream' | 'update' | 'computation' | 'style' | 'type';
|
|
4
|
+
export type SourceKind = 'query' | 'data-view' | 'filter' | 'composition' | 'store' | 'stream' | 'update' | 'computation' | 'style' | 'type' | 'configuration';
|
|
3
5
|
/** Тип нейтральной source completion без привязки к Monaco или другому editor API. */
|
|
4
6
|
export type SourceLanguageCompletionKind = 'keyword' | 'function' | 'property' | 'value' | 'snippet';
|
|
5
7
|
/** Позиция курсора внутри source-документа. */
|
|
@@ -20,9 +22,28 @@ export interface SourceLanguageContext {
|
|
|
20
22
|
identity: string;
|
|
21
23
|
displayName?: string;
|
|
22
24
|
category?: 'primitive' | 'reference' | 'user';
|
|
25
|
+
definition?: TypeSourceDefinition | null;
|
|
26
|
+
entityReference?: {
|
|
27
|
+
target: string;
|
|
28
|
+
storage: 'id' | 'identity';
|
|
29
|
+
};
|
|
23
30
|
}>;
|
|
24
31
|
/** Identity of the document that owns current source diagnostics. */
|
|
25
32
|
ownerIdentity?: string;
|
|
33
|
+
/** Effective translation catalogs for all current Project occurrences. */
|
|
34
|
+
i18n?: SourceLanguageI18nContext;
|
|
35
|
+
}
|
|
36
|
+
/** One statically projected Composition occurrence in the current Project. */
|
|
37
|
+
export interface SourceLanguageI18nOccurrence {
|
|
38
|
+
id: string;
|
|
39
|
+
catalogsByScope: Readonly<Record<string, I18nRuntimeCatalog>>;
|
|
40
|
+
provenanceByScope: Readonly<Record<string, I18nCatalogProvenance>>;
|
|
41
|
+
}
|
|
42
|
+
/** Translation input prepared by the application without mounting Runtime. */
|
|
43
|
+
export interface SourceLanguageI18nContext {
|
|
44
|
+
locale: string;
|
|
45
|
+
fallbackLocale: string;
|
|
46
|
+
occurrences: readonly SourceLanguageI18nOccurrence[];
|
|
26
47
|
}
|
|
27
48
|
/** Нейтральная completion item, которую editor adapter мапит в свой формат. */
|
|
28
49
|
export interface SourceLanguageCompletion {
|
|
@@ -38,7 +59,7 @@ export interface SourceLanguageCompletion {
|
|
|
38
59
|
documentation?: string;
|
|
39
60
|
}
|
|
40
61
|
/** Логический тип внешнего доменного документа, на который ссылается source. */
|
|
41
|
-
export type SourceDocumentReferenceTarget = 'auth-profile' | 'component' | 'composition' | 'computation' | 'converter' | 'data-view' | 'filter' | 'mock' | 'query' | 'store' | 'stream' | 'update' | 'style' | 'type' | 'vocabs';
|
|
62
|
+
export type SourceDocumentReferenceTarget = 'auth-profile' | 'component' | 'composition' | 'computation' | 'converter' | 'data-view' | 'filter' | 'i18n-bundles' | 'mock' | 'query' | 'store' | 'stream' | 'update' | 'style' | 'type' | 'vocabs';
|
|
42
63
|
/** Семантическая ссылка из source на внешний доменный документ. */
|
|
43
64
|
export interface SourceDocumentReference {
|
|
44
65
|
/** Логический тип цели; UI может уточнить concrete document type через domain. */
|
|
@@ -58,6 +79,14 @@ export interface SourceLanguageSemanticHighlight {
|
|
|
58
79
|
identity: string;
|
|
59
80
|
range: SourceDocumentReference['range'];
|
|
60
81
|
}
|
|
82
|
+
/** Renderer-neutral inline annotation shown after one source range. */
|
|
83
|
+
export interface SourceLanguageInlineHint {
|
|
84
|
+
kind: 'translation';
|
|
85
|
+
status: 'resolved' | 'ambiguous';
|
|
86
|
+
text: string;
|
|
87
|
+
tooltip?: string;
|
|
88
|
+
range: SourceDocumentReference['range'];
|
|
89
|
+
}
|
|
61
90
|
/** Результат validation source language strategy. */
|
|
62
91
|
export interface SourceLanguageValidationResult extends SourceEngineResult {
|
|
63
92
|
/** Diagnostics, найденные language strategy. */
|
|
@@ -174,7 +203,7 @@ export interface SourceLanguageStrategy {
|
|
|
174
203
|
/** Описывает подсветку, brackets и editor triggers в adapter-neutral формате. */
|
|
175
204
|
syntax: SourceLanguageSyntaxDefinition;
|
|
176
205
|
/** Возвращает базовый source для новой сущности. */
|
|
177
|
-
createDefaultSource: () => string;
|
|
206
|
+
createDefaultSource: (variant?: string) => string;
|
|
178
207
|
/** Нормализует поддержанный syntax, сохраняя остальной авторский source. */
|
|
179
208
|
normalize?: (source: string) => string;
|
|
180
209
|
/** Валидирует source без знания о конкретном editor adapter. */
|
|
@@ -185,4 +214,6 @@ export interface SourceLanguageStrategy {
|
|
|
185
214
|
resolveReference?: (context: SourceLanguageContext) => SourceDocumentReference | null;
|
|
186
215
|
/** Возвращает semantic highlights без привязки к конкретному editor adapter. */
|
|
187
216
|
semanticHighlights?: (context: SourceLanguageContext) => SourceLanguageSemanticHighlight[];
|
|
217
|
+
/** Возвращает inline annotations без привязки к конкретному editor adapter. */
|
|
218
|
+
inlineHints?: (context: SourceLanguageContext) => SourceLanguageInlineHint[];
|
|
188
219
|
}
|
|
@@ -3,7 +3,8 @@ export interface StreamSseTransportDescriptor {
|
|
|
3
3
|
kind: 'sse';
|
|
4
4
|
url: string;
|
|
5
5
|
withCredentials: boolean;
|
|
6
|
-
authMode: 'inherit' | 'none';
|
|
6
|
+
authMode: 'inherit' | 'profile' | 'none';
|
|
7
|
+
authProfileIdentity: string | null;
|
|
7
8
|
}
|
|
8
9
|
export type StreamTransportDescriptor = StreamSseTransportDescriptor;
|
|
9
10
|
export interface StreamEventDescriptor {
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type EndgeTooltipMarkdownInline = {
|
|
2
|
+
kind: 'text';
|
|
3
|
+
value: string;
|
|
4
|
+
} | {
|
|
5
|
+
kind: 'strong';
|
|
6
|
+
children: EndgeTooltipMarkdownInline[];
|
|
7
|
+
} | {
|
|
8
|
+
kind: 'emphasis';
|
|
9
|
+
children: EndgeTooltipMarkdownInline[];
|
|
10
|
+
} | {
|
|
11
|
+
kind: 'code';
|
|
12
|
+
value: string;
|
|
13
|
+
} | {
|
|
14
|
+
kind: 'link';
|
|
15
|
+
href: string;
|
|
16
|
+
children: EndgeTooltipMarkdownInline[];
|
|
17
|
+
};
|
|
18
|
+
export type EndgeTooltipMarkdownBlock = {
|
|
19
|
+
kind: 'heading';
|
|
20
|
+
level: 1 | 2 | 3;
|
|
21
|
+
children: EndgeTooltipMarkdownInline[];
|
|
22
|
+
} | {
|
|
23
|
+
kind: 'paragraph';
|
|
24
|
+
children: EndgeTooltipMarkdownInline[];
|
|
25
|
+
} | {
|
|
26
|
+
kind: 'list';
|
|
27
|
+
ordered: boolean;
|
|
28
|
+
items: EndgeTooltipMarkdownInline[][];
|
|
29
|
+
} | {
|
|
30
|
+
kind: 'code-block';
|
|
31
|
+
value: string;
|
|
32
|
+
};
|
package/dist/main.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ export * from './model/modules/diagnostics/endge-problems';
|
|
|
25
25
|
export * from './model/modules/diagnostics/endge-telemetry';
|
|
26
26
|
export * from './model/modules/context/endge-context';
|
|
27
27
|
export * from './model/modules/context/endge-configuration';
|
|
28
|
+
export * from './model/modules/context/endge-configuration-schema';
|
|
28
29
|
export * from './model/modules/runtime/core/endge-actions';
|
|
29
30
|
export * from './model/modules/ui/endge-ui';
|
|
30
31
|
export * from './model/modules/ui/endge-ui-registry';
|
|
@@ -108,12 +109,14 @@ export * from './domain/types/source/store-source.types';
|
|
|
108
109
|
export * from './domain/types/source/stream-source.types';
|
|
109
110
|
export * from './domain/types/source/update-source.types';
|
|
110
111
|
export * from './domain/types/source/type-source.types';
|
|
112
|
+
export * from './domain/types/source/configuration-source.types';
|
|
111
113
|
export * from './domain/types/style/style.types';
|
|
112
114
|
export * from './domain/types/ui/context-menu.types';
|
|
113
115
|
export * from './domain/types/ui/filter-view.type';
|
|
114
116
|
export * from './domain/types/ui/jsx.types';
|
|
115
117
|
export * from './domain/types/ui/ui-composition.types';
|
|
116
118
|
export * from './domain/types/ui/ui-render-adapter.type';
|
|
119
|
+
export * from './domain/types/ui/tooltip-markdown.types';
|
|
117
120
|
export * from './domain/types/ui/ui.types';
|
|
118
121
|
export * from './domain/types/i18n.types';
|
|
119
122
|
export * from './domain/entities/endge/EndgeModuleController';
|
|
@@ -143,6 +146,7 @@ export * from './domain/entities/reflect/REnvironment';
|
|
|
143
146
|
export * from './domain/entities/reflect/RTenant';
|
|
144
147
|
export * from './domain/entities/reflect/RPolicy';
|
|
145
148
|
export * from './domain/entities/reflect/RStyle';
|
|
149
|
+
export * from './domain/entities/reflect/RConfiguration';
|
|
146
150
|
export * from './domain/entities/reflect/RVocabs';
|
|
147
151
|
export * from './domain/entities/reflect/RAuthProfile';
|
|
148
152
|
export * from './domain/entities/reflect/RI18nBundle';
|
|
@@ -173,6 +177,7 @@ export * from './model/adapters/diagnostics/SentryDiagnosticsAdapter';
|
|
|
173
177
|
export * from './model/adapters/diagnostics/SentryDiagnosticsAdapter.types';
|
|
174
178
|
export * from './model/config/kernel.config';
|
|
175
179
|
export * from './model/config/ui-composition.config';
|
|
180
|
+
export * from './model/config/tooltip.config';
|
|
176
181
|
export { default as Config } from './model/config/kernel.config';
|
|
177
182
|
export * from './model/modules/context/persistence/EndgeStorageAdapterRegistry';
|
|
178
183
|
export * from './model/modules/context/persistence/RuntimeStateController';
|
|
@@ -182,6 +187,10 @@ export * from './model/seed/converters/date/string-to-date';
|
|
|
182
187
|
export * from './model/seed/converters/date/weekdays-range';
|
|
183
188
|
export * from './model/services/document/DocumentDraftFactory';
|
|
184
189
|
export * from './model/services/configuration/endge-configuration';
|
|
190
|
+
export * from './model/services/configuration/configuration-value';
|
|
191
|
+
export * from './model/services/source-engine/compilers/configuration-source-compile';
|
|
192
|
+
export * from './model/services/tooltip/endge-tooltip-markdown';
|
|
193
|
+
export * from './model/services/i18n/composition-i18n-catalog-projection';
|
|
185
194
|
export * from './domain/entities/runtime/RuntimeHostBase';
|
|
186
195
|
export * from './domain/entities/runtime/RuntimeHostRegistry';
|
|
187
196
|
export * from './domain/entities/runtime/RuntimeAppScope';
|
|
@@ -218,6 +227,7 @@ export * from './model/services/style/endgecss-match';
|
|
|
218
227
|
export * from './model/services/source-engine/source-expression-evaluate';
|
|
219
228
|
export * from './model/services/source-engine/filter-source-patch';
|
|
220
229
|
export * from './model/services/source-engine/type-source-serialize';
|
|
230
|
+
export * from './model/services/source-engine/configuration-source-patch';
|
|
221
231
|
export * from './model/services/source-engine/typescript-type-source';
|
|
222
232
|
export * from './model/services/source-engine/component-sfc/component-sfc-visual-projection';
|
|
223
233
|
export * from './model/services/source-engine/component-sfc/component-sfc-table-source-patch';
|
|
@@ -7,7 +7,6 @@ export declare const ENDGE_COMPILER_SPAN_GROUPS: {
|
|
|
7
7
|
readonly ACTIONS: "actions";
|
|
8
8
|
readonly CONVERTERS: "converters";
|
|
9
9
|
readonly QUERIES: "queries";
|
|
10
|
-
readonly SSE: "sse";
|
|
11
10
|
readonly RAPH: "raph";
|
|
12
11
|
};
|
|
13
12
|
/** Runtime fallback limits для nested computation execution. */
|
|
@@ -16,9 +15,11 @@ export declare const ENDGE_COMPUTATION_MAX_CALLS = 256;
|
|
|
16
15
|
export declare const CONTEXT_STORAGE_KEY = "endge:context:v1";
|
|
17
16
|
export declare const LEGACY_CONTEXT_STORAGE_KEY = "endge-context";
|
|
18
17
|
export declare const LEGACY_THEME_STORAGE_KEY = "endge:theme";
|
|
18
|
+
export declare const LEGACY_TIMEZONE_STORAGE_KEY = "endge:isLocalTime";
|
|
19
19
|
export declare const DEFAULT_LOCALE = "en";
|
|
20
20
|
export declare const DEFAULT_FALLBACK_LOCALE = "en";
|
|
21
21
|
export declare const DEFAULT_THEME = "dark";
|
|
22
|
+
export declare const DEFAULT_TIMEZONE = "local";
|
|
22
23
|
export declare const DEFAULT_SCOPE: {
|
|
23
24
|
readonly tenantId: "default";
|
|
24
25
|
readonly projectId: "default";
|
|
@@ -34,6 +35,9 @@ export declare const VARS_STORAGE_KEY = "endge:vars";
|
|
|
34
35
|
export declare const AUTH_STORAGE_KEY = "endge:auth";
|
|
35
36
|
/** Ключ в Raph-хранилище для глобальных переменных. */
|
|
36
37
|
export declare const STORAGE_VARS_KEY = "vars";
|
|
38
|
+
/** Raph namespace containing persistent and volatile Endge context values. */
|
|
39
|
+
export declare const ENDGE_CONTEXT_RAPH_PATH = "context";
|
|
40
|
+
export declare const ENDGE_KEYBOARD_CONTEXT_RAPH_PATH = "context.input.keyboard";
|
|
37
41
|
/** Обратная совместимость публичного API `Config`. */
|
|
38
42
|
declare const _default: {
|
|
39
43
|
DOMAIN_STORAGE_KEY: string;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { EndgeSFCEditingConfiguration } from '../../domain/types/configuration/configuration.type';
|
|
2
|
+
/** Системные triggers завершения edit session до Workspace cascade. */
|
|
3
|
+
export declare const DEFAULT_ENDGE_SFC_EDITING_CONFIGURATION: Readonly<EndgeSFCEditingConfiguration>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { EndgeTooltipConfiguration } from '../../domain/types/configuration/configuration.type';
|
|
2
|
+
/** System defaults used before Workspace -> Tenant -> Project -> Environment overrides. */
|
|
3
|
+
export declare const DEFAULT_ENDGE_TOOLTIP_CONFIGURATION: Readonly<EndgeTooltipConfiguration>;
|
|
@@ -33,7 +33,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
33
33
|
roles: {
|
|
34
34
|
role: string;
|
|
35
35
|
description: string;
|
|
36
|
-
supportedSurfaces: ("
|
|
36
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
37
37
|
}[];
|
|
38
38
|
};
|
|
39
39
|
defaultLayout?: undefined;
|
|
@@ -78,7 +78,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
78
78
|
roles: {
|
|
79
79
|
role: string;
|
|
80
80
|
description: string;
|
|
81
|
-
supportedSurfaces: ("
|
|
81
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
82
82
|
defaultRendererRefs: {
|
|
83
83
|
admin: string;
|
|
84
84
|
runtime: string;
|
|
@@ -126,7 +126,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
126
126
|
roles: {
|
|
127
127
|
role: string;
|
|
128
128
|
description: string;
|
|
129
|
-
supportedSurfaces: ("
|
|
129
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
130
130
|
defaultRendererRefs: {
|
|
131
131
|
admin: string;
|
|
132
132
|
runtime: string;
|
|
@@ -174,7 +174,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
174
174
|
roles: {
|
|
175
175
|
role: string;
|
|
176
176
|
description: string;
|
|
177
|
-
supportedSurfaces: ("
|
|
177
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
178
178
|
defaultRendererRefs: {
|
|
179
179
|
admin: string;
|
|
180
180
|
runtime: string;
|
|
@@ -222,7 +222,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
222
222
|
roles: {
|
|
223
223
|
role: string;
|
|
224
224
|
description: string;
|
|
225
|
-
supportedSurfaces: ("
|
|
225
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
226
226
|
defaultRendererRefs: {
|
|
227
227
|
admin: string;
|
|
228
228
|
runtime: string;
|
|
@@ -270,7 +270,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
270
270
|
roles: {
|
|
271
271
|
role: string;
|
|
272
272
|
description: string;
|
|
273
|
-
supportedSurfaces: ("
|
|
273
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
274
274
|
defaultRendererRefs: {
|
|
275
275
|
admin: string;
|
|
276
276
|
runtime: string;
|
|
@@ -319,7 +319,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
319
319
|
roles: ({
|
|
320
320
|
role: string;
|
|
321
321
|
description: string;
|
|
322
|
-
supportedSurfaces: ("
|
|
322
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
323
323
|
defaultRendererRefs: {
|
|
324
324
|
admin: string;
|
|
325
325
|
runtime: string;
|
|
@@ -375,7 +375,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
375
375
|
roles: {
|
|
376
376
|
role: string;
|
|
377
377
|
description: string;
|
|
378
|
-
supportedSurfaces: ("
|
|
378
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
379
379
|
defaultRendererRefs: {
|
|
380
380
|
admin: string;
|
|
381
381
|
runtime: string;
|
|
@@ -423,7 +423,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
423
423
|
roles: ({
|
|
424
424
|
role: string;
|
|
425
425
|
description: string;
|
|
426
|
-
supportedSurfaces: ("
|
|
426
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
427
427
|
defaultRendererRefs: {
|
|
428
428
|
admin: string;
|
|
429
429
|
runtime: string;
|
|
@@ -481,7 +481,7 @@ export declare const ENDGE_UI_DEFAULT_DEFINITIONS: ({
|
|
|
481
481
|
roles: {
|
|
482
482
|
role: string;
|
|
483
483
|
description: string;
|
|
484
|
-
supportedSurfaces: ("
|
|
484
|
+
supportedSurfaces: ("canvas" | "runtime" | "admin")[];
|
|
485
485
|
defaultRendererRefs: {
|
|
486
486
|
admin: string;
|
|
487
487
|
runtime: string;
|
|
@@ -6,6 +6,7 @@ import { EndgeBind } from '../modules/runtime/core/endge-bind';
|
|
|
6
6
|
import { EndgeActions } from '../modules/runtime/core/endge-actions';
|
|
7
7
|
import { EndgeContext } from '../modules/context/endge-context';
|
|
8
8
|
import { EndgeConfigurationModule } from '../modules/context/endge-configuration';
|
|
9
|
+
import { EndgeConfigurationSchemaModule } from '../modules/context/endge-configuration-schema';
|
|
9
10
|
import { EndgeDataView } from '../modules/runtime/execution/endge-data-view';
|
|
10
11
|
import { EndgeCompiler } from '../modules/program/endge-compiler';
|
|
11
12
|
import { EndgeDiagnostics } from '../modules/diagnostics/endge-diagnostics';
|
|
@@ -22,7 +23,6 @@ import { EndgeRuntime } from '../modules/runtime/core/endge-runtime';
|
|
|
22
23
|
import { EndgeRuntimeDebugger } from '../modules/diagnostics/endge-runtime-debugger';
|
|
23
24
|
import { EndgeDomainRepository } from '../modules/domain/endge-domain-repository';
|
|
24
25
|
import { EndgeSource } from '../modules/program/endge-source';
|
|
25
|
-
import { EndgeSSE } from '../modules/runtime/input/endge-sse';
|
|
26
26
|
import { EndgeStyles } from '../modules/ui/endge-styles';
|
|
27
27
|
import { EndgeUI } from '../modules/ui/endge-ui';
|
|
28
28
|
import { EndgeUpdates } from '../modules/runtime/core/endge-updates';
|
|
@@ -151,10 +151,6 @@ export declare class Endge extends EndgeFederation {
|
|
|
151
151
|
* Доступ к event bus модулю.
|
|
152
152
|
*/
|
|
153
153
|
static get events(): EndgeEvents;
|
|
154
|
-
/**
|
|
155
|
-
* Доступ к SSE-модулю.
|
|
156
|
-
*/
|
|
157
|
-
static get sse(): EndgeSSE;
|
|
158
154
|
/**
|
|
159
155
|
* Доступ к UI state модулю.
|
|
160
156
|
*/
|
|
@@ -183,6 +179,7 @@ export declare class Endge extends EndgeFederation {
|
|
|
183
179
|
static get context(): EndgeContext;
|
|
184
180
|
/** Доступ к effective configuration и immutable compiler build context. */
|
|
185
181
|
static get configuration(): EndgeConfigurationModule;
|
|
182
|
+
static get configurationSchema(): EndgeConfigurationSchemaModule;
|
|
186
183
|
/**
|
|
187
184
|
* Доступ к frontend workspace profile: локали и будущие runtime capabilities.
|
|
188
185
|
*/
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { EndgeBootContext } from '../../../domain/types/kernel/bootstrap.types';
|
|
2
|
+
import { ProgramDiagnostic } from '../../../domain/types/program/program.types';
|
|
3
|
+
import { EndgeConfigurationValues } from '../../../domain/types/configuration/configuration.type';
|
|
4
|
+
import { EndgeConfigurationSchemaEntry } from '../../../domain/types/source/configuration-source.types';
|
|
5
|
+
import { TypeProgramCatalogEntry } from '../../../domain/types/source/type-source.types';
|
|
6
|
+
import { EndgeModule } from '../../../domain/entities/endge/EndgeModule';
|
|
7
|
+
/** Compiles Configuration schemas before effective context resolution. */
|
|
8
|
+
export declare class EndgeConfigurationSchemaModule extends EndgeModule {
|
|
9
|
+
private _entries;
|
|
10
|
+
private _types;
|
|
11
|
+
private _valueDiagnostics;
|
|
12
|
+
build(_ctx: EndgeBootContext): void;
|
|
13
|
+
reset(): void;
|
|
14
|
+
list(): EndgeConfigurationSchemaEntry[];
|
|
15
|
+
get(identity: string): EndgeConfigurationSchemaEntry | null;
|
|
16
|
+
get typeCatalog(): TypeProgramCatalogEntry[];
|
|
17
|
+
get errors(): Array<{
|
|
18
|
+
identity: string;
|
|
19
|
+
diagnostic: Omit<ProgramDiagnostic, 'entityRef'>;
|
|
20
|
+
}>;
|
|
21
|
+
/** Applies defaults, ignores stale keys and records incompatible active values for Compiler Problems. */
|
|
22
|
+
resolveValues(input: EndgeConfigurationValues): EndgeConfigurationValues;
|
|
23
|
+
private _withValueDiagnostics;
|
|
24
|
+
}
|
|
@@ -19,6 +19,8 @@ export declare class EndgeConfigurationModule extends EndgeModule {
|
|
|
19
19
|
normalizeLocale(locale: string | null | undefined): string;
|
|
20
20
|
/** Нормализует theme относительно effective configuration. */
|
|
21
21
|
normalizeTheme(theme: string | null | undefined): string;
|
|
22
|
+
/** Нормализует timezone относительно effective configuration. */
|
|
23
|
+
normalizeTimezone(timezone: string | null | undefined): string;
|
|
22
24
|
/** Вычисляет upstream snapshot для общего редактора указанного слоя. */
|
|
23
25
|
resolveUpstream(layer: EndgeConfigurationLayer): EndgeConfiguration;
|
|
24
26
|
/** Builds a preview without mutating active boot configuration. */
|