@living-architecture/riviere-extract-ts 0.2.4 → 0.2.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/dist/domain/config-resolution/resolve-config.js +2 -0
- package/dist/domain/connection-detection/async-detection/detect-publish-connections.d.ts +6 -0
- package/dist/domain/connection-detection/async-detection/detect-publish-connections.d.ts.map +1 -0
- package/dist/domain/connection-detection/async-detection/detect-publish-connections.js +80 -0
- package/dist/domain/connection-detection/async-detection/detect-subscribe-connections.d.ts +7 -0
- package/dist/domain/connection-detection/async-detection/detect-subscribe-connections.d.ts.map +1 -0
- package/dist/domain/connection-detection/async-detection/detect-subscribe-connections.js +70 -0
- package/dist/domain/connection-detection/detect-connections.d.ts +11 -1
- package/dist/domain/connection-detection/detect-connections.d.ts.map +1 -1
- package/dist/domain/connection-detection/detect-connections.js +25 -2
- package/dist/domain/value-extraction/enrich-components.d.ts.map +1 -1
- package/dist/domain/value-extraction/enrich-components.js +1 -0
- package/dist/shell/index.d.ts +1 -1
- package/dist/shell/index.d.ts.map +1 -1
- package/dist/test-fixtures.d.ts.map +1 -1
- package/dist/test-fixtures.js +1 -0
- package/package.json +3 -3
|
@@ -18,6 +18,7 @@ function resolveModule(moduleConfig, loader) {
|
|
|
18
18
|
domainOp: requireRule(moduleConfig.domainOp, 'domainOp', moduleConfig.name),
|
|
19
19
|
event: requireRule(moduleConfig.event, 'event', moduleConfig.name),
|
|
20
20
|
eventHandler: requireRule(moduleConfig.eventHandler, 'eventHandler', moduleConfig.name),
|
|
21
|
+
eventPublisher: requireRule(moduleConfig.eventPublisher, 'eventPublisher', moduleConfig.name),
|
|
21
22
|
ui: requireRule(moduleConfig.ui, 'ui', moduleConfig.name),
|
|
22
23
|
...(moduleConfig.customTypes !== undefined && { customTypes: moduleConfig.customTypes }),
|
|
23
24
|
};
|
|
@@ -36,6 +37,7 @@ function resolveModuleWithExtends(moduleConfig, extendsSource, loader) {
|
|
|
36
37
|
domainOp: moduleConfig.domainOp ?? baseModule.domainOp,
|
|
37
38
|
event: moduleConfig.event ?? baseModule.event,
|
|
38
39
|
eventHandler: moduleConfig.eventHandler ?? baseModule.eventHandler,
|
|
40
|
+
eventPublisher: moduleConfig.eventPublisher ?? baseModule.eventPublisher,
|
|
39
41
|
ui: moduleConfig.ui ?? baseModule.ui,
|
|
40
42
|
...(mergedCustomTypes !== undefined && { customTypes: mergedCustomTypes }),
|
|
41
43
|
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Project } from 'ts-morph';
|
|
2
|
+
import type { EnrichedComponent } from '../../value-extraction/enrich-components';
|
|
3
|
+
import type { ExtractedLink } from '../extracted-link';
|
|
4
|
+
import type { AsyncDetectionOptions } from './detect-subscribe-connections';
|
|
5
|
+
export declare function detectPublishConnections(project: Project, components: readonly EnrichedComponent[], options: AsyncDetectionOptions): ExtractedLink[];
|
|
6
|
+
//# sourceMappingURL=detect-publish-connections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect-publish-connections.d.ts","sourceRoot":"","sources":["../../../../src/domain/connection-detection/async-detection/detect-publish-connections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAEvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMtD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAI3E,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,OAAO,EAAE,qBAAqB,GAC7B,aAAa,EAAE,CAOjB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { ConnectionDetectionError } from '../connection-detection-error';
|
|
2
|
+
import { componentIdentity, stripGenericArgs } from '../call-graph/call-graph-types';
|
|
3
|
+
import { findClassInProject } from '../call-graph/trace-calls';
|
|
4
|
+
export function detectPublishConnections(project, components, options) {
|
|
5
|
+
const publishers = components.filter((c) => c.type === 'eventPublisher');
|
|
6
|
+
const events = components.filter((c) => c.type === 'event');
|
|
7
|
+
return publishers.flatMap((publisher) => extractPublisherLinks(project, publisher, events, options));
|
|
8
|
+
}
|
|
9
|
+
function extractPublisherLinks(project, publisher, events, options) {
|
|
10
|
+
const classDecl = findClassInProject(project, publisher);
|
|
11
|
+
if (classDecl === undefined) {
|
|
12
|
+
return [];
|
|
13
|
+
}
|
|
14
|
+
const methods = classDecl.getMethods();
|
|
15
|
+
return methods.flatMap((method) => {
|
|
16
|
+
const firstParam = method.getParameters()[0];
|
|
17
|
+
if (firstParam === undefined) {
|
|
18
|
+
return [];
|
|
19
|
+
}
|
|
20
|
+
const paramType = firstParam.getType();
|
|
21
|
+
const paramTypeName = stripGenericArgs(paramType.getText(firstParam));
|
|
22
|
+
const sourceLocation = {
|
|
23
|
+
repository: '',
|
|
24
|
+
filePath: publisher.location.file,
|
|
25
|
+
lineNumber: method.getStartLineNumber(),
|
|
26
|
+
};
|
|
27
|
+
return resolvePublishTarget(publisher, paramTypeName, events, options, sourceLocation);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
function resolvePublishTarget(publisher, paramTypeName, events, options, sourceLocation) {
|
|
31
|
+
const matchingEvents = events.filter((e) => e.metadata['eventName'] === paramTypeName);
|
|
32
|
+
if (matchingEvents.length === 0) {
|
|
33
|
+
return [handleNoMatch(publisher, paramTypeName, options, sourceLocation)];
|
|
34
|
+
}
|
|
35
|
+
if (matchingEvents.length > 1) {
|
|
36
|
+
return [
|
|
37
|
+
handleAmbiguousMatch(publisher, paramTypeName, matchingEvents.length, options, sourceLocation),
|
|
38
|
+
];
|
|
39
|
+
}
|
|
40
|
+
return matchingEvents.map((event) => ({
|
|
41
|
+
source: componentIdentity(publisher),
|
|
42
|
+
target: componentIdentity(event),
|
|
43
|
+
type: 'async',
|
|
44
|
+
sourceLocation,
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
function handleAmbiguousMatch(publisher, paramTypeName, matchCount, options, sourceLocation) {
|
|
48
|
+
if (options.strict) {
|
|
49
|
+
throw new ConnectionDetectionError({
|
|
50
|
+
file: sourceLocation.filePath,
|
|
51
|
+
line: sourceLocation.lineNumber,
|
|
52
|
+
typeName: publisher.name,
|
|
53
|
+
reason: `parameter type "${paramTypeName}" matches ${matchCount} Event components (ambiguous)`,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
source: componentIdentity(publisher),
|
|
58
|
+
target: '_unresolved',
|
|
59
|
+
type: 'async',
|
|
60
|
+
sourceLocation,
|
|
61
|
+
_uncertain: `ambiguous: ${matchCount} events match parameter type: ${paramTypeName}`,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function handleNoMatch(publisher, paramTypeName, options, sourceLocation) {
|
|
65
|
+
if (options.strict) {
|
|
66
|
+
throw new ConnectionDetectionError({
|
|
67
|
+
file: sourceLocation.filePath,
|
|
68
|
+
line: sourceLocation.lineNumber,
|
|
69
|
+
typeName: publisher.name,
|
|
70
|
+
reason: `parameter type "${paramTypeName}" does not match any Event component`,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
source: componentIdentity(publisher),
|
|
75
|
+
target: '_unresolved',
|
|
76
|
+
type: 'async',
|
|
77
|
+
sourceLocation,
|
|
78
|
+
_uncertain: `no event found for parameter type: ${paramTypeName}`,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { EnrichedComponent } from '../../value-extraction/enrich-components';
|
|
2
|
+
import type { ExtractedLink } from '../extracted-link';
|
|
3
|
+
export interface AsyncDetectionOptions {
|
|
4
|
+
strict: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function detectSubscribeConnections(components: readonly EnrichedComponent[], options: AsyncDetectionOptions): ExtractedLink[];
|
|
7
|
+
//# sourceMappingURL=detect-subscribe-connections.d.ts.map
|
package/dist/domain/connection-detection/async-detection/detect-subscribe-connections.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect-subscribe-connections.d.ts","sourceRoot":"","sources":["../../../../src/domain/connection-detection/async-detection/detect-subscribe-connections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAItD,MAAM,WAAW,qBAAqB;IAAE,MAAM,EAAE,OAAO,CAAA;CAAC;AAExD,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,OAAO,EAAE,qBAAqB,GAC7B,aAAa,EAAE,CASjB"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ConnectionDetectionError } from '../connection-detection-error';
|
|
2
|
+
import { componentIdentity } from '../call-graph/call-graph-types';
|
|
3
|
+
export function detectSubscribeConnections(components, options) {
|
|
4
|
+
const eventHandlers = components.filter((c) => c.type === 'eventHandler');
|
|
5
|
+
const events = components.filter((c) => c.type === 'event');
|
|
6
|
+
return eventHandlers.flatMap((handler) => getSubscribedEvents(handler).flatMap((eventName) => resolveSubscription(handler, eventName, events, options)));
|
|
7
|
+
}
|
|
8
|
+
function toSourceLocation(component) {
|
|
9
|
+
return {
|
|
10
|
+
repository: '',
|
|
11
|
+
filePath: component.location.file,
|
|
12
|
+
lineNumber: component.location.line,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function resolveSubscription(handler, eventName, events, options) {
|
|
16
|
+
const matchingEvents = events.filter((e) => e.metadata['eventName'] === eventName);
|
|
17
|
+
if (matchingEvents.length === 0) {
|
|
18
|
+
return [handleNoMatch(handler, eventName, options)];
|
|
19
|
+
}
|
|
20
|
+
if (matchingEvents.length > 1) {
|
|
21
|
+
return [handleAmbiguousMatch(handler, eventName, matchingEvents.length, options)];
|
|
22
|
+
}
|
|
23
|
+
return matchingEvents.map((event) => ({
|
|
24
|
+
source: componentIdentity(event),
|
|
25
|
+
target: componentIdentity(handler),
|
|
26
|
+
type: 'async',
|
|
27
|
+
sourceLocation: toSourceLocation(handler),
|
|
28
|
+
}));
|
|
29
|
+
}
|
|
30
|
+
function handleAmbiguousMatch(handler, eventName, matchCount, options) {
|
|
31
|
+
if (options.strict) {
|
|
32
|
+
throw new ConnectionDetectionError({
|
|
33
|
+
file: handler.location.file,
|
|
34
|
+
line: handler.location.line,
|
|
35
|
+
typeName: handler.name,
|
|
36
|
+
reason: `subscribed event "${eventName}" matches ${matchCount} Event components (ambiguous)`,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
source: '_unresolved',
|
|
41
|
+
target: componentIdentity(handler),
|
|
42
|
+
type: 'async',
|
|
43
|
+
sourceLocation: toSourceLocation(handler),
|
|
44
|
+
_uncertain: `ambiguous: ${matchCount} events match subscribed event name: ${eventName}`,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
function handleNoMatch(handler, eventName, options) {
|
|
48
|
+
if (options.strict) {
|
|
49
|
+
throw new ConnectionDetectionError({
|
|
50
|
+
file: handler.location.file,
|
|
51
|
+
line: handler.location.line,
|
|
52
|
+
typeName: handler.name,
|
|
53
|
+
reason: `subscribed event "${eventName}" does not match any Event component`,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
source: '_unresolved',
|
|
58
|
+
target: componentIdentity(handler),
|
|
59
|
+
type: 'async',
|
|
60
|
+
sourceLocation: toSourceLocation(handler),
|
|
61
|
+
_uncertain: `no event found for subscribed event name: ${eventName}`,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
function getSubscribedEvents(handler) {
|
|
65
|
+
const raw = handler.metadata['subscribedEvents'];
|
|
66
|
+
if (!Array.isArray(raw)) {
|
|
67
|
+
return [];
|
|
68
|
+
}
|
|
69
|
+
return raw.filter((item) => typeof item === 'string');
|
|
70
|
+
}
|
|
@@ -6,5 +6,15 @@ export interface ConnectionDetectionOptions {
|
|
|
6
6
|
allowIncomplete?: boolean;
|
|
7
7
|
moduleGlobs: string[];
|
|
8
8
|
}
|
|
9
|
-
export
|
|
9
|
+
export interface ConnectionTimings {
|
|
10
|
+
callGraphMs: number;
|
|
11
|
+
asyncDetectionMs: number;
|
|
12
|
+
setupMs: number;
|
|
13
|
+
totalMs: number;
|
|
14
|
+
}
|
|
15
|
+
export interface ConnectionDetectionResult {
|
|
16
|
+
links: ExtractedLink[];
|
|
17
|
+
timings: ConnectionTimings;
|
|
18
|
+
}
|
|
19
|
+
export declare function detectConnections(project: Project, components: readonly EnrichedComponent[], options: ConnectionDetectionOptions, globMatcher: GlobMatcher): ConnectionDetectionResult;
|
|
10
20
|
//# sourceMappingURL=detect-connections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect-connections.d.ts","sourceRoot":"","sources":["../../../src/domain/connection-detection/detect-connections.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"detect-connections.d.ts","sourceRoot":"","sources":["../../../src/domain/connection-detection/detect-connections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAMrD,MAAM,WAAW,0BAA0B;IACzC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,OAAO,EAAE,iBAAiB,CAAA;CAC3B;AAaD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,SAAS,iBAAiB,EAAE,EACxC,OAAO,EAAE,0BAA0B,EACnC,WAAW,EAAE,WAAW,GACvB,yBAAyB,CAiC3B"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { performance } from 'node:perf_hooks';
|
|
1
2
|
import { ComponentIndex } from './component-index';
|
|
2
3
|
import { buildCallGraph } from './call-graph/build-call-graph';
|
|
4
|
+
import { detectPublishConnections } from './async-detection/detect-publish-connections';
|
|
5
|
+
import { detectSubscribeConnections } from './async-detection/detect-subscribe-connections';
|
|
3
6
|
function computeFilteredFilePaths(project, moduleGlobs, globMatcher) {
|
|
4
7
|
return project
|
|
5
8
|
.getSourceFiles()
|
|
@@ -7,10 +10,30 @@ function computeFilteredFilePaths(project, moduleGlobs, globMatcher) {
|
|
|
7
10
|
.filter((filePath) => moduleGlobs.some((glob) => globMatcher(filePath, glob)));
|
|
8
11
|
}
|
|
9
12
|
export function detectConnections(project, components, options, globMatcher) {
|
|
13
|
+
const totalStart = performance.now();
|
|
14
|
+
const setupStart = performance.now();
|
|
10
15
|
const componentIndex = new ComponentIndex(components);
|
|
11
16
|
const sourceFilePaths = computeFilteredFilePaths(project, options.moduleGlobs, globMatcher);
|
|
12
|
-
|
|
13
|
-
|
|
17
|
+
const setupMs = performance.now() - setupStart;
|
|
18
|
+
const strict = !options.allowIncomplete;
|
|
19
|
+
const callGraphStart = performance.now();
|
|
20
|
+
const syncLinks = buildCallGraph(project, components, componentIndex, {
|
|
21
|
+
strict,
|
|
14
22
|
sourceFilePaths,
|
|
15
23
|
});
|
|
24
|
+
const callGraphMs = performance.now() - callGraphStart;
|
|
25
|
+
const asyncStart = performance.now();
|
|
26
|
+
const publishLinks = detectPublishConnections(project, components, { strict });
|
|
27
|
+
const subscribeLinks = detectSubscribeConnections(components, { strict });
|
|
28
|
+
const asyncDetectionMs = performance.now() - asyncStart;
|
|
29
|
+
const totalMs = performance.now() - totalStart;
|
|
30
|
+
return {
|
|
31
|
+
links: [...syncLinks, ...publishLinks, ...subscribeLinks],
|
|
32
|
+
timings: {
|
|
33
|
+
callGraphMs,
|
|
34
|
+
asyncDetectionMs,
|
|
35
|
+
setupMs,
|
|
36
|
+
totalMs,
|
|
37
|
+
},
|
|
38
|
+
};
|
|
16
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enrich-components.d.ts","sourceRoot":"","sources":["../../../src/domain/value-extraction/enrich-components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAC2B,OAAO,EAC7C,MAAM,UAAU,CAAA;AAEjB,OAAO,KAAK,EACV,wBAAwB,EAUzB,MAAM,6CAA6C,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EAAE,WAAW,EAC5B,MAAM,mCAAmC,CAAA;AAY1C,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;AAEzD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACvC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,cAAc,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAA;CAC9B;
|
|
1
|
+
{"version":3,"file":"enrich-components.d.ts","sourceRoot":"","sources":["../../../src/domain/value-extraction/enrich-components.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAC2B,OAAO,EAC7C,MAAM,UAAU,CAAA;AAEjB,OAAO,KAAK,EACV,wBAAwB,EAUzB,MAAM,6CAA6C,CAAA;AACpD,OAAO,KAAK,EACV,cAAc,EAAE,WAAW,EAC5B,MAAM,mCAAmC,CAAA;AAY1C,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAA;AAEzD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACvC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,cAAc,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,iBAAiB,EAAE,CAAA;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAA;CAC9B;AA8RD,wBAAgB,gBAAgB,CAC9B,eAAe,EAAE,cAAc,EAAE,EACjC,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,GAChB,gBAAgB,CAclB"}
|
package/dist/shell/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export { resolveConfig, type ConfigLoader } from '../domain/config-resolution/re
|
|
|
4
4
|
export { ConfigLoaderRequiredError, MissingComponentRuleError, } from '../domain/config-resolution/config-resolution-errors';
|
|
5
5
|
export { evaluateLiteralRule, evaluateFromClassNameRule, evaluateFromMethodNameRule, evaluateFromFilePathRule, evaluateFromPropertyRule, evaluateFromDecoratorArgRule, evaluateFromDecoratorNameRule, evaluateFromGenericArgRule, evaluateFromMethodSignatureRule, evaluateFromConstructorParamsRule, evaluateFromParameterTypeRule, applyTransforms, ExtractionError, type ExtractionContext, type ExtractionResult, type ParameterInfo, type MethodSignature, } from '../domain/value-extraction';
|
|
6
6
|
export { matchesGlob } from '../platform/infra/glob-matching/minimatch-glob';
|
|
7
|
-
export { detectConnections, type ConnectionDetectionOptions, } from '../domain/connection-detection/detect-connections';
|
|
7
|
+
export { detectConnections, type ConnectionDetectionOptions, type ConnectionDetectionResult, type ConnectionTimings, } from '../domain/connection-detection/detect-connections';
|
|
8
8
|
export type { ExtractedLink } from '../domain/connection-detection/extracted-link';
|
|
9
9
|
export { ComponentIndex } from '../domain/connection-detection/component-index';
|
|
10
10
|
export { ConnectionDetectionError } from '../domain/connection-detection/connection-detection-error';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,GACjB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AACrF,OAAO,EACL,aAAa,EAAE,KAAK,YAAY,EACjC,MAAM,4CAA4C,CAAA;AACnD,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,+BAA+B,EAC/B,iCAAiC,EACjC,6BAA6B,EAC7B,eAAe,EACf,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,GACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,gDAAgD,CAAA;AAC5E,OAAO,EACL,iBAAiB,EACjB,KAAK,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shell/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,GACjB,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAA;AACrF,OAAO,EACL,aAAa,EAAE,KAAK,YAAY,EACjC,MAAM,4CAA4C,CAAA;AACnD,OAAO,EACL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,+BAA+B,EAC/B,iCAAiC,EACjC,6BAA6B,EAC7B,eAAe,EACf,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,GACrB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,gDAAgD,CAAA;AAC5E,OAAO,EACL,iBAAiB,EACjB,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,GACvB,MAAM,mDAAmD,CAAA;AAC1D,YAAY,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAA;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2DAA2D,CAAA;AACpG,OAAO,EACL,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,8CAA8C,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-fixtures.d.ts","sourceRoot":"","sources":["../src/test-fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAExB,aAAa,EACb,WAAW,EACX,aAAa,EACd,MAAM,6CAA6C,CAAA;
|
|
1
|
+
{"version":3,"file":"test-fixtures.d.ts","sourceRoot":"","sources":["../src/test-fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EAExB,aAAa,EACb,WAAW,EACX,aAAa,EACd,MAAM,6CAA6C,CAAA;AAmBpD,wBAAgB,oBAAoB,IAAI,wBAAwB,CAE/D;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,WAAW,GACvB,wBAAwB,CAU1B;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,aAAa,GAClB,wBAAwB,CAU1B;AAED,wBAAgB,yBAAyB,CAAC,UAAU,SAAc,GAAG,wBAAwB,CAK5F"}
|
package/dist/test-fixtures.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@living-architecture/riviere-extract-ts",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"minimatch": "^10.0.1",
|
|
26
26
|
"ts-morph": "^24.0.0",
|
|
27
|
-
"@living-architecture/riviere-extract-config": "0.4.
|
|
28
|
-
"@living-architecture/riviere-schema": "0.5.
|
|
27
|
+
"@living-architecture/riviere-extract-config": "0.4.3",
|
|
28
|
+
"@living-architecture/riviere-schema": "0.5.3"
|
|
29
29
|
}
|
|
30
30
|
}
|