@primafuture/contrib-kit-react 1.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/LICENSE +15 -0
- package/README.md +294 -0
- package/dist/contribution-component.d.ts +82 -0
- package/dist/contribution-component.d.ts.map +1 -0
- package/dist/contribution-component.js +12 -0
- package/dist/contribution-component.js.map +1 -0
- package/dist/extension-outlet.d.ts +155 -0
- package/dist/extension-outlet.d.ts.map +1 -0
- package/dist/extension-outlet.js +229 -0
- package/dist/extension-outlet.js.map +1 -0
- package/dist/extension-registry-provider.d.ts +26 -0
- package/dist/extension-registry-provider.d.ts.map +1 -0
- package/dist/extension-registry-provider.js +82 -0
- package/dist/extension-registry-provider.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/adapter-configuration.d.ts +54 -0
- package/dist/internal/adapter-configuration.d.ts.map +1 -0
- package/dist/internal/adapter-configuration.js +89 -0
- package/dist/internal/adapter-configuration.js.map +1 -0
- package/dist/internal/adapter-context.d.ts +24 -0
- package/dist/internal/adapter-context.d.ts.map +1 -0
- package/dist/internal/adapter-context.js +23 -0
- package/dist/internal/adapter-context.js.map +1 -0
- package/dist/internal/adapter-registry-bridge.d.ts +58 -0
- package/dist/internal/adapter-registry-bridge.d.ts.map +1 -0
- package/dist/internal/adapter-registry-bridge.js +494 -0
- package/dist/internal/adapter-registry-bridge.js.map +1 -0
- package/dist/internal/adapter-registry-protocol.d.ts +53 -0
- package/dist/internal/adapter-registry-protocol.d.ts.map +1 -0
- package/dist/internal/adapter-registry-protocol.js +182 -0
- package/dist/internal/adapter-registry-protocol.js.map +1 -0
- package/dist/internal/adapter-scope.d.ts +87 -0
- package/dist/internal/adapter-scope.d.ts.map +1 -0
- package/dist/internal/adapter-scope.js +346 -0
- package/dist/internal/adapter-scope.js.map +1 -0
- package/dist/internal/implementation-classifier.d.ts +21 -0
- package/dist/internal/implementation-classifier.d.ts.map +1 -0
- package/dist/internal/implementation-classifier.js +39 -0
- package/dist/internal/implementation-classifier.js.map +1 -0
- package/dist/internal/managed-lazy-generation.d.ts +100 -0
- package/dist/internal/managed-lazy-generation.d.ts.map +1 -0
- package/dist/internal/managed-lazy-generation.js +419 -0
- package/dist/internal/managed-lazy-generation.js.map +1 -0
- package/dist/internal/outlet-commit-lease.d.ts +46 -0
- package/dist/internal/outlet-commit-lease.d.ts.map +1 -0
- package/dist/internal/outlet-commit-lease.js +137 -0
- package/dist/internal/outlet-commit-lease.js.map +1 -0
- package/dist/internal/outlet-error-pipeline.d.ts +122 -0
- package/dist/internal/outlet-error-pipeline.d.ts.map +1 -0
- package/dist/internal/outlet-error-pipeline.js +214 -0
- package/dist/internal/outlet-error-pipeline.js.map +1 -0
- package/dist/internal/outlet-input.d.ts +42 -0
- package/dist/internal/outlet-input.d.ts.map +1 -0
- package/dist/internal/outlet-input.js +86 -0
- package/dist/internal/outlet-input.js.map +1 -0
- package/dist/internal/outlet-membership-boundary.d.ts +93 -0
- package/dist/internal/outlet-membership-boundary.d.ts.map +1 -0
- package/dist/internal/outlet-membership-boundary.js +710 -0
- package/dist/internal/outlet-membership-boundary.js.map +1 -0
- package/dist/internal/outlet-membership.d.ts +31 -0
- package/dist/internal/outlet-membership.d.ts.map +1 -0
- package/dist/internal/outlet-membership.js +65 -0
- package/dist/internal/outlet-membership.js.map +1 -0
- package/dist/internal/outlet-projection.d.ts +102 -0
- package/dist/internal/outlet-projection.d.ts.map +1 -0
- package/dist/internal/outlet-projection.js +228 -0
- package/dist/internal/outlet-projection.js.map +1 -0
- package/dist/internal/outlet-reporter-boundary.d.ts +42 -0
- package/dist/internal/outlet-reporter-boundary.d.ts.map +1 -0
- package/dist/internal/outlet-reporter-boundary.js +57 -0
- package/dist/internal/outlet-reporter-boundary.js.map +1 -0
- package/dist/internal/public-input-capture.d.ts +13 -0
- package/dist/internal/public-input-capture.d.ts.map +1 -0
- package/dist/internal/public-input-capture.js +34 -0
- package/dist/internal/public-input-capture.js.map +1 -0
- package/dist/internal/resolved-contributions-query.d.ts +42 -0
- package/dist/internal/resolved-contributions-query.d.ts.map +1 -0
- package/dist/internal/resolved-contributions-query.js +203 -0
- package/dist/internal/resolved-contributions-query.js.map +1 -0
- package/dist/react-adapter-diagnostics.d.ts +199 -0
- package/dist/react-adapter-diagnostics.d.ts.map +1 -0
- package/dist/react-adapter-diagnostics.js +257 -0
- package/dist/react-adapter-diagnostics.js.map +1 -0
- package/dist/react-adapter-error.d.ts +35 -0
- package/dist/react-adapter-error.d.ts.map +1 -0
- package/dist/react-adapter-error.js +37 -0
- package/dist/react-adapter-error.js.map +1 -0
- package/dist/react-extension-point.d.ts +26 -0
- package/dist/react-extension-point.d.ts.map +1 -0
- package/dist/react-extension-point.js +100 -0
- package/dist/react-extension-point.js.map +1 -0
- package/dist/react-lazy-contribution.d.ts +40 -0
- package/dist/react-lazy-contribution.d.ts.map +1 -0
- package/dist/react-lazy-contribution.js +18 -0
- package/dist/react-lazy-contribution.js.map +1 -0
- package/dist/resolved-contributions.d.ts +90 -0
- package/dist/resolved-contributions.d.ts.map +1 -0
- package/dist/resolved-contributions.js +455 -0
- package/dist/resolved-contributions.js.map +1 -0
- package/package.json +47 -0
- package/src/contribution-component.ts +118 -0
- package/src/extension-outlet.ts +590 -0
- package/src/extension-registry-provider.ts +179 -0
- package/src/index.ts +72 -0
- package/src/internal/adapter-configuration.ts +181 -0
- package/src/internal/adapter-context.ts +43 -0
- package/src/internal/adapter-registry-bridge.ts +723 -0
- package/src/internal/adapter-registry-protocol.ts +365 -0
- package/src/internal/adapter-scope.ts +500 -0
- package/src/internal/implementation-classifier.ts +59 -0
- package/src/internal/managed-lazy-generation.ts +540 -0
- package/src/internal/outlet-commit-lease.ts +216 -0
- package/src/internal/outlet-error-pipeline.ts +447 -0
- package/src/internal/outlet-input.ts +264 -0
- package/src/internal/outlet-membership-boundary.ts +1048 -0
- package/src/internal/outlet-membership.ts +125 -0
- package/src/internal/outlet-projection.ts +511 -0
- package/src/internal/outlet-reporter-boundary.ts +105 -0
- package/src/internal/public-input-capture.ts +55 -0
- package/src/internal/resolved-contributions-query.ts +318 -0
- package/src/react-adapter-diagnostics.ts +457 -0
- package/src/react-adapter-error.ts +88 -0
- package/src/react-extension-point.ts +181 -0
- package/src/react-lazy-contribution.ts +66 -0
- package/src/resolved-contributions.ts +895 -0
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
import * as contribKitCore from "@primafuture/contrib-kit-core";
|
|
2
|
+
import * as adapterConfiguration from "./internal/adapter-configuration.js";
|
|
3
|
+
import * as reactAdapterError from "./react-adapter-error.js";
|
|
4
|
+
/** Přesné Core kódy, které smí adapter zveřejnit jako bezpečný string. */
|
|
5
|
+
const coreErrorCodes = new Set([
|
|
6
|
+
"INVALID_ARGUMENT",
|
|
7
|
+
"INVALID_POINT_ID",
|
|
8
|
+
"INVALID_CONTRIBUTION_ID",
|
|
9
|
+
"INVALID_CONTRACT_VERSION",
|
|
10
|
+
"INVALID_CARDINALITY",
|
|
11
|
+
"INVALID_POLICY",
|
|
12
|
+
"FORGED_EXTENSION_POINT",
|
|
13
|
+
"FOREIGN_CORE_RUNTIME_POINT",
|
|
14
|
+
"POINT_ALREADY_REGISTERED",
|
|
15
|
+
"POINT_ID_COLLISION",
|
|
16
|
+
"POINT_NOT_REGISTERED",
|
|
17
|
+
"POINT_CLOSING",
|
|
18
|
+
"POINT_CLOSED",
|
|
19
|
+
"POINT_CONTRACT_VERSION_MISMATCH",
|
|
20
|
+
"REGISTRY_DISPOSING",
|
|
21
|
+
"REGISTRY_DISPOSED",
|
|
22
|
+
"OWNER_SCOPE_DISPOSING",
|
|
23
|
+
"OWNER_SCOPE_DISPOSED",
|
|
24
|
+
"CONTRIBUTION_ID_COLLISION",
|
|
25
|
+
"POINT_CARDINALITY_EXCEEDED",
|
|
26
|
+
"CONTRIBUTION_DATA_INVALID",
|
|
27
|
+
"CONTRIBUTION_IMPLEMENTATION_INVALID",
|
|
28
|
+
"CONTEXT_INVALID",
|
|
29
|
+
"REGISTRATION_CANCELLED",
|
|
30
|
+
"REGISTRATION_PREPARE_FAILED",
|
|
31
|
+
"REGISTRATION_PREPARE_TIMEOUT",
|
|
32
|
+
"REPLACEMENT_TARGET_NOT_FOUND",
|
|
33
|
+
"REPLACEMENT_TARGET_STALE",
|
|
34
|
+
"ORDERING_POLICY_FAILED",
|
|
35
|
+
"ORDERING_RESULT_INVALID",
|
|
36
|
+
"FILTER_POLICY_FAILED",
|
|
37
|
+
"SELECTION_POLICY_FAILED",
|
|
38
|
+
"SELECTION_RESULT_INVALID",
|
|
39
|
+
"CLEANUP_FAILED",
|
|
40
|
+
"CLEANUP_TIMEOUT",
|
|
41
|
+
"HOT_KEY_COLLISION",
|
|
42
|
+
"INCOMPATIBLE_HOT_UPDATE",
|
|
43
|
+
]);
|
|
44
|
+
/** Stabilní seznam adapter fází přijímaných z vlastní bezpečné chyby. */
|
|
45
|
+
const reactAdapterErrorPhases = new Set([
|
|
46
|
+
"configuration",
|
|
47
|
+
"resolve",
|
|
48
|
+
"load",
|
|
49
|
+
"render",
|
|
50
|
+
"customRender",
|
|
51
|
+
"fallback",
|
|
52
|
+
"policy",
|
|
53
|
+
"projection",
|
|
54
|
+
"callback",
|
|
55
|
+
"lifecycle",
|
|
56
|
+
]);
|
|
57
|
+
/**
|
|
58
|
+
* Přečte bezpečný Core code i z cizí fyzické Core runtime bez úniku accessor chyby.
|
|
59
|
+
*/
|
|
60
|
+
export function readCoreErrorCode(cause) {
|
|
61
|
+
if (cause instanceof contribKitCore.ContribKitError) {
|
|
62
|
+
return cause.code;
|
|
63
|
+
}
|
|
64
|
+
if (typeof cause !== "object" || cause === null) {
|
|
65
|
+
return undefined;
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
const code = Reflect.get(cause, "code", cause);
|
|
69
|
+
return typeof code === "string" && coreErrorCodes.has(code)
|
|
70
|
+
? code
|
|
71
|
+
: undefined;
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Odvodí závazný React code z adapter chyby nebo bezpečné Core klasifikace.
|
|
79
|
+
*/
|
|
80
|
+
export function resolveReactErrorCode(cause, coreCode) {
|
|
81
|
+
if (cause instanceof reactAdapterError.ReactAdapterError) {
|
|
82
|
+
return cause.code;
|
|
83
|
+
}
|
|
84
|
+
if (coreCode === "POINT_NOT_REGISTERED"
|
|
85
|
+
|| coreCode === "POINT_CLOSING"
|
|
86
|
+
|| coreCode === "POINT_CLOSED") {
|
|
87
|
+
return "REACT_POINT_UNAVAILABLE";
|
|
88
|
+
}
|
|
89
|
+
if (coreCode === "REGISTRY_DISPOSING" || coreCode === "REGISTRY_DISPOSED") {
|
|
90
|
+
return "REACT_REGISTRY_UNAVAILABLE";
|
|
91
|
+
}
|
|
92
|
+
return "REACT_RESOLVE_FAILED";
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Zachová bezpečnou adapter phase, ostatní query failures zařadí do resolve.
|
|
96
|
+
*/
|
|
97
|
+
export function resolveReactErrorPhase(cause) {
|
|
98
|
+
if (cause instanceof reactAdapterError.ReactAdapterError) {
|
|
99
|
+
const phase = cause.details.phase;
|
|
100
|
+
if (typeof phase === "string"
|
|
101
|
+
&& reactAdapterErrorPhases.has(phase)) {
|
|
102
|
+
return phase;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return "resolve";
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Projektuje pouze známá scalar point metadata a při getter failure raději nic.
|
|
109
|
+
*/
|
|
110
|
+
export function createPointMetadata(point) {
|
|
111
|
+
if (point === undefined) {
|
|
112
|
+
return undefined;
|
|
113
|
+
}
|
|
114
|
+
try {
|
|
115
|
+
const pointId = point.pointId;
|
|
116
|
+
const contractVersion = point.contractVersion;
|
|
117
|
+
const cardinality = point.cardinality;
|
|
118
|
+
const ownerId = point.ownerId;
|
|
119
|
+
const localName = point.localName;
|
|
120
|
+
const label = point.label;
|
|
121
|
+
if (typeof pointId !== "string"
|
|
122
|
+
|| pointId.length === 0
|
|
123
|
+
|| typeof contractVersion !== "number"
|
|
124
|
+
|| !Number.isSafeInteger(contractVersion)
|
|
125
|
+
|| contractVersion < 1
|
|
126
|
+
|| (cardinality !== "single" && cardinality !== "many")
|
|
127
|
+
|| (ownerId !== undefined && typeof ownerId !== "string")
|
|
128
|
+
|| (localName !== undefined && typeof localName !== "string")
|
|
129
|
+
|| (label !== undefined && typeof label !== "string")) {
|
|
130
|
+
return undefined;
|
|
131
|
+
}
|
|
132
|
+
return Object.freeze({
|
|
133
|
+
pointId,
|
|
134
|
+
contractVersion,
|
|
135
|
+
cardinality,
|
|
136
|
+
...(ownerId === undefined ? {} : { ownerId }),
|
|
137
|
+
...(localName === undefined ? {} : { localName }),
|
|
138
|
+
...(label === undefined ? {} : { label }),
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
catch {
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Projektuje contribution metadata bez jediného čtení dat nebo implementation.
|
|
147
|
+
*/
|
|
148
|
+
export function createContributionMetadata(contribution) {
|
|
149
|
+
if (contribution === undefined) {
|
|
150
|
+
return undefined;
|
|
151
|
+
}
|
|
152
|
+
try {
|
|
153
|
+
const registrationId = contribution.registrationId;
|
|
154
|
+
const contributionId = contribution.contributionId;
|
|
155
|
+
const contributorId = contribution.contributorId;
|
|
156
|
+
const localName = contribution.localName;
|
|
157
|
+
const label = contribution.label;
|
|
158
|
+
return Object.freeze({
|
|
159
|
+
registrationId,
|
|
160
|
+
contributionId,
|
|
161
|
+
...(contributorId === undefined ? {} : { contributorId }),
|
|
162
|
+
...(localName === undefined ? {} : { localName }),
|
|
163
|
+
...(label === undefined ? {} : { label }),
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
catch {
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Vytvoří shallow-frozen veřejný event bez raw contextu nebo registry capability.
|
|
172
|
+
*/
|
|
173
|
+
export function createReactAdapterErrorEvent(input) {
|
|
174
|
+
return Object.freeze({
|
|
175
|
+
code: input.code,
|
|
176
|
+
phase: input.phase,
|
|
177
|
+
cause: input.cause,
|
|
178
|
+
...(input.boundaryId === undefined ? {} : { boundaryId: input.boundaryId }),
|
|
179
|
+
...(input.contribution === undefined ? {} : { contribution: input.contribution }),
|
|
180
|
+
...(input.coreCode === undefined ? {} : { coreCode: input.coreCode }),
|
|
181
|
+
...(input.outletId === undefined ? {} : { outletId: input.outletId }),
|
|
182
|
+
...(input.point === undefined ? {} : { point: input.point }),
|
|
183
|
+
...(input.reactComponentStack === undefined
|
|
184
|
+
? {}
|
|
185
|
+
: { reactComponentStack: input.reactComponentStack }),
|
|
186
|
+
...(input.retryGeneration === undefined
|
|
187
|
+
? {}
|
|
188
|
+
: { retryGeneration: input.retryGeneration }),
|
|
189
|
+
...(input.hasContextProjection === true
|
|
190
|
+
? { contextProjection: input.contextProjection }
|
|
191
|
+
: {}),
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Zabalí veřejnou chybu do frozen diagnostic union větve.
|
|
196
|
+
*/
|
|
197
|
+
export function createErrorDiagnostic(error) {
|
|
198
|
+
return Object.freeze({ kind: "error", error });
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Vytvoří frozen late-result event bez raw settlement hodnoty, cause nebo contextu.
|
|
202
|
+
*/
|
|
203
|
+
export function createLateLazyResultDiagnostic(input) {
|
|
204
|
+
return Object.freeze({
|
|
205
|
+
kind: "lateLazyResult",
|
|
206
|
+
boundaryId: input.boundaryId,
|
|
207
|
+
contribution: input.contribution,
|
|
208
|
+
outcome: input.outcome,
|
|
209
|
+
outletId: input.outletId,
|
|
210
|
+
...(input.point === undefined ? {} : { point: input.point }),
|
|
211
|
+
retryGeneration: input.retryGeneration,
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Pohltí Promise, cizí thenable i jejich pozdní rejection bez diagnostické rekurze.
|
|
216
|
+
*/
|
|
217
|
+
export function normalizeSinkResult(result) {
|
|
218
|
+
try {
|
|
219
|
+
/** Sink rejection nemá business ani další diagnostickou autoritu. */
|
|
220
|
+
function ignoreSinkRejection() {
|
|
221
|
+
// Best-effort sink záměrně končí bez dalšího eventu.
|
|
222
|
+
}
|
|
223
|
+
void Promise.resolve(result).catch(ignoreSinkRejection);
|
|
224
|
+
}
|
|
225
|
+
catch {
|
|
226
|
+
// Throwing then getter nesmí opustit diagnostickou hranici.
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Doručí command-free diagnostiku custom sinku nebo bezpečnému console fallbacku.
|
|
231
|
+
*/
|
|
232
|
+
export function reportReactAdapterDiagnostic(event, configuration, development = true) {
|
|
233
|
+
if (configuration.sink !== undefined) {
|
|
234
|
+
try {
|
|
235
|
+
normalizeSinkResult(adapterConfiguration.callCapturedReactAdapterSink(configuration.sink, event));
|
|
236
|
+
}
|
|
237
|
+
catch {
|
|
238
|
+
// Sync sink throw nesmí změnit committed React stav.
|
|
239
|
+
}
|
|
240
|
+
return;
|
|
241
|
+
}
|
|
242
|
+
if (event.kind !== "error" && !development) {
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
try {
|
|
246
|
+
const consoleReceiver = globalThis.console;
|
|
247
|
+
const method = event.kind === "error" ? "error" : "warn";
|
|
248
|
+
const report = Reflect.get(consoleReceiver, method, consoleReceiver);
|
|
249
|
+
if (typeof report === "function") {
|
|
250
|
+
normalizeSinkResult(Reflect.apply(report, consoleReceiver, [event]));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
catch {
|
|
254
|
+
// Chybějící nebo rozbitý console fallback je bezpečný no-op.
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
//# sourceMappingURL=react-adapter-diagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-adapter-diagnostics.js","sourceRoot":"","sources":["../src/react-adapter-diagnostics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stable public code for expected React adapter errors.
|
|
3
|
+
*
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export type ReactAdapterErrorCode = "REACT_INVALID_ARGUMENT" | "REACT_REGISTRY_NOT_PROVIDED" | "REACT_REGISTRY_INVALID" | "REACT_REGISTRY_UNAVAILABLE" | "REACT_ADAPTER_DISPOSED" | "REACT_POINT_IMPLEMENTATION_INVALID" | "REACT_POINT_UNAVAILABLE" | "REACT_RESOLVE_FAILED" | "REACT_LAZY_LOAD_FAILED" | "REACT_RENDER_FAILED" | "REACT_ERROR_POLICY_FAILED" | "REACT_CONTEXT_PROJECTION_FAILED" | "REACT_CALLBACK_FAILED";
|
|
7
|
+
/**
|
|
8
|
+
* Stable phase in which the React adapter captured an error.
|
|
9
|
+
*
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
export type ReactAdapterErrorPhase = "configuration" | "resolve" | "load" | "render" | "customRender" | "fallback" | "policy" | "projection" | "callback" | "lifecycle";
|
|
13
|
+
/**
|
|
14
|
+
* Stable public React adapter error with safe immutable details.
|
|
15
|
+
*
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
export declare class ReactAdapterError extends Error {
|
|
19
|
+
/** Machine-readable classification of the adapter error. */
|
|
20
|
+
readonly code: ReactAdapterErrorCode;
|
|
21
|
+
/** Shallow-frozen safe metadata without raw contribution values. */
|
|
22
|
+
readonly details: Readonly<Record<string, unknown>>;
|
|
23
|
+
/** Original throwable preserved when wrapping a foreign error. */
|
|
24
|
+
readonly cause?: unknown;
|
|
25
|
+
/**
|
|
26
|
+
* Creates a public error with a stable code and its own copy of details.
|
|
27
|
+
*/
|
|
28
|
+
constructor(code: ReactAdapterErrorCode, message: string, options?: {
|
|
29
|
+
/** Original throwable that caused the stable wrapper. */
|
|
30
|
+
readonly cause?: unknown;
|
|
31
|
+
/** Safe scalar metadata for the specific failure phase. */
|
|
32
|
+
readonly details?: Readonly<Record<string, unknown>>;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=react-adapter-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-adapter-error.d.ts","sourceRoot":"","sources":["../src/react-adapter-error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAC9B,wBAAwB,GACxB,6BAA6B,GAC7B,wBAAwB,GACxB,4BAA4B,GAC5B,wBAAwB,GACxB,oCAAoC,GACpC,yBAAyB,GACzB,sBAAsB,GACtB,wBAAwB,GACxB,qBAAqB,GACrB,2BAA2B,GAC3B,iCAAiC,GACjC,uBAAuB,CAAC;AAE3B;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAC/B,eAAe,GACf,SAAS,GACT,MAAM,GACN,QAAQ,GACR,cAAc,GACd,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,WAAW,CAAC;AAWf;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC3C,4DAA4D;IAC5D,SAAgB,IAAI,EAAE,qBAAqB,CAAC;IAE5C,oEAAoE;IACpE,SAAgB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3D,kEAAkE;IAClE,SAAyB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEzC;;OAEG;IACH,YACC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACT,yDAAyD;QACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QACzB,2DAA2D;QAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KACrD,EAcD;CACD"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vytvoří vlastní shallow-frozen kopii bezpečných detailů chyby.
|
|
3
|
+
*/
|
|
4
|
+
function copyErrorDetails(details) {
|
|
5
|
+
return Object.freeze(details === undefined ? {} : { ...details });
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Stable public React adapter error with safe immutable details.
|
|
9
|
+
*
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
export class ReactAdapterError extends Error {
|
|
13
|
+
/** Machine-readable classification of the adapter error. */
|
|
14
|
+
code;
|
|
15
|
+
/** Shallow-frozen safe metadata without raw contribution values. */
|
|
16
|
+
details;
|
|
17
|
+
/** Original throwable preserved when wrapping a foreign error. */
|
|
18
|
+
cause;
|
|
19
|
+
/**
|
|
20
|
+
* Creates a public error with a stable code and its own copy of details.
|
|
21
|
+
*/
|
|
22
|
+
constructor(code, message, options) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.name = "ReactAdapterError";
|
|
25
|
+
this.code = code;
|
|
26
|
+
this.details = copyErrorDetails(options?.details);
|
|
27
|
+
if (options !== undefined && Object.hasOwn(options, "cause")) {
|
|
28
|
+
Object.defineProperty(this, "cause", {
|
|
29
|
+
configurable: true,
|
|
30
|
+
enumerable: false,
|
|
31
|
+
value: options.cause,
|
|
32
|
+
writable: false,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=react-adapter-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-adapter-error.js","sourceRoot":"","sources":["../src/react-adapter-error.ts"],"names":[],"mappings":"AAqCA;;GAEG;AACH,SAAS,gBAAgB,CACxB,OAAsD;IAEtD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC3C,4DAA4D;IAC5C,IAAI,CAAwB;IAE5C,oEAAoE;IACpD,OAAO,CAAoC;IAE3D,kEAAkE;IACzC,KAAK,CAAW;IAEzC;;OAEG;IACH,YACC,IAA2B,EAC3B,OAAe,EACf,OAKC;QAED,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YAC9D,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE;gBACpC,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;CACD"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as contribKitCore from "@primafuture/contrib-kit-core";
|
|
2
|
+
/**
|
|
3
|
+
* React-specific extension point with an eager or managed-lazy implementation axis.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export type ReactExtensionPoint<Context, Data, PointId extends string = string, ContractVersion extends number = number> = contribKitCore.ExtensionPoint<Context, Data, import("./react-lazy-contribution.js").ReactContributionImplementation<Context, Data>, PointId, ContractVersion>;
|
|
8
|
+
/**
|
|
9
|
+
* Any React extension point accepted by generic adapter APIs.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
export type AnyReactExtensionPoint = ReactExtensionPoint<any, any, any, any>;
|
|
14
|
+
/**
|
|
15
|
+
* Core point definition specialized for React contribution implementations.
|
|
16
|
+
*
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export type ReactExtensionPointDefinition<Context, Data, PointId extends string, ContractVersion extends number> = contribKitCore.ExtensionPointDefinition<Context, Data, import("./react-lazy-contribution.js").ReactContributionImplementation<Context, Data>, PointId, ContractVersion>;
|
|
20
|
+
/**
|
|
21
|
+
* Creates an authentic Core point with a built-in React implementation validator.
|
|
22
|
+
*
|
|
23
|
+
* @public
|
|
24
|
+
*/
|
|
25
|
+
export declare function defineReactExtensionPoint<Context, Data>(): <const PointId extends string, const ContractVersion extends number>(definition: ReactExtensionPointDefinition<Context, Data, PointId, ContractVersion>, options?: contribKitCore.ExtensionPointFactoryOptions) => ReactExtensionPoint<Context, Data, PointId, ContractVersion>;
|
|
26
|
+
//# sourceMappingURL=react-extension-point.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-extension-point.d.ts","sourceRoot":"","sources":["../src/react-extension-point.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAC;AA2GhE;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAC9B,OAAO,EACP,IAAI,EACJ,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,eAAe,SAAS,MAAM,GAAG,MAAM,IACpC,cAAc,CAAC,cAAc,CAChC,OAAO,EACP,IAAI,EACJ,OAAO,8BAA8B,EAAE,+BAA+B,CAAC,OAAO,EAAE,IAAI,CAAC,EACrF,OAAO,EACP,eAAe,CACf,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAE7E;;;;GAIG;AACH,MAAM,MAAM,6BAA6B,CACxC,OAAO,EACP,IAAI,EACJ,OAAO,SAAS,MAAM,EACtB,eAAe,SAAS,MAAM,IAC3B,cAAc,CAAC,wBAAwB,CAC1C,OAAO,EACP,IAAI,EACJ,OAAO,8BAA8B,EAAE,+BAA+B,CAAC,OAAO,EAAE,IAAI,CAAC,EACrF,OAAO,EACP,eAAe,CACf,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,IAAI,KAAK,CAC3D,KAAK,CAAC,OAAO,SAAS,MAAM,EAC5B,KAAK,CAAC,eAAe,SAAS,MAAM,EAEpC,UAAU,EAAE,6BAA6B,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,EAClF,OAAO,CAAC,EAAE,cAAc,CAAC,4BAA4B,KACjD,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAmBhE"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import * as contribKitCore from "@primafuture/contrib-kit-core";
|
|
2
|
+
import * as implementationClassifier from "./internal/implementation-classifier.js";
|
|
3
|
+
/** Immutable prázdný issues seznam vestavěného negativního výsledku. */
|
|
4
|
+
const emptyValidationIssues = Object.freeze([]);
|
|
5
|
+
/** Sdílený platný výsledek vestavěného classifier validátoru. */
|
|
6
|
+
const validImplementationResult = Object.freeze({ valid: true });
|
|
7
|
+
/** Sdílený negativní výsledek bez raw implementation hodnoty. */
|
|
8
|
+
const invalidImplementationResult = Object.freeze({
|
|
9
|
+
valid: false,
|
|
10
|
+
issues: emptyValidationIssues,
|
|
11
|
+
});
|
|
12
|
+
/**
|
|
13
|
+
* Spustí vestavěnou React implementation klasifikaci bez obalení accessor chyby.
|
|
14
|
+
*/
|
|
15
|
+
function validateReactImplementation(value) {
|
|
16
|
+
return implementationClassifier.classifyReactContributionImplementation(value).kind === "invalid"
|
|
17
|
+
? invalidImplementationResult
|
|
18
|
+
: validImplementationResult;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Rozpozná hodnotu, kterou lze transparentně obalit Proxy bez předčasného čtení.
|
|
22
|
+
*/
|
|
23
|
+
function isProxyTarget(value) {
|
|
24
|
+
return (typeof value === "object" && value !== null) || typeof value === "function";
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Vytvoří validator facade, jehož jediný `validate` Get zachytí host callback.
|
|
28
|
+
*/
|
|
29
|
+
function createImplementationValidatorFacade(value) {
|
|
30
|
+
if (value === undefined) {
|
|
31
|
+
return Object.freeze({ validate: validateReactImplementation });
|
|
32
|
+
}
|
|
33
|
+
if (!isProxyTarget(value)) {
|
|
34
|
+
return value;
|
|
35
|
+
}
|
|
36
|
+
return new Proxy(Object.create(null), {
|
|
37
|
+
get(_target, property) {
|
|
38
|
+
const captured = Reflect.get(value, property, value);
|
|
39
|
+
if (property !== "validate") {
|
|
40
|
+
return captured;
|
|
41
|
+
}
|
|
42
|
+
if (captured === undefined) {
|
|
43
|
+
return validateReactImplementation;
|
|
44
|
+
}
|
|
45
|
+
if (typeof captured !== "function") {
|
|
46
|
+
return captured;
|
|
47
|
+
}
|
|
48
|
+
const hostValidate = captured;
|
|
49
|
+
return (implementation) => {
|
|
50
|
+
const builtIn = validateReactImplementation(implementation);
|
|
51
|
+
return builtIn.valid ? hostValidate(implementation) : builtIn;
|
|
52
|
+
};
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Doplní pouze implementation validator a ostatní nested fields transparentně předá.
|
|
58
|
+
*/
|
|
59
|
+
function createValidatorsFacade(value) {
|
|
60
|
+
if (value === undefined) {
|
|
61
|
+
return Object.freeze({
|
|
62
|
+
implementation: Object.freeze({ validate: validateReactImplementation }),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (!isProxyTarget(value)) {
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
68
|
+
return new Proxy(Object.create(null), {
|
|
69
|
+
get(_target, property) {
|
|
70
|
+
const captured = Reflect.get(value, property, value);
|
|
71
|
+
return property === "implementation"
|
|
72
|
+
? createImplementationValidatorFacade(captured)
|
|
73
|
+
: captured;
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Vytvoří transparentní definition facade; samotný read-once capture vlastní Core.
|
|
79
|
+
*/
|
|
80
|
+
function createDefinitionFacade(value) {
|
|
81
|
+
if (!isProxyTarget(value)) {
|
|
82
|
+
return value;
|
|
83
|
+
}
|
|
84
|
+
return new Proxy(Object.create(null), {
|
|
85
|
+
get(_target, property) {
|
|
86
|
+
const captured = Reflect.get(value, property, value);
|
|
87
|
+
return property === "validators" ? createValidatorsFacade(captured) : captured;
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Creates an authentic Core point with a built-in React implementation validator.
|
|
93
|
+
*
|
|
94
|
+
* @public
|
|
95
|
+
*/
|
|
96
|
+
export function defineReactExtensionPoint() {
|
|
97
|
+
const defineCorePoint = contribKitCore.defineExtensionPoint();
|
|
98
|
+
return (definition, options) => defineCorePoint(createDefinitionFacade(definition), options);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=react-extension-point.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-extension-point.js","sourceRoot":"","sources":["../src/react-extension-point.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Input for one managed-lazy loader attempt.
|
|
3
|
+
*
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export interface ReactLazyContributionLoadInput {
|
|
7
|
+
/** Abort signal owned by the specific render boundary generation. */
|
|
8
|
+
readonly signal: import("@primafuture/contrib-kit-core").ContributionAbortSignal;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Public input for the managed-lazy contribution convenience factory.
|
|
12
|
+
*
|
|
13
|
+
* @public
|
|
14
|
+
*/
|
|
15
|
+
export interface ReactLazyContributionInput<Context, Data> {
|
|
16
|
+
/** Loads a React contribution component for one boundary-owned attempt. */
|
|
17
|
+
readonly load: (input: ReactLazyContributionLoadInput) => Promise<import("./contribution-component.js").ReactContributionComponent<Context, Data>>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Structural managed-lazy descriptor recognizable across two adapter runtimes.
|
|
21
|
+
*
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
export interface ReactLazyContribution<Context, Data> extends ReactLazyContributionInput<Context, Data> {
|
|
25
|
+
/** Reserved literal that distinguishes the descriptor from an eager React component. */
|
|
26
|
+
readonly kind: "contrib-kit-react-lazy";
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Implementation axis of a React extension point.
|
|
30
|
+
*
|
|
31
|
+
* @public
|
|
32
|
+
*/
|
|
33
|
+
export type ReactContributionImplementation<Context, Data> = import("./contribution-component.js").ReactContributionComponent<Context, Data> | ReactLazyContribution<Context, Data>;
|
|
34
|
+
/**
|
|
35
|
+
* Captures the loader exactly once and creates a shallow-frozen structural descriptor.
|
|
36
|
+
*
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export declare function defineReactLazyContribution<Context, Data>(input: ReactLazyContributionInput<Context, Data>): ReactLazyContribution<Context, Data>;
|
|
40
|
+
//# sourceMappingURL=react-lazy-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-lazy-contribution.d.ts","sourceRoot":"","sources":["../src/react-lazy-contribution.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,WAAW,8BAA8B;IAC9C,qEAAqE;IACrE,QAAQ,CAAC,MAAM,EAAE,OAAO,+BAA+B,EAAE,uBAAuB,CAAC;CACjF;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B,CAAC,OAAO,EAAE,IAAI;IACxD,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,CACd,KAAK,EAAE,8BAA8B,KACjC,OAAO,CAAC,OAAO,6BAA6B,EAAE,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;CAC9F;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB,CAAC,OAAO,EAAE,IAAI,CACnD,SAAQ,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC;IACjD,wFAAwF;IACxF,QAAQ,CAAC,IAAI,EAAE,wBAAwB,CAAC;CACxC;AAED;;;;GAIG;AACH,MAAM,MAAM,+BAA+B,CAAC,OAAO,EAAE,IAAI,IACtD,OAAO,6BAA6B,EAAE,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,GAC/E,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,IAAI,EACxD,KAAK,EAAE,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,GAC9C,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CActC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as publicInputCapture from "./internal/public-input-capture.js";
|
|
2
|
+
/**
|
|
3
|
+
* Captures the loader exactly once and creates a shallow-frozen structural descriptor.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export function defineReactLazyContribution(input) {
|
|
8
|
+
const source = publicInputCapture.requireInputObject(input, "input");
|
|
9
|
+
const load = publicInputCapture.readInputProperty(source, "load", "input.load");
|
|
10
|
+
if (typeof load !== "function") {
|
|
11
|
+
return publicInputCapture.throwInvalidCapturedArgument("input.load", "input.load must be callable.");
|
|
12
|
+
}
|
|
13
|
+
return Object.freeze({
|
|
14
|
+
kind: "contrib-kit-react-lazy",
|
|
15
|
+
load: load,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=react-lazy-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-lazy-contribution.js","sourceRoot":"","sources":["../src/react-lazy-contribution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,kBAAkB,MAAM,oCAAoC,CAAC;AA4CzE;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAC1C,KAAgD;IAEhD,MAAM,MAAM,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAChF,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,kBAAkB,CAAC,4BAA4B,CACrD,YAAY,EACZ,8BAA8B,CAC9B,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACpB,IAAI,EAAE,wBAAiC;QACvC,IAAI,EAAE,IAAyD;KAC/D,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import * as contribKitCore from "@primafuture/contrib-kit-core";
|
|
2
|
+
import * as adapterScope from "./internal/adapter-scope.js";
|
|
3
|
+
import * as outletCommitLease from "./internal/outlet-commit-lease.js";
|
|
4
|
+
import * as outletInput from "./internal/outlet-input.js";
|
|
5
|
+
import * as resolvedContributionsQuery from "./internal/resolved-contributions-query.js";
|
|
6
|
+
import type * as reactExtensionPoint from "./react-extension-point.js";
|
|
7
|
+
/** Empty klasifikace úspěšného resolved view. @public */
|
|
8
|
+
export type ExtensionOutletEmptyReason = "noRegistrations" | "excludedByPolicy";
|
|
9
|
+
/**
|
|
10
|
+
* Frozen synchronní výsledek jednoho render-time Core query.
|
|
11
|
+
*
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export type ResolvedContributionsState<Point extends import("./react-extension-point.js").AnyReactExtensionPoint> = {
|
|
15
|
+
/** Rozlišuje úspěšný resolved view od failure. */
|
|
16
|
+
readonly status: "resolved";
|
|
17
|
+
/** Frozen normalized contributions v přesném Core pořadí. */
|
|
18
|
+
readonly contributions: readonly contribKitCore.RegisteredContribution<Point>[];
|
|
19
|
+
/** Důvod prázdného výsledku nebo null pro neprázdnou kolekci. */
|
|
20
|
+
readonly emptyReason: ExtensionOutletEmptyReason | null;
|
|
21
|
+
} | {
|
|
22
|
+
/** Rozlišuje resolve failure od úspěšného empty view. */
|
|
23
|
+
readonly status: "failed";
|
|
24
|
+
/** Sdílená frozen prázdná tuple bez stale příspěvků. */
|
|
25
|
+
readonly contributions: readonly [];
|
|
26
|
+
/** Frozen bezpečný error event připravený pro UI i sink. */
|
|
27
|
+
readonly error: import("./react-adapter-diagnostics.js").ReactAdapterErrorEvent;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Read-once vstup synchronního resolved hooku.
|
|
31
|
+
*
|
|
32
|
+
* @public
|
|
33
|
+
*/
|
|
34
|
+
export interface UseResolvedContributionsOptions<Point extends import("./react-extension-point.js").AnyReactExtensionPoint> {
|
|
35
|
+
/** Point-specific context předaný Core resolution pipeline. */
|
|
36
|
+
readonly context: contribKitCore.ExtensionPointContext<Point>;
|
|
37
|
+
/** Exact canonical React extension point. */
|
|
38
|
+
readonly point: Point;
|
|
39
|
+
/** Lokální pure context projector; null zruší inherited projector. */
|
|
40
|
+
readonly projectContext?: ((context: contribKitCore.ExtensionPointContext<Point>) => unknown) | null | undefined;
|
|
41
|
+
/** Explicitní registry s předností před nearest providerem. */
|
|
42
|
+
readonly registry?: contribKitCore.ExtensionRegistry | undefined;
|
|
43
|
+
/** Lokální diagnostic sink; null obnoví bezpečný package fallback. */
|
|
44
|
+
readonly sink?: import("./react-adapter-diagnostics.js").ReactAdapterSink | null | undefined;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Frozen návrat synchronního resolved hooku.
|
|
48
|
+
*
|
|
49
|
+
* @public
|
|
50
|
+
*/
|
|
51
|
+
export interface UseResolvedContributionsResult<Point extends import("./react-extension-point.js").AnyReactExtensionPoint> {
|
|
52
|
+
/** Aktuální frozen resolved nebo failed stav. */
|
|
53
|
+
readonly state: ResolvedContributionsState<Point>;
|
|
54
|
+
/** Stabilní lokální invalidace bez Core commitu. */
|
|
55
|
+
refresh(): void;
|
|
56
|
+
}
|
|
57
|
+
/** Interní binding, který outletu zpřístupní přesně stejnou query a scope autoritu. */
|
|
58
|
+
export interface OutletResolvedContributionsBinding<Point extends reactExtensionPoint.AnyReactExtensionPoint> {
|
|
59
|
+
/** Read-once outlet input použitý query i rendererem. */
|
|
60
|
+
readonly input: outletInput.CapturedOutletInput<Point>;
|
|
61
|
+
/** Public frozen resolved výsledek stejného render attemptu. */
|
|
62
|
+
readonly result: UseResolvedContributionsResult<Point>;
|
|
63
|
+
/** Opaque query attempt pro committed callback deduplikaci. */
|
|
64
|
+
readonly attempt: resolvedContributionsQuery.ResolvedQueryAttempt<Point>;
|
|
65
|
+
/** Scope-local owner bridge, diagnostik a commit leases. */
|
|
66
|
+
readonly scope: adapterScope.AdapterScopeRuntime;
|
|
67
|
+
/** Active generation nutná pro membership commit lease. */
|
|
68
|
+
readonly generation: adapterScope.AdapterScopeGeneration | undefined;
|
|
69
|
+
/** Exact raw registry reference tvořící první osu membership identity. */
|
|
70
|
+
readonly rawRegistry: object;
|
|
71
|
+
/** Ověří, že render attempt je právě committed a commandově current. */
|
|
72
|
+
readonly isCurrent: () => boolean;
|
|
73
|
+
/** Render-time authority checkpoint pro atomickou outlet projection. */
|
|
74
|
+
readonly checkpoint: () => void;
|
|
75
|
+
/** Commit-owned outlet identita, dostupná až po autoritativním mountu. */
|
|
76
|
+
readonly outletLease: outletCommitLease.OutletCommitLease | undefined;
|
|
77
|
+
/** True při serveru a prvním hydration renderu nad společným sentinel snapshotem. */
|
|
78
|
+
readonly serverSnapshot: boolean;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Synchronně promítne public Core katalog do React render state.
|
|
82
|
+
*
|
|
83
|
+
* @public
|
|
84
|
+
*/
|
|
85
|
+
export declare function useResolvedContributions<Point extends import("./react-extension-point.js").AnyReactExtensionPoint>(options: UseResolvedContributionsOptions<Point>): UseResolvedContributionsResult<Point>;
|
|
86
|
+
/**
|
|
87
|
+
* Interně promítne outlet props stejným subscriberem, query a committed autoritou.
|
|
88
|
+
*/
|
|
89
|
+
export declare function useResolvedContributionsForOutlet<Point extends reactExtensionPoint.AnyReactExtensionPoint>(props: object, commitObserver?: (binding: OutletResolvedContributionsBinding<Point>) => void): OutletResolvedContributionsBinding<Point>;
|
|
90
|
+
//# sourceMappingURL=resolved-contributions.d.ts.map
|