@obsidiane/auth-client-js 1.0.4 → 1.0.6
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 +725 -105
- package/fesm2022/obsidiane-auth-client-js.mjs +961 -0
- package/fesm2022/obsidiane-auth-client-js.mjs.map +1 -0
- package/index.d.ts +361 -0
- package/obsidiane-auth-client-js-0.1.0.tgz +0 -0
- package/package.json +15 -40
- package/dist/index.d.ts +0 -9
- package/dist/index.js +0 -10
- package/dist/index.js.map +0 -1
- package/dist/src/lib/bridge/rest/api-platform.adapter.d.ts +0 -18
- package/dist/src/lib/bridge/rest/api-platform.adapter.js +0 -67
- package/dist/src/lib/bridge/rest/api-platform.adapter.js.map +0 -1
- package/dist/src/lib/bridge/rest/http-request.options.d.ts +0 -4
- package/dist/src/lib/bridge/rest/http-request.options.js +0 -17
- package/dist/src/lib/bridge/rest/http-request.options.js.map +0 -1
- package/dist/src/lib/bridge/rest/query-builder.d.ts +0 -3
- package/dist/src/lib/bridge/rest/query-builder.js +0 -41
- package/dist/src/lib/bridge/rest/query-builder.js.map +0 -1
- package/dist/src/lib/bridge/sse/eventsource-wrapper.d.ts +0 -17
- package/dist/src/lib/bridge/sse/eventsource-wrapper.js +0 -57
- package/dist/src/lib/bridge/sse/eventsource-wrapper.js.map +0 -1
- package/dist/src/lib/bridge/sse/mercure-topic.mapper.d.ts +0 -19
- package/dist/src/lib/bridge/sse/mercure-topic.mapper.js +0 -45
- package/dist/src/lib/bridge/sse/mercure-topic.mapper.js.map +0 -1
- package/dist/src/lib/bridge/sse/mercure-url.builder.d.ts +0 -7
- package/dist/src/lib/bridge/sse/mercure-url.builder.js +0 -18
- package/dist/src/lib/bridge/sse/mercure-url.builder.js.map +0 -1
- package/dist/src/lib/bridge/sse/mercure.adapter.d.ts +0 -37
- package/dist/src/lib/bridge/sse/mercure.adapter.js +0 -242
- package/dist/src/lib/bridge/sse/mercure.adapter.js.map +0 -1
- package/dist/src/lib/bridge/sse/ref-count-topic.registry.d.ts +0 -17
- package/dist/src/lib/bridge/sse/ref-count-topic.registry.js +0 -42
- package/dist/src/lib/bridge/sse/ref-count-topic.registry.js.map +0 -1
- package/dist/src/lib/bridge.types.d.ts +0 -27
- package/dist/src/lib/bridge.types.js +0 -8
- package/dist/src/lib/bridge.types.js.map +0 -1
- package/dist/src/lib/facades/bridge.facade.d.ts +0 -27
- package/dist/src/lib/facades/bridge.facade.js +0 -100
- package/dist/src/lib/facades/bridge.facade.js.map +0 -1
- package/dist/src/lib/facades/facade.factory.d.ts +0 -22
- package/dist/src/lib/facades/facade.factory.js +0 -36
- package/dist/src/lib/facades/facade.factory.js.map +0 -1
- package/dist/src/lib/facades/facade.interface.d.ts +0 -13
- package/dist/src/lib/facades/facade.interface.js +0 -2
- package/dist/src/lib/facades/facade.interface.js.map +0 -1
- package/dist/src/lib/facades/resource.facade.d.ts +0 -30
- package/dist/src/lib/facades/resource.facade.js +0 -61
- package/dist/src/lib/facades/resource.facade.js.map +0 -1
- package/dist/src/lib/interceptors/bridge-debug.interceptor.d.ts +0 -6
- package/dist/src/lib/interceptors/bridge-debug.interceptor.js +0 -27
- package/dist/src/lib/interceptors/bridge-debug.interceptor.js.map +0 -1
- package/dist/src/lib/interceptors/bridge-defaults.interceptor.d.ts +0 -5
- package/dist/src/lib/interceptors/bridge-defaults.interceptor.js +0 -43
- package/dist/src/lib/interceptors/bridge-defaults.interceptor.js.map +0 -1
- package/dist/src/lib/interceptors/content-type.interceptor.d.ts +0 -9
- package/dist/src/lib/interceptors/content-type.interceptor.js +0 -34
- package/dist/src/lib/interceptors/content-type.interceptor.js.map +0 -1
- package/dist/src/lib/interceptors/singleflight.interceptor.d.ts +0 -3
- package/dist/src/lib/interceptors/singleflight.interceptor.js +0 -42
- package/dist/src/lib/interceptors/singleflight.interceptor.js.map +0 -1
- package/dist/src/lib/ports/realtime.port.d.ts +0 -28
- package/dist/src/lib/ports/realtime.port.js +0 -2
- package/dist/src/lib/ports/realtime.port.js.map +0 -1
- package/dist/src/lib/ports/resource-repository.port.d.ts +0 -64
- package/dist/src/lib/ports/resource-repository.port.js +0 -2
- package/dist/src/lib/ports/resource-repository.port.js.map +0 -1
- package/dist/src/lib/provide-bridge.d.ts +0 -40
- package/dist/src/lib/provide-bridge.js +0 -81
- package/dist/src/lib/provide-bridge.js.map +0 -1
- package/dist/src/lib/tokens.d.ts +0 -14
- package/dist/src/lib/tokens.js +0 -14
- package/dist/src/lib/tokens.js.map +0 -1
- package/dist/src/lib/utils/url.d.ts +0 -6
- package/dist/src/lib/utils/url.js +0 -17
- package/dist/src/lib/utils/url.js.map +0 -1
- package/dist/src/models/Auth.d.ts +0 -4
- package/dist/src/models/Auth.js +0 -2
- package/dist/src/models/Auth.js.map +0 -1
- package/dist/src/models/AuthInviteCompleteInputInviteComplete.d.ts +0 -6
- package/dist/src/models/AuthInviteCompleteInputInviteComplete.js +0 -2
- package/dist/src/models/AuthInviteCompleteInputInviteComplete.js.map +0 -1
- package/dist/src/models/AuthInviteUserInputInviteSend.d.ts +0 -4
- package/dist/src/models/AuthInviteUserInputInviteSend.js +0 -2
- package/dist/src/models/AuthInviteUserInputInviteSend.js.map +0 -1
- package/dist/src/models/AuthLdJson.d.ts +0 -4
- package/dist/src/models/AuthLdJson.js +0 -2
- package/dist/src/models/AuthLdJson.js.map +0 -1
- package/dist/src/models/AuthPasswordForgotInputPasswordForgot.d.ts +0 -4
- package/dist/src/models/AuthPasswordForgotInputPasswordForgot.js +0 -2
- package/dist/src/models/AuthPasswordForgotInputPasswordForgot.js.map +0 -1
- package/dist/src/models/AuthPasswordResetInputPasswordReset.d.ts +0 -5
- package/dist/src/models/AuthPasswordResetInputPasswordReset.js +0 -2
- package/dist/src/models/AuthPasswordResetInputPasswordReset.js.map +0 -1
- package/dist/src/models/AuthRegisterUserInputUserRegister.d.ts +0 -5
- package/dist/src/models/AuthRegisterUserInputUserRegister.js +0 -2
- package/dist/src/models/AuthRegisterUserInputUserRegister.js.map +0 -1
- package/dist/src/models/FrontendConfig.d.ts +0 -11
- package/dist/src/models/FrontendConfig.js +0 -2
- package/dist/src/models/FrontendConfig.js.map +0 -1
- package/dist/src/models/InvitePreview.d.ts +0 -7
- package/dist/src/models/InvitePreview.js +0 -2
- package/dist/src/models/InvitePreview.js.map +0 -1
- package/dist/src/models/InviteUserInviteRead.d.ts +0 -8
- package/dist/src/models/InviteUserInviteRead.js +0 -2
- package/dist/src/models/InviteUserInviteRead.js.map +0 -1
- package/dist/src/models/Setup.d.ts +0 -4
- package/dist/src/models/Setup.js +0 -2
- package/dist/src/models/Setup.js.map +0 -1
- package/dist/src/models/SetupRegisterUserInputUserRegister.d.ts +0 -5
- package/dist/src/models/SetupRegisterUserInputUserRegister.js +0 -2
- package/dist/src/models/SetupRegisterUserInputUserRegister.js.map +0 -1
- package/dist/src/models/UserUpdateUserRolesInputUserRoles.d.ts +0 -4
- package/dist/src/models/UserUpdateUserRolesInputUserRoles.js +0 -2
- package/dist/src/models/UserUpdateUserRolesInputUserRoles.js.map +0 -1
- package/dist/src/models/UserUserRead.d.ts +0 -8
- package/dist/src/models/UserUserRead.js +0 -2
- package/dist/src/models/UserUserRead.js.map +0 -1
- package/dist/src/models/index.d.ts +0 -14
- package/dist/src/models/index.js +0 -2
- package/dist/src/models/index.js.map +0 -1
- package/dist/src/public-api.d.ts +0 -8
- package/dist/src/public-api.js +0 -9
- package/dist/src/public-api.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mercure.adapter.js","sourceRoot":"","sources":["../../../../../src/lib/bridge/sse/mercure.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export declare class RefCountTopicRegistry {
|
|
2
|
-
private readonly topics;
|
|
3
|
-
private readonly refCounts;
|
|
4
|
-
/**
|
|
5
|
-
* Increments ref-count for each topic.
|
|
6
|
-
* Callers should pass unique topic strings (deduped).
|
|
7
|
-
*/
|
|
8
|
-
addAll(topics: Iterable<string>): void;
|
|
9
|
-
/**
|
|
10
|
-
* Decrements ref-count for each topic.
|
|
11
|
-
* Callers should pass unique topic strings (deduped).
|
|
12
|
-
*/
|
|
13
|
-
removeAll(topics: Iterable<string>): void;
|
|
14
|
-
hasAny(): boolean;
|
|
15
|
-
snapshot(): ReadonlySet<string>;
|
|
16
|
-
computeKey(hubUrl: string, credentialsOn: boolean): string;
|
|
17
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
export class RefCountTopicRegistry {
|
|
2
|
-
topics = new Set();
|
|
3
|
-
refCounts = new Map();
|
|
4
|
-
/**
|
|
5
|
-
* Increments ref-count for each topic.
|
|
6
|
-
* Callers should pass unique topic strings (deduped).
|
|
7
|
-
*/
|
|
8
|
-
addAll(topics) {
|
|
9
|
-
for (const topic of topics) {
|
|
10
|
-
const next = (this.refCounts.get(topic) ?? 0) + 1;
|
|
11
|
-
this.refCounts.set(topic, next);
|
|
12
|
-
this.topics.add(topic);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Decrements ref-count for each topic.
|
|
17
|
-
* Callers should pass unique topic strings (deduped).
|
|
18
|
-
*/
|
|
19
|
-
removeAll(topics) {
|
|
20
|
-
for (const topic of topics) {
|
|
21
|
-
const next = (this.refCounts.get(topic) ?? 0) - 1;
|
|
22
|
-
if (next <= 0) {
|
|
23
|
-
this.refCounts.delete(topic);
|
|
24
|
-
this.topics.delete(topic);
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
this.refCounts.set(topic, next);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
hasAny() {
|
|
32
|
-
return this.topics.size > 0;
|
|
33
|
-
}
|
|
34
|
-
snapshot() {
|
|
35
|
-
return new Set(this.topics);
|
|
36
|
-
}
|
|
37
|
-
computeKey(hubUrl, credentialsOn) {
|
|
38
|
-
const topicsSorted = Array.from(this.topics).sort().join('|');
|
|
39
|
-
return `${hubUrl}::${credentialsOn ? '1' : '0'}::${topicsSorted}`;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=ref-count-topic.registry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ref-count-topic.registry.js","sourceRoot":"","sources":["../../../../../src/lib/bridge/sse/ref-count-topic.registry.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,qBAAqB;IACf,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3B,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEvD;;;OAGG;IACH,MAAM,CAAC,MAAwB;QAC7B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,SAAS,CAAC,MAAwB;QAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,UAAU,CAAC,MAAc,EAAE,aAAsB;QAC/C,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,OAAO,GAAG,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,YAAY,EAAE,CAAC;IACpE,CAAC;CACF"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Public configuration types for the bridge.
|
|
3
|
-
*
|
|
4
|
-
* Keep this file dependency-free (no Angular imports) so it can be used from both
|
|
5
|
-
* runtime code and type-only contexts.
|
|
6
|
-
*/
|
|
7
|
-
export interface BridgeLogger {
|
|
8
|
-
debug: (...args: unknown[]) => void;
|
|
9
|
-
info: (...args: unknown[]) => void;
|
|
10
|
-
warn: (...args: unknown[]) => void;
|
|
11
|
-
error: (...args: unknown[]) => void;
|
|
12
|
-
}
|
|
13
|
-
export interface BridgeDefaults {
|
|
14
|
-
headers?: Record<string, string>;
|
|
15
|
-
timeoutMs?: number;
|
|
16
|
-
retries?: number | {
|
|
17
|
-
count: number;
|
|
18
|
-
delayMs?: number;
|
|
19
|
-
methods?: string[];
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Controls how Mercure topics are sent in the hub URL.
|
|
24
|
-
* - `url`: topics are absolute URLs (recommended default)
|
|
25
|
-
* - `iri`: topics are same-origin relative IRIs (e.g. `/api/...`)
|
|
26
|
-
*/
|
|
27
|
-
export type MercureTopicMode = 'url' | 'iri';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.types.js","sourceRoot":"","sources":["../../../src/lib/bridge.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { Observable } from 'rxjs';
|
|
3
|
-
import { MercureRealtimeAdapter } from '../bridge/sse/mercure.adapter';
|
|
4
|
-
import { AnyQuery, Collection, HttpCallOptions, HttpRequestConfig, Iri, IriRequired, Item } from '../ports/resource-repository.port';
|
|
5
|
-
import { SubscribeFilter } from '../ports/realtime.port';
|
|
6
|
-
/**
|
|
7
|
-
* High-level facade for ad-hoc HTTP calls and Mercure subscriptions.
|
|
8
|
-
*
|
|
9
|
-
* Prefer `FacadeFactory` + `ResourceFacade<T>` when you want a resource-oriented API.
|
|
10
|
-
*/
|
|
11
|
-
export declare class BridgeFacade {
|
|
12
|
-
private readonly http;
|
|
13
|
-
private readonly realtime;
|
|
14
|
-
private readonly apiBase;
|
|
15
|
-
private readonly withCredentialsDefault;
|
|
16
|
-
constructor(http: HttpClient, realtime: MercureRealtimeAdapter, apiBase: string, withCredentialsDefault: boolean);
|
|
17
|
-
get$<R = unknown>(url: IriRequired, opts?: HttpCallOptions): Observable<R>;
|
|
18
|
-
getCollection$<T extends Item = Item>(url: IriRequired, query?: AnyQuery, opts?: HttpCallOptions): Observable<Collection<T>>;
|
|
19
|
-
post$<R = unknown, B = unknown>(url: IriRequired, payload: B, opts?: HttpCallOptions): Observable<R>;
|
|
20
|
-
patch$<R = unknown, B = unknown>(url: IriRequired, changes: B, opts?: HttpCallOptions): Observable<R>;
|
|
21
|
-
put$<R = unknown, B = unknown>(url: IriRequired, payload: B, opts?: HttpCallOptions): Observable<R>;
|
|
22
|
-
delete$(url: IriRequired, opts?: HttpCallOptions): Observable<void>;
|
|
23
|
-
request$<R = unknown, B = unknown>(req: HttpRequestConfig<B>): Observable<R>;
|
|
24
|
-
watch$<T = Item>(iri: Iri | Iri[], subscribeFilter?: SubscribeFilter): Observable<T>;
|
|
25
|
-
unwatch(iri: Iri | Iri[]): void;
|
|
26
|
-
private resolveUrl;
|
|
27
|
-
}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
-
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
-
};
|
|
10
|
-
import { Inject, Injectable } from '@angular/core';
|
|
11
|
-
import { filter, map, share } from 'rxjs/operators';
|
|
12
|
-
import { toHttpParams } from '../bridge/rest/query-builder';
|
|
13
|
-
import { buildHttpRequestOptions } from '../bridge/rest/http-request.options';
|
|
14
|
-
import { API_BASE_URL, BRIDGE_WITH_CREDENTIALS } from '../tokens';
|
|
15
|
-
import { resolveUrl } from '../utils/url';
|
|
16
|
-
/**
|
|
17
|
-
* High-level facade for ad-hoc HTTP calls and Mercure subscriptions.
|
|
18
|
-
*
|
|
19
|
-
* Prefer `FacadeFactory` + `ResourceFacade<T>` when you want a resource-oriented API.
|
|
20
|
-
*/
|
|
21
|
-
let BridgeFacade = class BridgeFacade {
|
|
22
|
-
http;
|
|
23
|
-
realtime;
|
|
24
|
-
apiBase;
|
|
25
|
-
withCredentialsDefault;
|
|
26
|
-
constructor(http, realtime, apiBase, withCredentialsDefault) {
|
|
27
|
-
this.http = http;
|
|
28
|
-
this.realtime = realtime;
|
|
29
|
-
this.apiBase = apiBase;
|
|
30
|
-
this.withCredentialsDefault = withCredentialsDefault;
|
|
31
|
-
}
|
|
32
|
-
// ──────────────── HTTP ────────────────
|
|
33
|
-
get$(url, opts) {
|
|
34
|
-
return this.http.get(this.resolveUrl(url), {
|
|
35
|
-
headers: opts?.headers,
|
|
36
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
getCollection$(url, query, opts) {
|
|
40
|
-
const params = toHttpParams(query);
|
|
41
|
-
return this.http.get(this.resolveUrl(url), {
|
|
42
|
-
params,
|
|
43
|
-
headers: opts?.headers,
|
|
44
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
post$(url, payload, opts) {
|
|
48
|
-
return this.http.post(this.resolveUrl(url), payload, {
|
|
49
|
-
headers: opts?.headers,
|
|
50
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
patch$(url, changes, opts) {
|
|
54
|
-
return this.http.patch(this.resolveUrl(url), changes, {
|
|
55
|
-
headers: opts?.headers,
|
|
56
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
put$(url, payload, opts) {
|
|
60
|
-
return this.http.put(this.resolveUrl(url), payload, {
|
|
61
|
-
headers: opts?.headers,
|
|
62
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
delete$(url, opts) {
|
|
66
|
-
return this.http.delete(this.resolveUrl(url), {
|
|
67
|
-
headers: opts?.headers,
|
|
68
|
-
withCredentials: opts?.withCredentials ?? this.withCredentialsDefault,
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
request$(req) {
|
|
72
|
-
const { method, url } = req;
|
|
73
|
-
const targetUrl = this.resolveUrl(url);
|
|
74
|
-
const mergedOptions = buildHttpRequestOptions(req, { withCredentialsDefault: this.withCredentialsDefault });
|
|
75
|
-
return this.http.request(method, targetUrl, mergedOptions);
|
|
76
|
-
}
|
|
77
|
-
// ──────────────── SSE / Mercure ────────────────
|
|
78
|
-
watch$(iri, subscribeFilter) {
|
|
79
|
-
const iris = (Array.isArray(iri) ? iri : [iri]).filter((v) => typeof v === 'string' && v.length > 0);
|
|
80
|
-
return this.realtime
|
|
81
|
-
.subscribe$(iris, subscribeFilter)
|
|
82
|
-
.pipe(map((event) => event.data), filter((data) => data !== undefined), share());
|
|
83
|
-
}
|
|
84
|
-
unwatch(iri) {
|
|
85
|
-
const iris = (Array.isArray(iri) ? iri : [iri]).filter((v) => typeof v === 'string' && v.length > 0);
|
|
86
|
-
this.realtime.unsubscribe(iris);
|
|
87
|
-
}
|
|
88
|
-
resolveUrl(path) {
|
|
89
|
-
if (!path)
|
|
90
|
-
throw new Error('BridgeFacade: missing url');
|
|
91
|
-
return resolveUrl(this.apiBase, path);
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
BridgeFacade = __decorate([
|
|
95
|
-
Injectable({ providedIn: 'root' }),
|
|
96
|
-
__param(2, Inject(API_BASE_URL)),
|
|
97
|
-
__param(3, Inject(BRIDGE_WITH_CREDENTIALS))
|
|
98
|
-
], BridgeFacade);
|
|
99
|
-
export { BridgeFacade };
|
|
100
|
-
//# sourceMappingURL=bridge.facade.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.facade.js","sourceRoot":"","sources":["../../../../src/lib/facades/bridge.facade.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { RealtimePort } from '../ports/realtime.port';
|
|
2
|
-
import { Item, ResourceRepository } from '../ports/resource-repository.port';
|
|
3
|
-
import { ResourceFacade } from './resource.facade';
|
|
4
|
-
export type FacadeConfig<T> = {
|
|
5
|
-
url: string;
|
|
6
|
-
repo?: ResourceRepository<T>;
|
|
7
|
-
realtime?: RealtimePort;
|
|
8
|
-
};
|
|
9
|
-
export declare class FacadeFactory {
|
|
10
|
-
private readonly env;
|
|
11
|
-
private readonly http;
|
|
12
|
-
private readonly baseUrl;
|
|
13
|
-
private readonly withCredentials;
|
|
14
|
-
private readonly mercure;
|
|
15
|
-
/**
|
|
16
|
-
* Creates a `ResourceFacade<T>`.
|
|
17
|
-
*
|
|
18
|
-
* Important: `ResourceFacade` uses `toSignal()`, which requires an injection context.
|
|
19
|
-
* This factory ensures that by using `runInInjectionContext`.
|
|
20
|
-
*/
|
|
21
|
-
create<T extends Item>(config: FacadeConfig<T>): ResourceFacade<T>;
|
|
22
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
-
};
|
|
7
|
-
import { EnvironmentInjector, inject, Injectable, runInInjectionContext } from '@angular/core';
|
|
8
|
-
import { HttpClient } from '@angular/common/http';
|
|
9
|
-
import { API_BASE_URL, BRIDGE_WITH_CREDENTIALS } from '../tokens';
|
|
10
|
-
import { MercureRealtimeAdapter } from '../bridge/sse/mercure.adapter';
|
|
11
|
-
import { ApiPlatformRestRepository } from '../bridge/rest/api-platform.adapter';
|
|
12
|
-
import { ResourceFacade } from './resource.facade';
|
|
13
|
-
let FacadeFactory = class FacadeFactory {
|
|
14
|
-
env = inject(EnvironmentInjector);
|
|
15
|
-
http = inject(HttpClient);
|
|
16
|
-
baseUrl = inject(API_BASE_URL);
|
|
17
|
-
withCredentials = inject(BRIDGE_WITH_CREDENTIALS);
|
|
18
|
-
mercure = inject(MercureRealtimeAdapter);
|
|
19
|
-
/**
|
|
20
|
-
* Creates a `ResourceFacade<T>`.
|
|
21
|
-
*
|
|
22
|
-
* Important: `ResourceFacade` uses `toSignal()`, which requires an injection context.
|
|
23
|
-
* This factory ensures that by using `runInInjectionContext`.
|
|
24
|
-
*/
|
|
25
|
-
create(config) {
|
|
26
|
-
const url = config.url;
|
|
27
|
-
const repo = config.repo ?? new ApiPlatformRestRepository(this.http, this.baseUrl, url, this.withCredentials);
|
|
28
|
-
const realtime = config.realtime ?? this.mercure;
|
|
29
|
-
return runInInjectionContext(this.env, () => new ResourceFacade(repo, realtime));
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
FacadeFactory = __decorate([
|
|
33
|
-
Injectable({ providedIn: 'root' })
|
|
34
|
-
], FacadeFactory);
|
|
35
|
-
export { FacadeFactory };
|
|
36
|
-
//# sourceMappingURL=facade.factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"facade.factory.js","sourceRoot":"","sources":["../../../../src/lib/facades/facade.factory.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,mBAAmB,EAAE,MAAM,EAAE,UAAU,EAAE,qBAAqB,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EAAC,YAAY,EAAE,uBAAuB,EAAC,MAAM,WAAW,CAAC;AAChE,OAAO,EAAC,sBAAsB,EAAC,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAC,yBAAyB,EAAC,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAU1C,IAAM,aAAa,GAAnB,MAAM,aAAa;IACP,GAAG,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAClC,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAC1B,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IAC/B,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAClD,OAAO,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAE1D;;;;;OAKG;IACH,MAAM,CAAiB,MAAuB;QAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,yBAAyB,CAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACjH,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC;QAEjD,OAAO,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,cAAc,CAAI,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtF,CAAC;CACF,CAAA;AApBY,aAAa;IADzB,UAAU,CAAC,EAAC,UAAU,EAAE,MAAM,EAAC,CAAC;GACpB,aAAa,CAoBzB"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Collection, HttpRequestConfig, Iri, IriRequired, Item, HttpCallOptions, AnyQuery } from '../ports/resource-repository.port';
|
|
2
|
-
import { Observable } from 'rxjs';
|
|
3
|
-
export interface Facade<T extends Item> {
|
|
4
|
-
getCollection$(query?: AnyQuery, opts?: HttpCallOptions): Observable<Collection<T>>;
|
|
5
|
-
get$(iri: IriRequired, opts?: HttpCallOptions): Observable<T>;
|
|
6
|
-
post$(payload: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
7
|
-
patch$(iri: IriRequired, changes: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
8
|
-
put$(iri: IriRequired, payload: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
9
|
-
delete$(iri: IriRequired, opts?: HttpCallOptions): Observable<void>;
|
|
10
|
-
request$<R = unknown, B = unknown>(req: HttpRequestConfig<B>): Observable<R>;
|
|
11
|
-
watch$(iri: Iri | Iri[]): Observable<T>;
|
|
12
|
-
unwatch(iri: Iri | Iri[]): void;
|
|
13
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"facade.interface.js","sourceRoot":"","sources":["../../../../src/lib/facades/facade.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Signal } from '@angular/core';
|
|
2
|
-
import { ResourceRepository, AnyQuery, HttpCallOptions, Iri, IriRequired, Collection, Item, HttpRequestConfig } from '../ports/resource-repository.port';
|
|
3
|
-
import { RealtimePort, RealtimeStatus } from '../ports/realtime.port';
|
|
4
|
-
import { Observable } from 'rxjs';
|
|
5
|
-
import { Facade } from './facade.interface';
|
|
6
|
-
export declare class ResourceFacade<T extends Item> implements Facade<T> {
|
|
7
|
-
protected readonly repo: ResourceRepository<T>;
|
|
8
|
-
protected readonly realtime: RealtimePort;
|
|
9
|
-
readonly connectionStatus: Signal<RealtimeStatus>;
|
|
10
|
-
constructor(repo: ResourceRepository<T>, realtime: RealtimePort);
|
|
11
|
-
getCollection$(query?: AnyQuery, opts?: HttpCallOptions): Observable<Collection<T>>;
|
|
12
|
-
get$(iri: IriRequired, opts?: HttpCallOptions): Observable<T>;
|
|
13
|
-
patch$(iri: IriRequired, changes: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
14
|
-
post$(payload: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
15
|
-
put$(iri: IriRequired, payload: Partial<T>, opts?: HttpCallOptions): Observable<T>;
|
|
16
|
-
delete$(iri: IriRequired, opts?: HttpCallOptions): Observable<void>;
|
|
17
|
-
request$<R = unknown, B = unknown>(req: HttpRequestConfig<B>): Observable<R>;
|
|
18
|
-
/**
|
|
19
|
-
* Subscribes to real-time updates for one or many IRIs.
|
|
20
|
-
* Undefined/empty values are ignored.
|
|
21
|
-
*/
|
|
22
|
-
watch$(iri: Iri | Iri[]): Observable<T>;
|
|
23
|
-
unwatch(iri: Iri | Iri[]): void;
|
|
24
|
-
/**
|
|
25
|
-
* Subscribes to updates of a related sub-resource published on the parent topic.
|
|
26
|
-
* Example: subscribe to Message events on a Conversation topic, filtering by `message.conversation`.
|
|
27
|
-
*/
|
|
28
|
-
watchSubResource$<R>(iri: Iri | Iri[], field: string): Observable<R>;
|
|
29
|
-
protected subscribeAndSync(iris: string[]): Observable<T>;
|
|
30
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
2
|
-
import { filter, map, share } from 'rxjs';
|
|
3
|
-
export class ResourceFacade {
|
|
4
|
-
repo;
|
|
5
|
-
realtime;
|
|
6
|
-
connectionStatus;
|
|
7
|
-
constructor(repo, realtime) {
|
|
8
|
-
this.repo = repo;
|
|
9
|
-
this.realtime = realtime;
|
|
10
|
-
this.connectionStatus = toSignal(this.realtime.status$(), { initialValue: 'closed' });
|
|
11
|
-
}
|
|
12
|
-
getCollection$(query, opts) {
|
|
13
|
-
return this.repo.getCollection$(query, opts);
|
|
14
|
-
}
|
|
15
|
-
get$(iri, opts) {
|
|
16
|
-
return this.repo.get$(iri, opts);
|
|
17
|
-
}
|
|
18
|
-
patch$(iri, changes, opts) {
|
|
19
|
-
return this.repo.patch$(iri, changes, opts);
|
|
20
|
-
}
|
|
21
|
-
post$(payload, opts) {
|
|
22
|
-
return this.repo.post$(payload, opts);
|
|
23
|
-
}
|
|
24
|
-
put$(iri, payload, opts) {
|
|
25
|
-
return this.repo.put$(iri, payload, opts);
|
|
26
|
-
}
|
|
27
|
-
delete$(iri, opts) {
|
|
28
|
-
return this.repo.delete$(iri, opts);
|
|
29
|
-
}
|
|
30
|
-
request$(req) {
|
|
31
|
-
return this.repo.request$(req);
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Subscribes to real-time updates for one or many IRIs.
|
|
35
|
-
* Undefined/empty values are ignored.
|
|
36
|
-
*/
|
|
37
|
-
watch$(iri) {
|
|
38
|
-
const iris = (Array.isArray(iri) ? iri : [iri]).filter((v) => typeof v === 'string' && v.length > 0);
|
|
39
|
-
return this.subscribeAndSync(iris);
|
|
40
|
-
}
|
|
41
|
-
unwatch(iri) {
|
|
42
|
-
const iris = (Array.isArray(iri) ? iri : [iri]).filter((v) => typeof v === 'string' && v.length > 0);
|
|
43
|
-
this.realtime.unsubscribe(iris);
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Subscribes to updates of a related sub-resource published on the parent topic.
|
|
47
|
-
* Example: subscribe to Message events on a Conversation topic, filtering by `message.conversation`.
|
|
48
|
-
*/
|
|
49
|
-
watchSubResource$(iri, field) {
|
|
50
|
-
const iris = (Array.isArray(iri) ? iri : [iri]).filter((v) => typeof v === 'string' && v.length > 0);
|
|
51
|
-
return this.realtime
|
|
52
|
-
.subscribe$(iris, { field: field })
|
|
53
|
-
.pipe(map(e => e.data), filter((d) => d !== undefined), share());
|
|
54
|
-
}
|
|
55
|
-
subscribeAndSync(iris) {
|
|
56
|
-
return this.realtime
|
|
57
|
-
.subscribe$(iris)
|
|
58
|
-
.pipe(map(event => event.data), filter((data) => data !== undefined), share());
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=resource.facade.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resource.facade.js","sourceRoot":"","sources":["../../../../src/lib/facades/resource.facade.ts"],"names":[],"mappings":"AAYA,OAAO,EAAC,QAAQ,EAAC,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAC,MAAM,EAAE,GAAG,EAAc,KAAK,EAAC,MAAM,MAAM,CAAC;AAGpD,MAAM,OAAO,cAAc;IAKJ;IACA;IAJZ,gBAAgB,CAAyB;IAElD,YACqB,IAA2B,EAC3B,QAAsB;QADtB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,aAAQ,GAAR,QAAQ,CAAc;QAEzC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EACvB,EAAC,YAAY,EAAE,QAAQ,EAAC,CACzB,CAAC;IACJ,CAAC;IAED,cAAc,CAAC,KAAgB,EAAE,IAAsB;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,CAAC,GAAgB,EAAE,IAAsB;QAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,GAAgB,EAAE,OAAmB,EAAE,IAAsB;QAClE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,OAAmB,EAAE,IAAsB;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,GAAgB,EAAE,OAAmB,EAAE,IAAsB;QAChE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,CAAC,GAAgB,EAAE,IAAsB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,QAAQ,CAA2B,GAAyB;QAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAO,GAAG,CAAC,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,GAAgB;QACrB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClH,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAGD,OAAO,CAAC,GAAgB;QACtB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClH,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,iBAAiB,CACf,GAAgB,EAChB,KAAa;QAEb,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClH,OAAO,IAAI,CAAC,QAAQ;aACjB,UAAU,CAAI,IAAI,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC;aACnC,IAAI,CACH,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAChB,MAAM,CAAC,CAAC,CAAC,EAAU,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,EACtC,KAAK,EAAE,CACR,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,IAAc;QACvC,OAAO,IAAI,CAAC,QAAQ;aACjB,UAAU,CAAI,IAAI,CAAC;aACnB,IAAI,CACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EACxB,MAAM,CAAC,CAAC,IAAI,EAAa,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,EAC/C,KAAK,EAAE,CACR,CAAC;IACN,CAAC;CACF"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { HttpInterceptorFn } from '@angular/common/http';
|
|
2
|
-
/**
|
|
3
|
-
* Lightweight request/response logging controlled by `provideBridge({debug: true})`.
|
|
4
|
-
* Logs are delegated to the injected `BRIDGE_LOGGER`.
|
|
5
|
-
*/
|
|
6
|
-
export declare const bridgeDebugInterceptor: HttpInterceptorFn;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { HttpResponse } from '@angular/common/http';
|
|
2
|
-
import { inject } from '@angular/core';
|
|
3
|
-
import { BRIDGE_LOGGER } from '../tokens';
|
|
4
|
-
import { catchError, finalize, tap, throwError } from 'rxjs';
|
|
5
|
-
/**
|
|
6
|
-
* Lightweight request/response logging controlled by `provideBridge({debug: true})`.
|
|
7
|
-
* Logs are delegated to the injected `BRIDGE_LOGGER`.
|
|
8
|
-
*/
|
|
9
|
-
export const bridgeDebugInterceptor = (req, next) => {
|
|
10
|
-
const logger = inject(BRIDGE_LOGGER, { optional: true });
|
|
11
|
-
if (!logger)
|
|
12
|
-
return next(req);
|
|
13
|
-
const startedAt = Date.now();
|
|
14
|
-
logger.debug('[Bridge] request', { method: req.method, url: req.urlWithParams });
|
|
15
|
-
return next(req).pipe(tap((evt) => {
|
|
16
|
-
if (evt instanceof HttpResponse) {
|
|
17
|
-
logger.debug('[Bridge] response', { method: req.method, url: req.urlWithParams, status: evt.status });
|
|
18
|
-
}
|
|
19
|
-
}), catchError((err) => {
|
|
20
|
-
logger.error('[Bridge] error', { method: req.method, url: req.urlWithParams, err });
|
|
21
|
-
return throwError(() => err);
|
|
22
|
-
}), finalize(() => {
|
|
23
|
-
const durationMs = Date.now() - startedAt;
|
|
24
|
-
logger.debug('[Bridge] done', { method: req.method, url: req.urlWithParams, durationMs });
|
|
25
|
-
}));
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=bridge-debug.interceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-debug.interceptor.js","sourceRoot":"","sources":["../../../../src/lib/interceptors/bridge-debug.interceptor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAC,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAC;AACrC,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAC;AACxC,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAC,MAAM,MAAM,CAAC;AAE3D;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;IACrE,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;IAE9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,aAAa,EAAC,CAAC,CAAC;IAE/E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CACnB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,YAAY,YAAY,EAAE,CAAC;YAChC,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAC,CAAC,CAAC;QACtG,CAAC;IACH,CAAC,CAAC,EACF,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE;QACjB,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,GAAG,EAAC,CAAC,CAAC;QAClF,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC,CAAC,EACF,QAAQ,CAAC,GAAG,EAAE;QACZ,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,eAAe,EAAE,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,UAAU,EAAC,CAAC,CAAC;IAC1F,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { inject } from '@angular/core';
|
|
2
|
-
import { BRIDGE_DEFAULTS, BRIDGE_LOGGER } from '../tokens';
|
|
3
|
-
import { retry, timeout, timer } from 'rxjs';
|
|
4
|
-
const DEFAULT_RETRY_METHODS = ['GET', 'HEAD', 'OPTIONS'];
|
|
5
|
-
/**
|
|
6
|
-
* Applies default headers, timeout and retry policy configured via `provideBridge({defaults: ...})`.
|
|
7
|
-
*/
|
|
8
|
-
export const bridgeDefaultsInterceptor = (req, next) => {
|
|
9
|
-
const defaults = inject(BRIDGE_DEFAULTS, { optional: true }) ?? {};
|
|
10
|
-
const logger = inject(BRIDGE_LOGGER, { optional: true });
|
|
11
|
-
let nextReq = req;
|
|
12
|
-
if (defaults.headers) {
|
|
13
|
-
for (const [k, v] of Object.entries(defaults.headers)) {
|
|
14
|
-
if (!nextReq.headers.has(k)) {
|
|
15
|
-
nextReq = nextReq.clone({ headers: nextReq.headers.set(k, v) });
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
let out$ = next(nextReq);
|
|
20
|
-
const timeoutMs = typeof defaults.timeoutMs === 'number' ? defaults.timeoutMs : undefined;
|
|
21
|
-
if (timeoutMs && timeoutMs > 0) {
|
|
22
|
-
out$ = out$.pipe(timeout({ first: timeoutMs }));
|
|
23
|
-
}
|
|
24
|
-
const retryCfg = defaults.retries;
|
|
25
|
-
const retryCount = typeof retryCfg === 'number' ? retryCfg : retryCfg?.count;
|
|
26
|
-
if (retryCount && retryCount > 0) {
|
|
27
|
-
const methods = (typeof retryCfg === 'object' && retryCfg.methods) ? retryCfg.methods : DEFAULT_RETRY_METHODS;
|
|
28
|
-
const normalizedMethod = req.method.toUpperCase();
|
|
29
|
-
const methodAllowList = new Set(methods.map((m) => m.toUpperCase()));
|
|
30
|
-
if (methodAllowList.has(normalizedMethod)) {
|
|
31
|
-
const delayMs = typeof retryCfg === 'object' ? (retryCfg.delayMs ?? 250) : 250;
|
|
32
|
-
out$ = out$.pipe(retry({
|
|
33
|
-
count: retryCount,
|
|
34
|
-
delay: (_err, retryIndex) => {
|
|
35
|
-
logger?.debug?.('[Bridge] retry', { url: req.urlWithParams, method: req.method, retryIndex });
|
|
36
|
-
return timer(delayMs);
|
|
37
|
-
},
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return out$;
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=bridge-defaults.interceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bridge-defaults.interceptor.js","sourceRoot":"","sources":["../../../../src/lib/interceptors/bridge-defaults.interceptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { HttpInterceptorFn } from '@angular/common/http';
|
|
2
|
-
export interface ApiMediaTypes {
|
|
3
|
-
accept: string;
|
|
4
|
-
post: string;
|
|
5
|
-
put: string;
|
|
6
|
-
patch: string;
|
|
7
|
-
}
|
|
8
|
-
export declare const DEFAULT_MEDIA_TYPES: ApiMediaTypes;
|
|
9
|
-
export declare const contentTypeInterceptor: HttpInterceptorFn;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export const DEFAULT_MEDIA_TYPES = {
|
|
2
|
-
accept: 'application/ld+json',
|
|
3
|
-
post: 'application/ld+json',
|
|
4
|
-
put: 'application/ld+json',
|
|
5
|
-
patch: 'application/merge-patch+json',
|
|
6
|
-
};
|
|
7
|
-
export const contentTypeInterceptor = (req, next) => {
|
|
8
|
-
const mediaTypes = DEFAULT_MEDIA_TYPES;
|
|
9
|
-
let headers = req.headers;
|
|
10
|
-
// Set Accept if missing.
|
|
11
|
-
if (!headers.has('Accept')) {
|
|
12
|
-
headers = headers.set('Accept', mediaTypes.accept);
|
|
13
|
-
}
|
|
14
|
-
// Only methods with a body.
|
|
15
|
-
const isBodyMethod = ['POST', 'PUT', 'PATCH'].includes(req.method);
|
|
16
|
-
// Ignore FormData (browser sets multipart boundary).
|
|
17
|
-
const isFormData = typeof FormData !== 'undefined' && req.body instanceof FormData;
|
|
18
|
-
if (isBodyMethod && !isFormData && !headers.has('Content-Type')) {
|
|
19
|
-
let contentType;
|
|
20
|
-
switch (req.method) {
|
|
21
|
-
case 'PATCH':
|
|
22
|
-
contentType = mediaTypes.patch;
|
|
23
|
-
break;
|
|
24
|
-
case 'PUT':
|
|
25
|
-
contentType = mediaTypes.put;
|
|
26
|
-
break;
|
|
27
|
-
default:
|
|
28
|
-
contentType = mediaTypes.post;
|
|
29
|
-
}
|
|
30
|
-
headers = headers.set('Content-Type', contentType);
|
|
31
|
-
}
|
|
32
|
-
return next(req.clone({ headers }));
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=content-type.interceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-type.interceptor.js","sourceRoot":"","sources":["../../../../src/lib/interceptors/content-type.interceptor.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,mBAAmB,GAAkB;IAChD,MAAM,EAAE,qBAAqB;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,GAAG,EAAE,qBAAqB;IAC1B,KAAK,EAAE,8BAA8B;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;IACrE,MAAM,UAAU,GAAG,mBAAmB,CAAC;IACvC,IAAI,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAE1B,yBAAyB;IACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,4BAA4B;IAC5B,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnE,qDAAqD;IACrD,MAAM,UAAU,GAAG,OAAO,QAAQ,KAAK,WAAW,IAAI,GAAG,CAAC,IAAI,YAAY,QAAQ,CAAC;IAEnF,IAAI,YAAY,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAChE,IAAI,WAAmB,CAAC;QAExB,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACnB,KAAK,OAAO;gBACV,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC/B,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC;gBAC7B,MAAM;YACR;gBACE,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC;QAClC,CAAC;QAED,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC"}
|