@endge/core 1.2.12 → 2.0.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/dist/core.cjs +337 -325
- package/dist/core.js +37069 -33113
- package/dist/domain/entities/reflect/RAuthProfile.d.ts +3 -3
- package/dist/domain/entities/runtime/ComponentSFCEventBoundary.d.ts +2 -0
- package/dist/domain/entities/runtime/hosts/ComponentSFCRuntimeHost.d.ts +3 -2
- package/dist/domain/entities/runtime/hosts/CompositionRuntimeHost.d.ts +4 -0
- package/dist/domain/types/auth/auth-profile.types.d.ts +88 -26
- package/dist/domain/types/auth/auth-runtime.types.d.ts +0 -23
- package/dist/domain/types/component/sfc/ast.types.d.ts +2 -0
- package/dist/domain/types/component/sfc/intrinsic-events.types.d.ts +6 -0
- package/dist/domain/types/component/sfc/ir.types.d.ts +90 -1
- package/dist/domain/types/component/sfc/table-events.types.d.ts +1 -0
- package/dist/domain/types/component/sfc/tag-attribute-contract.types.d.ts +134 -0
- package/dist/domain/types/component/sfc/visual-projection.types.d.ts +39 -2
- package/dist/domain/types/document/document-move.type.d.ts +6 -0
- package/dist/domain/types/document/domain-export.type.d.ts +1 -0
- package/dist/domain/types/document/domain-provider.type.d.ts +24 -0
- package/dist/domain/types/kernel/bootstrap.types.d.ts +1 -1
- package/dist/domain/types/program/program.types.d.ts +4 -0
- package/dist/domain/types/runtime/runtime-host.types.d.ts +23 -1
- package/dist/domain/types/source/composition-source.types.d.ts +6 -0
- package/dist/domain/types/source/data-view-source.types.d.ts +12 -0
- package/dist/domain/types/source/filter-source.types.d.ts +2 -0
- package/dist/domain/types/source/source-expression.types.d.ts +3 -0
- package/dist/domain/types/source/store-source.types.d.ts +1 -0
- package/dist/domain/types/ui/filter-view.type.d.ts +13 -0
- package/dist/main.d.ts +6 -0
- package/dist/model/modules/domain/endge-domain-repository.d.ts +3 -0
- package/dist/model/modules/domain/endge-domain.d.ts +2 -0
- package/dist/model/modules/runtime/execution/endge-data-view.d.ts +8 -6
- package/dist/model/modules/security/auth/AuthInteractionRequiredError.d.ts +6 -0
- package/dist/model/modules/security/auth/AuthProfileRegistry.d.ts +4 -4
- package/dist/model/modules/security/auth/AuthRequestResolver.d.ts +7 -2
- package/dist/model/modules/security/auth/AuthSessionManager.d.ts +19 -21
- package/dist/model/modules/security/auth/adapters/BasicAuthAdapter.d.ts +10 -0
- package/dist/model/modules/security/auth/adapters/BearerAuthAdapter.d.ts +1 -1
- package/dist/model/modules/security/auth/adapters/OAuth2ClientCredentialsAuthAdapter.d.ts +8 -0
- package/dist/model/modules/security/auth/adapters/OidcAuthAdapter.d.ts +8 -0
- package/dist/model/modules/security/endge-auth.d.ts +14 -4
- package/dist/model/services/auth/OidcBrowserSession_Service.d.ts +26 -0
- package/dist/model/services/compiler/component-sfc/component-sfc-attributes.d.ts +9 -0
- package/dist/model/services/compiler/component-sfc/component-sfc-interactions.d.ts +12 -0
- package/dist/model/services/compiler/component-sfc/component-sfc-table-menu.d.ts +5 -0
- package/dist/test/component-sfc-interactions.bench.d.ts +1 -0
- package/dist/test/component-sfc-interactions.test.d.ts +1 -0
- package/dist/test/security/auth-profile-serializer.test.d.ts +1 -0
- package/dist/test/security/auth-test-helpers.d.ts +0 -1
- package/dist/test/security/oidc-browser-session.test.d.ts +1 -0
- package/dist/test/tools/component-sfc-edit-trigger.test.d.ts +1 -0
- package/dist/tools/component-sfc-edit-trigger.d.ts +11 -0
- package/package.json +6 -4
- package/dist/model/modules/security/auth/adapters/KeycloakAuthAdapter.d.ts +0 -25
- package/dist/model/services/auth/KeycloakAuthClient.d.ts +0 -21
|
@@ -9,3 +9,8 @@ interface NormalizeMenuOptions {
|
|
|
9
9
|
export declare function normalizeComponentSFCTableColumnMenu(tableNode: RComponentSFC_IR_ElementNode, actionsOrOptions?: ComponentSFCActionPort[] | NormalizeMenuOptions): ComponentSFCTableColumnMenuDescriptor;
|
|
10
10
|
/** Normalizes one optional row menu. Cell-aware values remain expressions until a right click occurs. */
|
|
11
11
|
export declare function normalizeComponentSFCTableRowMenu(tableNode: RComponentSFC_IR_ElementNode, actionsOrOptions?: ComponentSFCActionPort[] | NormalizeMenuOptions): ComponentSFCTableRowMenuDescriptor;
|
|
12
|
+
/** Reads a compile-time MenuItem reference to one Action port. */
|
|
13
|
+
export declare function readComponentSFCTableMenuActionPortReference(source: string): {
|
|
14
|
+
name: string;
|
|
15
|
+
role?: 'require' | 'provides';
|
|
16
|
+
} | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -10,4 +10,3 @@ export declare class MemoryStorage implements Storage {
|
|
|
10
10
|
}
|
|
11
11
|
export declare function authProfile(overrides?: Partial<AuthProfileSchema>): AuthProfileSchema;
|
|
12
12
|
export declare function tokenSet(overrides?: Partial<AuthTokenSet>): AuthTokenSet;
|
|
13
|
-
export declare function jwt(claims: Record<string, unknown>): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ComponentSFCInteractionTrigger, ComponentSFCInteractionTriggerEvent, ComponentSFCInteractionTriggerPlatform } from '../domain/types/component/sfc/ir.types';
|
|
2
|
+
/** Normalizes the shared `edit-on` / `on` trigger value. */
|
|
3
|
+
export declare function normalizeComponentSFCInteractionTriggers(value: unknown): ComponentSFCInteractionTrigger[];
|
|
4
|
+
/** Проверяет один нормализованный trigger без зависимости от DOM и конкретного renderer-а. */
|
|
5
|
+
export declare function matchesComponentSFCInteractionTrigger(trigger: ComponentSFCInteractionTrigger, event: ComponentSFCInteractionTriggerEvent, platform: ComponentSFCInteractionTriggerPlatform): boolean;
|
|
6
|
+
/** Приводит browser platform label к стабильным значениям edit-on контракта. */
|
|
7
|
+
export declare function resolveComponentSFCInteractionTriggerPlatform(value: unknown): ComponentSFCInteractionTriggerPlatform;
|
|
8
|
+
/** Backward-compatible editable wrappers. */
|
|
9
|
+
export declare const normalizeComponentSFCEditTriggers: typeof normalizeComponentSFCInteractionTriggers;
|
|
10
|
+
export declare const matchesComponentSFCEditTrigger: typeof matchesComponentSFCInteractionTrigger;
|
|
11
|
+
export declare const resolveComponentSFCEditTriggerPlatform: typeof resolveComponentSFCInteractionTriggerPlatform;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@endge/core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -23,12 +23,13 @@
|
|
|
23
23
|
"build": "vite build",
|
|
24
24
|
"preview": "vite preview",
|
|
25
25
|
"test": "vitest",
|
|
26
|
+
"bench:interactions": "vitest bench src/test/component-sfc-interactions.bench.ts",
|
|
26
27
|
"typecheck": "vue-tsc --noEmit"
|
|
27
28
|
},
|
|
28
29
|
"dependencies": {
|
|
29
30
|
"@babel/parser": "^7.27.2",
|
|
30
31
|
"@babel/types": "^7.27.1",
|
|
31
|
-
"@endge/utils": "^0.24.
|
|
32
|
+
"@endge/utils": "^0.24.9",
|
|
32
33
|
"@vue/compiler-dom": "^3.5.24",
|
|
33
34
|
"@vue/compiler-sfc": "^3.5.24",
|
|
34
35
|
"axios": "^1.13.2",
|
|
@@ -36,6 +37,7 @@
|
|
|
36
37
|
"graphql": "^16.12.0",
|
|
37
38
|
"lodash": "^4.17.21",
|
|
38
39
|
"mitt": "^3.0.1",
|
|
40
|
+
"oidc-client-ts": "^3.5.0",
|
|
39
41
|
"postcss": "^8.5.6",
|
|
40
42
|
"postcss-scss": "^4.0.9",
|
|
41
43
|
"postcss-selector-parser": "^7.1.0",
|
|
@@ -44,8 +46,8 @@
|
|
|
44
46
|
"yaml": "^2.8.1"
|
|
45
47
|
},
|
|
46
48
|
"peerDependencies": {
|
|
47
|
-
"@endge/raph": "^3.0.
|
|
48
|
-
"@endge/utils": "^0.24.
|
|
49
|
+
"@endge/raph": "^3.0.7",
|
|
50
|
+
"@endge/utils": "^0.24.9",
|
|
49
51
|
"@primevue/themes": "^4.0.0-rc.1",
|
|
50
52
|
"class-transformer": "^0.5.1",
|
|
51
53
|
"class-validator": "^0.14.1",
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { AuthAdapterContext, AuthProfileAdapter, AuthProfileSchema, AuthTokenSet } from '../../../../../domain/types/auth/auth-profile.types';
|
|
2
|
-
import { KeycloakAuthTransportFactory } from '../../../../../domain/types/auth/auth-runtime.types';
|
|
3
|
-
/** Keycloak password-grant adapter без владения storage или application state. */
|
|
4
|
-
export declare class KeycloakAuthAdapter implements AuthProfileAdapter {
|
|
5
|
-
private readonly _resolvePublicValue;
|
|
6
|
-
private readonly _createTransport;
|
|
7
|
-
private readonly _now;
|
|
8
|
-
readonly id = "keycloak";
|
|
9
|
-
readonly label = "Keycloak";
|
|
10
|
-
constructor(_resolvePublicValue: (raw: unknown) => string, _createTransport?: KeycloakAuthTransportFactory, _now?: () => number);
|
|
11
|
-
/** Проверяет строгий persisted contract Keycloak profile. */
|
|
12
|
-
validate(profile: AuthProfileSchema): void;
|
|
13
|
-
/** Выполняет interactive или service password grant. */
|
|
14
|
-
authenticate(context: AuthAdapterContext): Promise<AuthTokenSet>;
|
|
15
|
-
/** Обновляет Keycloak session. */
|
|
16
|
-
refresh(context: AuthAdapterContext): Promise<AuthTokenSet>;
|
|
17
|
-
/** Завершает Keycloak session при наличии refresh token. */
|
|
18
|
-
logout(context: AuthAdapterContext): Promise<void>;
|
|
19
|
-
/** Загружает OIDC userinfo. */
|
|
20
|
-
loadUserInfo(context: AuthAdapterContext): Promise<Record<string, unknown> | null>;
|
|
21
|
-
/** Собирает resolved public config без чтения credential material. */
|
|
22
|
-
private _config;
|
|
23
|
-
private _transport;
|
|
24
|
-
private _requireToken;
|
|
25
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { AuthTokenSet } from '../../../domain/types/auth/auth-profile.types';
|
|
2
|
-
import { KeycloakAuthTransport, KeycloakTokenResponse, KeycloakTransportConfig } from '../../../domain/types/auth/auth-runtime.types';
|
|
3
|
-
import { AxiosInstance } from 'axios';
|
|
4
|
-
/** Преобразует transport response Keycloak в runtime token set. */
|
|
5
|
-
export declare function mapKeycloakTokenResponse(data: KeycloakTokenResponse, now?: number, previous?: AuthTokenSet): AuthTokenSet;
|
|
6
|
-
/** Axios transport для стандартных Keycloak OIDC endpoints. */
|
|
7
|
-
export declare class KeycloakAuthClient implements KeycloakAuthTransport {
|
|
8
|
-
private readonly _http;
|
|
9
|
-
private readonly _tokenPath;
|
|
10
|
-
private readonly _logoutPath;
|
|
11
|
-
private readonly _userinfoPath;
|
|
12
|
-
constructor(config: KeycloakTransportConfig, http?: AxiosInstance);
|
|
13
|
-
/** Выполняет password grant. */
|
|
14
|
-
passwordGrant(payload: Record<string, string>, signal?: AbortSignal): Promise<KeycloakTokenResponse>;
|
|
15
|
-
/** Обновляет access token через refresh token. */
|
|
16
|
-
refreshGrant(payload: Record<string, string>, signal?: AbortSignal): Promise<KeycloakTokenResponse>;
|
|
17
|
-
/** Завершает Keycloak session. */
|
|
18
|
-
logout(payload: Record<string, string>, signal?: AbortSignal): Promise<void>;
|
|
19
|
-
/** Загружает OIDC userinfo текущей session. */
|
|
20
|
-
getUserInfo(accessToken: string, signal?: AbortSignal): Promise<Record<string, unknown>>;
|
|
21
|
-
}
|