@carlonicora/nestjs-neo4jsonapi 2.3.1 → 2.4.1
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/agents/common/usage-attribution.d.ts +218 -0
- package/dist/agents/common/usage-attribution.d.ts.map +1 -0
- package/dist/agents/common/usage-attribution.js +235 -0
- package/dist/agents/common/usage-attribution.js.map +1 -0
- package/dist/agents/community.summariser/services/community.summariser.service.d.ts.map +1 -1
- package/dist/agents/community.summariser/services/community.summariser.service.js +13 -1
- package/dist/agents/community.summariser/services/community.summariser.service.js.map +1 -1
- package/dist/agents/contextualiser/contexts/contextualiser.context.d.ts +24 -1
- package/dist/agents/contextualiser/contexts/contextualiser.context.d.ts.map +1 -1
- package/dist/agents/contextualiser/contexts/contextualiser.context.js +32 -0
- package/dist/agents/contextualiser/contexts/contextualiser.context.js.map +1 -1
- package/dist/agents/contextualiser/factories/contextualiser.context.factory.d.ts +7 -0
- package/dist/agents/contextualiser/factories/contextualiser.context.factory.d.ts.map +1 -1
- package/dist/agents/contextualiser/factories/contextualiser.context.factory.js +5 -0
- package/dist/agents/contextualiser/factories/contextualiser.context.factory.js.map +1 -1
- package/dist/agents/contextualiser/nodes/atomicfacts.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/atomicfacts.node.service.js +4 -0
- package/dist/agents/contextualiser/nodes/atomicfacts.node.service.js.map +1 -1
- package/dist/agents/contextualiser/nodes/chunk.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/chunk.node.service.js +4 -0
- package/dist/agents/contextualiser/nodes/chunk.node.service.js.map +1 -1
- package/dist/agents/contextualiser/nodes/chunk.vector.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/chunk.vector.node.service.js +15 -0
- package/dist/agents/contextualiser/nodes/chunk.vector.node.service.js.map +1 -1
- package/dist/agents/contextualiser/nodes/keyconcepts.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/keyconcepts.node.service.js +11 -0
- package/dist/agents/contextualiser/nodes/keyconcepts.node.service.js.map +1 -1
- package/dist/agents/contextualiser/nodes/question.refiner.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/question.refiner.node.service.js +4 -0
- package/dist/agents/contextualiser/nodes/question.refiner.node.service.js.map +1 -1
- package/dist/agents/contextualiser/nodes/rational.node.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/nodes/rational.node.service.js +4 -0
- package/dist/agents/contextualiser/nodes/rational.node.service.js.map +1 -1
- package/dist/agents/contextualiser/services/contextualiser.service.d.ts +7 -0
- package/dist/agents/contextualiser/services/contextualiser.service.d.ts.map +1 -1
- package/dist/agents/contextualiser/services/contextualiser.service.js +17 -5
- package/dist/agents/contextualiser/services/contextualiser.service.js.map +1 -1
- package/dist/agents/drift/contexts/drift.context.d.ts +25 -1
- package/dist/agents/drift/contexts/drift.context.d.ts.map +1 -1
- package/dist/agents/drift/contexts/drift.context.js +32 -0
- package/dist/agents/drift/contexts/drift.context.js.map +1 -1
- package/dist/agents/drift/nodes/followup.node.service.d.ts.map +1 -1
- package/dist/agents/drift/nodes/followup.node.service.js +4 -0
- package/dist/agents/drift/nodes/followup.node.service.js.map +1 -1
- package/dist/agents/drift/nodes/hyde.node.service.d.ts.map +1 -1
- package/dist/agents/drift/nodes/hyde.node.service.js +9 -1
- package/dist/agents/drift/nodes/hyde.node.service.js.map +1 -1
- package/dist/agents/drift/nodes/primer.answer.node.service.d.ts.map +1 -1
- package/dist/agents/drift/nodes/primer.answer.node.service.js +4 -0
- package/dist/agents/drift/nodes/primer.answer.node.service.js.map +1 -1
- package/dist/agents/drift/nodes/synthesis.node.service.d.ts.map +1 -1
- package/dist/agents/drift/nodes/synthesis.node.service.js +4 -0
- package/dist/agents/drift/nodes/synthesis.node.service.js.map +1 -1
- package/dist/agents/drift/services/drift.search.service.d.ts +9 -0
- package/dist/agents/drift/services/drift.search.service.d.ts.map +1 -1
- package/dist/agents/drift/services/drift.search.service.js +22 -5
- package/dist/agents/drift/services/drift.search.service.js.map +1 -1
- package/dist/agents/graph/services/graph.search.service.d.ts.map +1 -1
- package/dist/agents/graph/services/graph.search.service.js +10 -1
- package/dist/agents/graph/services/graph.search.service.js.map +1 -1
- package/dist/agents/graph/tools/tool.factory.d.ts +6 -0
- package/dist/agents/graph/tools/tool.factory.d.ts.map +1 -1
- package/dist/agents/graph/tools/tool.factory.js.map +1 -1
- package/dist/agents/index.d.ts +1 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/operator/contexts/operator.context.d.ts +37 -1
- package/dist/agents/operator/contexts/operator.context.d.ts.map +1 -1
- package/dist/agents/operator/contexts/operator.context.js +8 -0
- package/dist/agents/operator/contexts/operator.context.js.map +1 -1
- package/dist/agents/operator/interfaces/operator.tool.interface.d.ts +8 -0
- package/dist/agents/operator/interfaces/operator.tool.interface.d.ts.map +1 -1
- package/dist/agents/operator/interfaces/operator.tool.interface.js.map +1 -1
- package/dist/agents/operator/services/operator.service.d.ts +8 -0
- package/dist/agents/operator/services/operator.service.d.ts.map +1 -1
- package/dist/agents/operator/services/operator.service.js +29 -0
- package/dist/agents/operator/services/operator.service.js.map +1 -1
- package/dist/agents/operator/tools/operator.tool.registry.d.ts.map +1 -1
- package/dist/agents/operator/tools/operator.tool.registry.js +2 -1
- package/dist/agents/operator/tools/operator.tool.registry.js.map +1 -1
- package/dist/agents/operator/tools/search-communities.tool.d.ts +8 -2
- package/dist/agents/operator/tools/search-communities.tool.d.ts.map +1 -1
- package/dist/agents/operator/tools/search-communities.tool.js +16 -4
- package/dist/agents/operator/tools/search-communities.tool.js.map +1 -1
- package/dist/agents/operator/tools/search-documents.tool.d.ts.map +1 -1
- package/dist/agents/operator/tools/search-documents.tool.js +5 -0
- package/dist/agents/operator/tools/search-documents.tool.js.map +1 -1
- package/dist/agents/responder/contexts/responder.context.d.ts +31 -0
- package/dist/agents/responder/contexts/responder.context.d.ts.map +1 -1
- package/dist/agents/responder/contexts/responder.context.js +8 -0
- package/dist/agents/responder/contexts/responder.context.js.map +1 -1
- package/dist/agents/responder/factories/responder.context.factory.d.ts +4 -0
- package/dist/agents/responder/factories/responder.context.factory.d.ts.map +1 -1
- package/dist/agents/responder/factories/responder.context.factory.js +2 -0
- package/dist/agents/responder/factories/responder.context.factory.js.map +1 -1
- package/dist/agents/responder/nodes/graph.node.service.d.ts +6 -0
- package/dist/agents/responder/nodes/graph.node.service.d.ts.map +1 -1
- package/dist/agents/responder/nodes/graph.node.service.js +20 -0
- package/dist/agents/responder/nodes/graph.node.service.js.map +1 -1
- package/dist/agents/responder/nodes/planner.node.service.d.ts.map +1 -1
- package/dist/agents/responder/nodes/planner.node.service.js +9 -0
- package/dist/agents/responder/nodes/planner.node.service.js.map +1 -1
- package/dist/agents/responder/nodes/responder.answer.node.service.d.ts.map +1 -1
- package/dist/agents/responder/nodes/responder.answer.node.service.js +9 -0
- package/dist/agents/responder/nodes/responder.answer.node.service.js.map +1 -1
- package/dist/agents/responder/services/responder.service.d.ts +16 -0
- package/dist/agents/responder/services/responder.service.d.ts.map +1 -1
- package/dist/agents/responder/services/responder.service.js +29 -5
- package/dist/agents/responder/services/responder.service.js.map +1 -1
- package/dist/agents/summariser/services/summariser.service.d.ts +7 -0
- package/dist/agents/summariser/services/summariser.service.d.ts.map +1 -1
- package/dist/agents/summariser/services/summariser.service.js +15 -3
- package/dist/agents/summariser/services/summariser.service.js.map +1 -1
- package/dist/common/helpers/index.d.ts +1 -0
- package/dist/common/helpers/index.d.ts.map +1 -1
- package/dist/common/helpers/index.js +1 -0
- package/dist/common/helpers/index.js.map +1 -1
- package/dist/common/helpers/map-with-concurrency.d.ts +23 -0
- package/dist/common/helpers/map-with-concurrency.d.ts.map +1 -0
- package/dist/common/helpers/map-with-concurrency.js +60 -0
- package/dist/common/helpers/map-with-concurrency.js.map +1 -0
- package/dist/common/tokens.d.ts +2 -1
- package/dist/common/tokens.d.ts.map +1 -1
- package/dist/common/tokens.js +2 -1
- package/dist/common/tokens.js.map +1 -1
- package/dist/config/base.config.d.ts +19 -0
- package/dist/config/base.config.d.ts.map +1 -1
- package/dist/config/base.config.js +30 -3
- package/dist/config/base.config.js.map +1 -1
- package/dist/config/interfaces/config.ai.interface.d.ts +10 -1
- package/dist/config/interfaces/config.ai.interface.d.ts.map +1 -1
- package/dist/config/interfaces/config.chunk.queues.interface.d.ts +13 -0
- package/dist/config/interfaces/config.chunk.queues.interface.d.ts.map +1 -1
- package/dist/config/interfaces/config.credits.interface.d.ts +1 -1
- package/dist/core/llm/services/audio.llm.service.d.ts +70 -1
- package/dist/core/llm/services/audio.llm.service.d.ts.map +1 -1
- package/dist/core/llm/services/audio.llm.service.js +118 -3
- package/dist/core/llm/services/audio.llm.service.js.map +1 -1
- package/dist/core/llm/services/document-ai.service.d.ts +6 -0
- package/dist/core/llm/services/document-ai.service.d.ts.map +1 -1
- package/dist/core/llm/services/document-ai.service.js +1 -0
- package/dist/core/llm/services/document-ai.service.js.map +1 -1
- package/dist/core/llm/services/embedder.service.d.ts +105 -0
- package/dist/core/llm/services/embedder.service.d.ts.map +1 -1
- package/dist/core/llm/services/embedder.service.js +237 -7
- package/dist/core/llm/services/embedder.service.js.map +1 -1
- package/dist/core/llm/services/llm.service.d.ts +103 -6
- package/dist/core/llm/services/llm.service.d.ts.map +1 -1
- package/dist/core/llm/services/llm.service.js +570 -148
- package/dist/core/llm/services/llm.service.js.map +1 -1
- package/dist/core/llm/services/model.service.d.ts +25 -0
- package/dist/core/llm/services/model.service.d.ts.map +1 -1
- package/dist/core/llm/services/model.service.js +76 -4
- package/dist/core/llm/services/model.service.js.map +1 -1
- package/dist/core/llm/utils/repair-truncated-json.d.ts +29 -0
- package/dist/core/llm/utils/repair-truncated-json.d.ts.map +1 -0
- package/dist/core/llm/utils/repair-truncated-json.js +111 -0
- package/dist/core/llm/utils/repair-truncated-json.js.map +1 -0
- package/dist/foundations/assistant/services/assistant.service.d.ts.map +1 -1
- package/dist/foundations/assistant/services/assistant.service.js +12 -0
- package/dist/foundations/assistant/services/assistant.service.js.map +1 -1
- package/dist/foundations/atomicfact/services/atomicfact.service.d.ts +7 -0
- package/dist/foundations/atomicfact/services/atomicfact.service.d.ts.map +1 -1
- package/dist/foundations/atomicfact/services/atomicfact.service.js +6 -0
- package/dist/foundations/atomicfact/services/atomicfact.service.js.map +1 -1
- package/dist/foundations/auth/services/auth.google.service.d.ts.map +1 -1
- package/dist/foundations/auth/services/auth.google.service.js +3 -1
- package/dist/foundations/auth/services/auth.google.service.js.map +1 -1
- package/dist/foundations/chunk/processors/chunk.processor.d.ts.map +1 -1
- package/dist/foundations/chunk/processors/chunk.processor.js +7 -1
- package/dist/foundations/chunk/processors/chunk.processor.js.map +1 -1
- package/dist/foundations/chunk/repositories/chunk.repository.d.ts +90 -2
- package/dist/foundations/chunk/repositories/chunk.repository.d.ts.map +1 -1
- package/dist/foundations/chunk/repositories/chunk.repository.js +205 -31
- package/dist/foundations/chunk/repositories/chunk.repository.js.map +1 -1
- package/dist/foundations/chunk/services/chunk.service.d.ts.map +1 -1
- package/dist/foundations/chunk/services/chunk.service.js +50 -1
- package/dist/foundations/chunk/services/chunk.service.js.map +1 -1
- package/dist/foundations/chunker/chunker.module.d.ts.map +1 -1
- package/dist/foundations/chunker/chunker.module.js +4 -1
- package/dist/foundations/chunker/chunker.module.js.map +1 -1
- package/dist/foundations/chunker/services/chunker.service.d.ts +57 -1
- package/dist/foundations/chunker/services/chunker.service.d.ts.map +1 -1
- package/dist/foundations/chunker/services/chunker.service.js +207 -16
- package/dist/foundations/chunker/services/chunker.service.js.map +1 -1
- package/dist/foundations/chunker/services/types/pdf.service.d.ts +42 -1
- package/dist/foundations/chunker/services/types/pdf.service.d.ts.map +1 -1
- package/dist/foundations/chunker/services/types/pdf.service.js +111 -22
- package/dist/foundations/chunker/services/types/pdf.service.js.map +1 -1
- package/dist/foundations/chunker/services/types/semanticsplitter.service.d.ts.map +1 -1
- package/dist/foundations/chunker/services/types/semanticsplitter.service.js +24 -3
- package/dist/foundations/chunker/services/types/semanticsplitter.service.js.map +1 -1
- package/dist/foundations/company/repositories/company.repository.d.ts +1 -1
- package/dist/foundations/company/repositories/company.repository.d.ts.map +1 -1
- package/dist/foundations/company/repositories/company.repository.js +31 -14
- package/dist/foundations/company/repositories/company.repository.js.map +1 -1
- package/dist/foundations/how-to/processors/how-to.processor.d.ts.map +1 -1
- package/dist/foundations/how-to/processors/how-to.processor.js +20 -7
- package/dist/foundations/how-to/processors/how-to.processor.js.map +1 -1
- package/dist/foundations/keyconcept/repositories/keyconcept.repository.d.ts +25 -1
- package/dist/foundations/keyconcept/repositories/keyconcept.repository.d.ts.map +1 -1
- package/dist/foundations/keyconcept/repositories/keyconcept.repository.js +38 -2
- package/dist/foundations/keyconcept/repositories/keyconcept.repository.js.map +1 -1
- package/dist/foundations/keyconcept/services/keyconcept.service.d.ts +5 -0
- package/dist/foundations/keyconcept/services/keyconcept.service.d.ts.map +1 -1
- package/dist/foundations/keyconcept/services/keyconcept.service.js +4 -0
- package/dist/foundations/keyconcept/services/keyconcept.service.js.map +1 -1
- package/dist/foundations/tokenusage/entities/tokenusage.js +1 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts +4 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.d.ts.map +1 -1
- package/dist/foundations/tokenusage/enums/tokenusage.type.js +3 -0
- package/dist/foundations/tokenusage/enums/tokenusage.type.js.map +1 -1
- package/dist/foundations/tokenusage/repositories/tokenusage.admin.repository.js +3 -3
- package/dist/foundations/tokenusage/repositories/tokenusage.repository.js +2 -2
- package/dist/foundations/tokenusage/services/tokenusage.service.d.ts +6 -1
- package/dist/foundations/tokenusage/services/tokenusage.service.d.ts.map +1 -1
- package/dist/foundations/tokenusage/services/tokenusage.service.js +7 -2
- package/dist/foundations/tokenusage/services/tokenusage.service.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,7 +3,7 @@ import { ClsService } from "nestjs-cls";
|
|
|
3
3
|
import { AiStatus } from "../../../common/enums/ai.status";
|
|
4
4
|
import { AiSourceQueryProvider } from "../../../common/repositories/ai-source-query.provider";
|
|
5
5
|
import { DataLimits } from "../../../common/types/data.limits";
|
|
6
|
-
import { EmbedderService } from "../../../core";
|
|
6
|
+
import { EmbedderAttribution, EmbedderService } from "../../../core";
|
|
7
7
|
import { ModelService } from "../../../core/llm/services/model.service";
|
|
8
8
|
import { Neo4jService } from "../../../core/neo4j/services/neo4j.service";
|
|
9
9
|
import { SecurityService } from "../../../core/security/services/security.service";
|
|
@@ -15,6 +15,14 @@ export declare class ChunkRepository implements OnModuleInit {
|
|
|
15
15
|
private readonly clsService;
|
|
16
16
|
private readonly securityService;
|
|
17
17
|
private readonly aiSourceQuery;
|
|
18
|
+
/**
|
|
19
|
+
* Chunks embedded (and written) per round-trip in `enrichContentAndEmbedBatch`.
|
|
20
|
+
* A whole document's worth of vectors held at once is what pushed the worker past
|
|
21
|
+
* its heap on large uploads: 760 pages ≈ 2.5k chunks × 3072 floats. Slicing bounds
|
|
22
|
+
* the peak to one slice's vectors while keeping batching's latency win (one embedder
|
|
23
|
+
* call per 50 chunks, not per chunk).
|
|
24
|
+
*/
|
|
25
|
+
private static readonly EMBED_SLICE;
|
|
18
26
|
constructor(neo4j: Neo4jService, modelService: ModelService, embedderService: EmbedderService, clsService: ClsService, securityService: SecurityService, aiSourceQuery: AiSourceQueryProvider);
|
|
19
27
|
onModuleInit(): Promise<void>;
|
|
20
28
|
recreateVectorIndex(): Promise<void>;
|
|
@@ -23,9 +31,17 @@ export declare class ChunkRepository implements OnModuleInit {
|
|
|
23
31
|
chunkId: string;
|
|
24
32
|
embedding: number[];
|
|
25
33
|
}): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* `attribution` is OPTIONAL and opt-in: this is a QUERY-time embedding, so
|
|
36
|
+
* the repository has no entity of its own to bill it to. The retrieval scope
|
|
37
|
+
* lives with the caller (the contextualiser knows which content the run is
|
|
38
|
+
* bound to), which is why it is passed down rather than derived here. Absent,
|
|
39
|
+
* `EmbedderService.persistUsage` records nothing.
|
|
40
|
+
*/
|
|
26
41
|
findPotentialChunks(params: {
|
|
27
42
|
question: string;
|
|
28
43
|
dataLimits: DataLimits;
|
|
44
|
+
attribution?: EmbedderAttribution;
|
|
29
45
|
}): Promise<Chunk[]>;
|
|
30
46
|
private findChunksByIdsOrdered;
|
|
31
47
|
findParentName(params: {
|
|
@@ -41,6 +57,24 @@ export declare class ChunkRepository implements OnModuleInit {
|
|
|
41
57
|
findChunkById(params: {
|
|
42
58
|
chunkId: string;
|
|
43
59
|
}): Promise<Chunk>;
|
|
60
|
+
/**
|
|
61
|
+
* Pipeline hydration of a content node's chunks — deliberately WITHOUT `embedding`.
|
|
62
|
+
*
|
|
63
|
+
* A :Chunk node carries a full embedding vector (3072 floats ≈ 24 KB raw, far more
|
|
64
|
+
* once the driver has boxed it). Returning the whole node made every pipeline guard
|
|
65
|
+
* pull the entire document's vectors into the worker heap even though NO consumer
|
|
66
|
+
* reads `chunk.embedding` — that is what killed the worker on a 760-page matrix.
|
|
67
|
+
*
|
|
68
|
+
* The rows are therefore returned as an explicit `{ labels, properties }` map instead
|
|
69
|
+
* of a Node: `EntityFactory.createOrMerge` treats any column with a `labels` key as a
|
|
70
|
+
* node and maps `data.properties`, so a hand-built map of the same shape hydrates
|
|
71
|
+
* identically (a bare map projection would NOT — it has no `labels`/`properties` and
|
|
72
|
+
* the factory would drop the row).
|
|
73
|
+
*
|
|
74
|
+
* The projected property list is exactly the descriptor's own fields (minus
|
|
75
|
+
* `embedding`) plus the `Entity` base fields, so nothing is lost: the descriptor's
|
|
76
|
+
* auto-generated mapper only ever reads those keys anyway.
|
|
77
|
+
*/
|
|
44
78
|
findChunks(params: {
|
|
45
79
|
id: string;
|
|
46
80
|
nodeType: string;
|
|
@@ -63,15 +97,69 @@ export declare class ChunkRepository implements OnModuleInit {
|
|
|
63
97
|
chunkId: string;
|
|
64
98
|
dates: string;
|
|
65
99
|
}): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* `attribution` is OPTIONAL (added second, positionally, so existing callers
|
|
102
|
+
* keep compiling). One usage record is written per embedded slice — see
|
|
103
|
+
* `EmbedderService.persistUsage`. That is honest here because every item in
|
|
104
|
+
* the batch is a chunk of the SAME parent entity: the only caller,
|
|
105
|
+
* `ChunkService.propagateAndEmbedDates`, builds `items` from
|
|
106
|
+
* `findChunks({ id, nodeType })`.
|
|
107
|
+
*/
|
|
66
108
|
enrichContentAndEmbedBatch(items: {
|
|
67
109
|
chunkId: string;
|
|
68
110
|
enrichedContent: string;
|
|
69
111
|
propagatedDates?: string;
|
|
70
|
-
}[]): Promise<void>;
|
|
112
|
+
}[], attribution?: EmbedderAttribution): Promise<void>;
|
|
71
113
|
markChunksCompleted(params: {
|
|
72
114
|
id: string;
|
|
73
115
|
nodeType: string;
|
|
74
116
|
}): Promise<void>;
|
|
117
|
+
/**
|
|
118
|
+
* Count of chunks not yet completed for a content node. Replaces full hydration in
|
|
119
|
+
* pipeline guards: they only ever asked "are any chunks still pending?", and hydrating
|
|
120
|
+
* every chunk (embedding vectors included) to answer it is what made the guard
|
|
121
|
+
* quadratic in a document's chunk count.
|
|
122
|
+
*
|
|
123
|
+
* Returns a scalar, so it cannot go through `readOne`/`readMany` (those map entity
|
|
124
|
+
* columns). Same raw-scalar read as `TokenUsageRepository.findUsageSummary` — the
|
|
125
|
+
* package's precedent for non-entity aggregate reads.
|
|
126
|
+
*/
|
|
127
|
+
countChunksInProgress(params: {
|
|
128
|
+
id: string;
|
|
129
|
+
nodeType: string;
|
|
130
|
+
}): Promise<number>;
|
|
131
|
+
/**
|
|
132
|
+
* Single-winner claim on a content node's post-chunking pipeline.
|
|
133
|
+
*
|
|
134
|
+
* `countChunksInProgress` alone CANNOT gate finalisation. It answers "are any chunks
|
|
135
|
+
* still pending?", never "has finalisation already run?", and `ChunkService.generateGraph`
|
|
136
|
+
* enqueues one finalise job per chunk — so a 25-chunk document gets 25 jobs. Once the last
|
|
137
|
+
* chunk lands, every remaining queued job passes a pending-count check and re-runs the whole
|
|
138
|
+
* pipeline (measured 2026-08-12: summariser ran 25× on one document, 100.91 credits; ~70% of
|
|
139
|
+
* that run's spend was duplicated work).
|
|
140
|
+
*
|
|
141
|
+
* The `SET n.finalisationClaimedAt = n.finalisationClaimedAt` is a deliberate no-op write: it
|
|
142
|
+
* takes the node's write lock BEFORE the predicate is evaluated. A concurrent claimer blocks
|
|
143
|
+
* there, and re-reads the committed value afterwards (Neo4j reads are read-committed, not
|
|
144
|
+
* repeatable), so it sees the winner's timestamp and its `WHERE` fails. Without the lock both
|
|
145
|
+
* transactions evaluate the predicate on the pre-write state and both claim.
|
|
146
|
+
*
|
|
147
|
+
* Re-ingestion re-arms the claim via `clearFinalisationClaim` in `ChunkService.createChunks`.
|
|
148
|
+
*/
|
|
149
|
+
claimContentFinalisation(params: {
|
|
150
|
+
id: string;
|
|
151
|
+
nodeType: string;
|
|
152
|
+
}): Promise<boolean>;
|
|
153
|
+
/**
|
|
154
|
+
* Re-arms `claimContentFinalisation` for a content node whose chunks are being (re)built.
|
|
155
|
+
* Called from `ChunkService.createChunks`, the single entry point every ingestion and
|
|
156
|
+
* rebuild path goes through — without it a re-ingested document would keep the stale claim
|
|
157
|
+
* and skip finalisation silently.
|
|
158
|
+
*/
|
|
159
|
+
clearFinalisationClaim(params: {
|
|
160
|
+
id: string;
|
|
161
|
+
nodeType: string;
|
|
162
|
+
}): Promise<void>;
|
|
75
163
|
getChunksInProgress(params: {
|
|
76
164
|
id: string;
|
|
77
165
|
nodeType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"chunk.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
+
var ChunkRepository_1;
|
|
14
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
16
|
exports.ChunkRepository = void 0;
|
|
16
17
|
const common_1 = require("@nestjs/common");
|
|
17
18
|
const nestjs_cls_1 = require("nestjs-cls");
|
|
19
|
+
const usage_attribution_1 = require("../../../agents/common/usage-attribution");
|
|
18
20
|
const ai_status_1 = require("../../../common/enums/ai.status");
|
|
21
|
+
const unwrap_neo4j_integer_1 = require("../../../common/helpers/unwrap-neo4j-integer");
|
|
19
22
|
const ai_source_query_provider_1 = require("../../../common/repositories/ai-source-query.provider");
|
|
20
23
|
const core_1 = require("../../../core");
|
|
21
24
|
const model_service_1 = require("../../../core/llm/services/model.service");
|
|
@@ -24,7 +27,7 @@ const security_service_1 = require("../../../core/security/services/security.ser
|
|
|
24
27
|
const chunk_entity_1 = require("../../chunk/entities/chunk.entity");
|
|
25
28
|
const chunk_meta_1 = require("../entities/chunk.meta");
|
|
26
29
|
const reciprocal_rank_fusion_1 = require("../services/reciprocal-rank-fusion");
|
|
27
|
-
let ChunkRepository = class ChunkRepository {
|
|
30
|
+
let ChunkRepository = ChunkRepository_1 = class ChunkRepository {
|
|
28
31
|
constructor(neo4j, modelService, embedderService, clsService, securityService, aiSourceQuery) {
|
|
29
32
|
this.neo4j = neo4j;
|
|
30
33
|
this.modelService = modelService;
|
|
@@ -90,8 +93,18 @@ let ChunkRepository = class ChunkRepository {
|
|
|
90
93
|
},
|
|
91
94
|
});
|
|
92
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* `attribution` is OPTIONAL and opt-in: this is a QUERY-time embedding, so
|
|
98
|
+
* the repository has no entity of its own to bill it to. The retrieval scope
|
|
99
|
+
* lives with the caller (the contextualiser knows which content the run is
|
|
100
|
+
* bound to), which is why it is passed down rather than derived here. Absent,
|
|
101
|
+
* `EmbedderService.persistUsage` records nothing.
|
|
102
|
+
*/
|
|
93
103
|
async findPotentialChunks(params) {
|
|
94
|
-
const queryEmbedding = await this.embedderService.vectoriseText({
|
|
104
|
+
const queryEmbedding = await this.embedderService.vectoriseText({
|
|
105
|
+
text: params.question,
|
|
106
|
+
attribution: params.attribution,
|
|
107
|
+
});
|
|
95
108
|
// Lucene special-character escape so user questions can't break the fulltext query.
|
|
96
109
|
const term = params.question.replace(/([+\-!(){}\[\]^"~*?:\\\/]|&&|\|\|)/g, "\\$1");
|
|
97
110
|
// The access-scoped id-set both retrieval branches are filtered to.
|
|
@@ -200,6 +213,24 @@ let ChunkRepository = class ChunkRepository {
|
|
|
200
213
|
`;
|
|
201
214
|
return this.neo4j.readOne(query);
|
|
202
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* Pipeline hydration of a content node's chunks — deliberately WITHOUT `embedding`.
|
|
218
|
+
*
|
|
219
|
+
* A :Chunk node carries a full embedding vector (3072 floats ≈ 24 KB raw, far more
|
|
220
|
+
* once the driver has boxed it). Returning the whole node made every pipeline guard
|
|
221
|
+
* pull the entire document's vectors into the worker heap even though NO consumer
|
|
222
|
+
* reads `chunk.embedding` — that is what killed the worker on a 760-page matrix.
|
|
223
|
+
*
|
|
224
|
+
* The rows are therefore returned as an explicit `{ labels, properties }` map instead
|
|
225
|
+
* of a Node: `EntityFactory.createOrMerge` treats any column with a `labels` key as a
|
|
226
|
+
* node and maps `data.properties`, so a hand-built map of the same shape hydrates
|
|
227
|
+
* identically (a bare map projection would NOT — it has no `labels`/`properties` and
|
|
228
|
+
* the factory would drop the row).
|
|
229
|
+
*
|
|
230
|
+
* The projected property list is exactly the descriptor's own fields (minus
|
|
231
|
+
* `embedding`) plus the `Entity` base fields, so nothing is lost: the descriptor's
|
|
232
|
+
* auto-generated mapper only ever reads those keys anyway.
|
|
233
|
+
*/
|
|
203
234
|
async findChunks(params) {
|
|
204
235
|
const query = this.neo4j.initQuery({ serialiser: chunk_entity_1.ChunkDescriptor.model });
|
|
205
236
|
query.queryParams = {
|
|
@@ -207,15 +238,40 @@ let ChunkRepository = class ChunkRepository {
|
|
|
207
238
|
id: params.id,
|
|
208
239
|
};
|
|
209
240
|
query.query += `
|
|
210
|
-
MATCH (
|
|
211
|
-
|
|
212
|
-
ORDER BY
|
|
241
|
+
MATCH (:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunkNode:Chunk)
|
|
242
|
+
WITH chunkNode
|
|
243
|
+
ORDER BY chunkNode.position
|
|
244
|
+
RETURN {
|
|
245
|
+
labels: labels(chunkNode),
|
|
246
|
+
properties: chunkNode {
|
|
247
|
+
.id,
|
|
248
|
+
.content,
|
|
249
|
+
.heading,
|
|
250
|
+
.position,
|
|
251
|
+
.aiStatus,
|
|
252
|
+
.nodeId,
|
|
253
|
+
.nodeType,
|
|
254
|
+
.imagePath,
|
|
255
|
+
.dates,
|
|
256
|
+
.propagatedDates,
|
|
257
|
+
.createdAt,
|
|
258
|
+
.updatedAt
|
|
259
|
+
}
|
|
260
|
+
} AS chunk
|
|
213
261
|
`;
|
|
214
262
|
return this.neo4j.readMany(query);
|
|
215
263
|
}
|
|
216
264
|
async createChunk(params) {
|
|
217
265
|
const query = this.neo4j.initQuery();
|
|
218
|
-
|
|
266
|
+
// Ingestion-time embedding: the chunk being created belongs to `nodeId`, so
|
|
267
|
+
// the spend is billed to that entity. `nodeType` is already the Neo4j label
|
|
268
|
+
// the Cypher below interpolates; `buildEmbedderAttribution` normalises it
|
|
269
|
+
// through the registry so a caller holding the JSON:API type still bills to
|
|
270
|
+
// the label the `USED_FOR` edge is matched on.
|
|
271
|
+
const vector = await this.embedderService.vectoriseText({
|
|
272
|
+
text: params.content,
|
|
273
|
+
attribution: (0, usage_attribution_1.buildEmbedderAttribution)({ entityId: params.nodeId, entityIdentifier: params.nodeType }),
|
|
274
|
+
});
|
|
219
275
|
query.queryParams = {
|
|
220
276
|
...query.queryParams,
|
|
221
277
|
id: params.id,
|
|
@@ -283,40 +339,150 @@ let ChunkRepository = class ChunkRepository {
|
|
|
283
339
|
`;
|
|
284
340
|
await this.neo4j.writeOne(query);
|
|
285
341
|
}
|
|
286
|
-
|
|
342
|
+
/**
|
|
343
|
+
* `attribution` is OPTIONAL (added second, positionally, so existing callers
|
|
344
|
+
* keep compiling). One usage record is written per embedded slice — see
|
|
345
|
+
* `EmbedderService.persistUsage`. That is honest here because every item in
|
|
346
|
+
* the batch is a chunk of the SAME parent entity: the only caller,
|
|
347
|
+
* `ChunkService.propagateAndEmbedDates`, builds `items` from
|
|
348
|
+
* `findChunks({ id, nodeType })`.
|
|
349
|
+
*/
|
|
350
|
+
async enrichContentAndEmbedBatch(items, attribution) {
|
|
351
|
+
// Also the zero-token guard: an empty batch embeds nothing, and an operation
|
|
352
|
+
// that records ZERO tokens must record NOTHING. `persistUsage` has no
|
|
353
|
+
// zero-token guard of its own, so returning here is what prevents a
|
|
354
|
+
// 0-token/0-cost row now that this site supplies an attribution.
|
|
287
355
|
if (items.length === 0)
|
|
288
356
|
return;
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
357
|
+
for (let start = 0; start < items.length; start += ChunkRepository_1.EMBED_SLICE) {
|
|
358
|
+
// Everything below is scoped to this iteration, so the previous slice's vectors
|
|
359
|
+
// and rows become unreachable as soon as the next slice starts.
|
|
360
|
+
const slice = items.slice(start, start + ChunkRepository_1.EMBED_SLICE);
|
|
361
|
+
// One Azure round-trip per slice — per-call latency dominates batch size, so
|
|
362
|
+
// embedding chunks individually (vectoriseText per chunk) is far slower.
|
|
363
|
+
// RateLimitedEmbedder.embedDocuments splits internally if the slice exceeds maxBatchTokens.
|
|
364
|
+
// `attribution` is optional: without it the embedder records no usage (opt-in by design).
|
|
365
|
+
// Attribution is forwarded per slice: each slice's usage record carries its own
|
|
366
|
+
// token count, so the totals are identical to the single-batch version.
|
|
367
|
+
const vectors = await this.embedderService.vectoriseTextBatch(slice.map((item) => item.enrichedContent), attribution);
|
|
368
|
+
const rows = slice.map((item, index) => ({
|
|
369
|
+
chunkId: item.chunkId,
|
|
370
|
+
enrichedContent: item.enrichedContent,
|
|
371
|
+
vector: vectors[index],
|
|
372
|
+
propagatedDates: item.propagatedDates ?? null,
|
|
373
|
+
}));
|
|
374
|
+
const query = this.neo4j.initQuery();
|
|
375
|
+
query.queryParams = {
|
|
376
|
+
...query.queryParams,
|
|
377
|
+
rows,
|
|
378
|
+
};
|
|
379
|
+
query.query = `
|
|
380
|
+
UNWIND $rows AS row
|
|
381
|
+
MATCH (chunk:Chunk {id: row.chunkId})
|
|
382
|
+
SET chunk.content = row.enrichedContent,
|
|
383
|
+
chunk.embedding = row.vector,
|
|
384
|
+
chunk.updatedAt = datetime(),
|
|
385
|
+
chunk.propagatedDates = row.propagatedDates
|
|
386
|
+
`;
|
|
387
|
+
await this.neo4j.writeOne(query);
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
async markChunksCompleted(params) {
|
|
391
|
+
const query = this.neo4j.initQuery();
|
|
392
|
+
query.queryParams = { ...query.queryParams, id: params.id, aiStatus: ai_status_1.AiStatus.Completed };
|
|
393
|
+
query.query += `
|
|
394
|
+
MATCH (nodeType:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
|
|
395
|
+
SET chunk.aiStatus = $aiStatus, chunk.updatedAt = datetime()
|
|
396
|
+
`;
|
|
397
|
+
await this.neo4j.writeOne(query);
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* Count of chunks not yet completed for a content node. Replaces full hydration in
|
|
401
|
+
* pipeline guards: they only ever asked "are any chunks still pending?", and hydrating
|
|
402
|
+
* every chunk (embedding vectors included) to answer it is what made the guard
|
|
403
|
+
* quadratic in a document's chunk count.
|
|
404
|
+
*
|
|
405
|
+
* Returns a scalar, so it cannot go through `readOne`/`readMany` (those map entity
|
|
406
|
+
* columns). Same raw-scalar read as `TokenUsageRepository.findUsageSummary` — the
|
|
407
|
+
* package's precedent for non-entity aggregate reads.
|
|
408
|
+
*/
|
|
409
|
+
async countChunksInProgress(params) {
|
|
410
|
+
const query = this.neo4j.initQuery();
|
|
411
|
+
query.queryParams = {
|
|
412
|
+
...query.queryParams,
|
|
413
|
+
id: params.id,
|
|
414
|
+
aiStatus: [ai_status_1.AiStatus.InProgress, ai_status_1.AiStatus.Pending],
|
|
415
|
+
};
|
|
416
|
+
query.query += `
|
|
417
|
+
MATCH (:${params.nodeType} {id: $id})-[:HAS_CHUNK]->(chunk:Chunk)
|
|
418
|
+
WHERE chunk.aiStatus IN $aiStatus
|
|
419
|
+
RETURN count(chunk) AS count
|
|
420
|
+
`;
|
|
421
|
+
const result = await this.neo4j.read(query.query, query.queryParams);
|
|
422
|
+
if (result.records.length === 0)
|
|
423
|
+
return 0;
|
|
424
|
+
// Cypher `count()` arrives as a neo4j-driver Integer; the package's own unwrap helper
|
|
425
|
+
// turns it into a plain JS number (and passes real numbers through untouched).
|
|
426
|
+
const count = (0, unwrap_neo4j_integer_1.unwrapNeo4jIntegers)(result.records[0].get("count"));
|
|
427
|
+
return count ?? 0;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* Single-winner claim on a content node's post-chunking pipeline.
|
|
431
|
+
*
|
|
432
|
+
* `countChunksInProgress` alone CANNOT gate finalisation. It answers "are any chunks
|
|
433
|
+
* still pending?", never "has finalisation already run?", and `ChunkService.generateGraph`
|
|
434
|
+
* enqueues one finalise job per chunk — so a 25-chunk document gets 25 jobs. Once the last
|
|
435
|
+
* chunk lands, every remaining queued job passes a pending-count check and re-runs the whole
|
|
436
|
+
* pipeline (measured 2026-08-12: summariser ran 25× on one document, 100.91 credits; ~70% of
|
|
437
|
+
* that run's spend was duplicated work).
|
|
438
|
+
*
|
|
439
|
+
* The `SET n.finalisationClaimedAt = n.finalisationClaimedAt` is a deliberate no-op write: it
|
|
440
|
+
* takes the node's write lock BEFORE the predicate is evaluated. A concurrent claimer blocks
|
|
441
|
+
* there, and re-reads the committed value afterwards (Neo4j reads are read-committed, not
|
|
442
|
+
* repeatable), so it sees the winner's timestamp and its `WHERE` fails. Without the lock both
|
|
443
|
+
* transactions evaluate the predicate on the pre-write state and both claim.
|
|
444
|
+
*
|
|
445
|
+
* Re-ingestion re-arms the claim via `clearFinalisationClaim` in `ChunkService.createChunks`.
|
|
446
|
+
*/
|
|
447
|
+
async claimContentFinalisation(params) {
|
|
299
448
|
const query = this.neo4j.initQuery();
|
|
300
449
|
query.queryParams = {
|
|
301
450
|
...query.queryParams,
|
|
302
|
-
|
|
451
|
+
id: params.id,
|
|
452
|
+
pendingStatus: [ai_status_1.AiStatus.InProgress, ai_status_1.AiStatus.Pending],
|
|
303
453
|
};
|
|
304
|
-
query.query
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
chunk
|
|
454
|
+
query.query += `
|
|
455
|
+
MATCH (nodeType:${params.nodeType} {id: $id})
|
|
456
|
+
SET nodeType.finalisationClaimedAt = nodeType.finalisationClaimedAt
|
|
457
|
+
WITH nodeType
|
|
458
|
+
WHERE nodeType.finalisationClaimedAt IS NULL
|
|
459
|
+
AND NOT EXISTS {
|
|
460
|
+
MATCH (nodeType)-[:HAS_CHUNK]->(chunk:Chunk)
|
|
461
|
+
WHERE chunk.aiStatus IN $pendingStatus
|
|
462
|
+
}
|
|
463
|
+
SET nodeType.finalisationClaimedAt = datetime()
|
|
464
|
+
RETURN nodeType.id AS id
|
|
311
465
|
`;
|
|
312
|
-
|
|
466
|
+
// `executeInTransaction` (not `writeOne`) because the claim must READ its own outcome:
|
|
467
|
+
// `writeOne` returns null without a serialiser, and the lock has to be held for the whole
|
|
468
|
+
// transaction for the re-read to be meaningful. Same id-keyed, label-scoped match as
|
|
469
|
+
// `countChunksInProgress` above — no company scope, by design: this is an internal
|
|
470
|
+
// pipeline latch keyed on a UUID the caller already resolved.
|
|
471
|
+
const [result] = await this.neo4j.executeInTransaction([{ query: query.query, params: query.queryParams }]);
|
|
472
|
+
return result.records.length > 0;
|
|
313
473
|
}
|
|
314
|
-
|
|
474
|
+
/**
|
|
475
|
+
* Re-arms `claimContentFinalisation` for a content node whose chunks are being (re)built.
|
|
476
|
+
* Called from `ChunkService.createChunks`, the single entry point every ingestion and
|
|
477
|
+
* rebuild path goes through — without it a re-ingested document would keep the stale claim
|
|
478
|
+
* and skip finalisation silently.
|
|
479
|
+
*/
|
|
480
|
+
async clearFinalisationClaim(params) {
|
|
315
481
|
const query = this.neo4j.initQuery();
|
|
316
|
-
query.queryParams = { ...query.queryParams, id: params.id
|
|
482
|
+
query.queryParams = { ...query.queryParams, id: params.id };
|
|
317
483
|
query.query += `
|
|
318
|
-
MATCH (nodeType:${params.nodeType} {id: $id})
|
|
319
|
-
|
|
484
|
+
MATCH (nodeType:${params.nodeType} {id: $id})
|
|
485
|
+
REMOVE nodeType.finalisationClaimedAt
|
|
320
486
|
`;
|
|
321
487
|
await this.neo4j.writeOne(query);
|
|
322
488
|
}
|
|
@@ -415,7 +581,15 @@ let ChunkRepository = class ChunkRepository {
|
|
|
415
581
|
}
|
|
416
582
|
};
|
|
417
583
|
exports.ChunkRepository = ChunkRepository;
|
|
418
|
-
|
|
584
|
+
/**
|
|
585
|
+
* Chunks embedded (and written) per round-trip in `enrichContentAndEmbedBatch`.
|
|
586
|
+
* A whole document's worth of vectors held at once is what pushed the worker past
|
|
587
|
+
* its heap on large uploads: 760 pages ≈ 2.5k chunks × 3072 floats. Slicing bounds
|
|
588
|
+
* the peak to one slice's vectors while keeping batching's latency win (one embedder
|
|
589
|
+
* call per 50 chunks, not per chunk).
|
|
590
|
+
*/
|
|
591
|
+
ChunkRepository.EMBED_SLICE = 50;
|
|
592
|
+
exports.ChunkRepository = ChunkRepository = ChunkRepository_1 = __decorate([
|
|
419
593
|
(0, common_1.Injectable)(),
|
|
420
594
|
__param(5, (0, common_1.Inject)(ai_source_query_provider_1.AI_SOURCE_QUERY)),
|
|
421
595
|
__metadata("design:paramtypes", [neo4j_service_1.Neo4jService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk.repository.js","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkE;AAClE,2CAAwC;AACxC,+DAA2D;AAC3D,oGAA+G;AAE/G,wCAAgD;AAChD,4EAAwE;AACxE,8EAA0E;AAC1E,uFAAmF;AACnF,oEAA2E;AAC3E,uDAAmD;AACnD,+EAA0E;AAGnE,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,KAAmB,EACnB,YAA0B,EAC1B,eAAgC,EAChC,UAAsB,EACtB,eAAgC,EACP,aAAoC;QAL7D,UAAK,GAAL,KAAK,CAAc;QACnB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,oBAAe,GAAf,eAAe,CAAiB;QAChC,eAAU,GAAV,UAAU,CAAY;QACtB,oBAAe,GAAf,eAAe,CAAiB;QACP,kBAAa,GAAb,aAAa,CAAuB;IAC7E,CAAC;IAEJ,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE,uFAAuF;SAC/F,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAC7D,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE;;;;;kCAKqB,UAAU;;;SAGnC;SACJ,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE,oGAAoG;SAC5G,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE,6BAA6B;SACrC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAC7D,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE;;;;;iCAKoB,UAAU;;;SAGlC;SACJ,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,KAAK,CAAC,KAAK,GAAG;iBACD,sBAAS,CAAC,QAAQ,IAAI,sBAAS,CAAC,SAAS;iBACzC,sBAAS,CAAC,QAAQ;OAC5B,CAAC;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAgD;QACpE,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACxB,KAAK,EAAE;;;OAGN;YACD,WAAW,EAAE;gBACX,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAoD;QAC5E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE3F,oFAAoF;QACpF,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;QAEpF,oEAAoE;QACpE,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YACrC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC5C,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAC1C,UAAU,CAAC,WAAW,GAAG,EAAE,GAAG,UAAU,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACxE,UAAU,CAAC,KAAK,IAAI;UACd,KAAK,CAAC,MAAM;;;OAGf,CAAC;QAEJ,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QACpF,MAAM,QAAQ,GAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,CAAc,IAAI,EAAE,CAAC;QAE7E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAErC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CACxC;;;;;;;OAOC,EACD,EAAE,cAAc,EAAE,QAAQ,EAAE,CAC7B,CAAC;QACF,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CACxC,CAAC,MAAyC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAW,CAC1E,CAAC;QAEF,IAAI,UAAU,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CACzC;;;;;;;SAOC,EACD,EAAE,IAAI,EAAE,QAAQ,EAAE,CACnB,CAAC;YACF,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAyC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAW,CAAC,CAAC;QACpH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,6CAAoB,EAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAE5E,OAAO,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,GAAa;QAChD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,GAAG;SACJ,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;;KAId,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAkB,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IAC9F,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAwC;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;QAC5D,KAAK,CAAC,KAAK,GAAG;iBACD,MAAM,CAAC,QAAQ;;KAE3B,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5C,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAA2B;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;OAGZ,CAAC;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAA2B;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;OAGZ,CAAC;QAEJ,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAA2B;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;;;KAGd,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;0BACO,MAAM,CAAC,QAAQ;;;KAGpC,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MASjB;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAElF,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,QAAQ,EAAE,oBAAQ,CAAC,OAAO;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;wBACK,MAAM,CAAC,QAAQ;;;;;;UAM7B,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;QAYlD,MAAM,CAAC,eAAe;YACpB,CAAC,CAAC;;;;SAIH;YACC,CAAC,CAAC,EACN;KACD,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA0C;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;KAGb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA0C;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;KAGb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,KAA+E;QAE/E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE/B,qFAAqF;QACrF,uFAAuF;QACvF,4FAA4F;QAC5F,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAEzG,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC;YACtB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI;SAC9C,CAAC,CAAC,CAAC;QAEJ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,IAAI;SACL,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;;;;KAOb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAwC;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,oBAAQ,CAAC,SAAS,EAAE,CAAC;QAC1F,KAAK,CAAC,KAAK,IAAI;wBACK,MAAM,CAAC,QAAQ;;KAElC,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAwC;QAChE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1E,KAAK,CAAC,WAAW,GAAG;YAClB,GAAG,KAAK,CAAC,WAAW;YACpB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,QAAQ,EAAE,CAAC,oBAAQ,CAAC,UAAU,EAAE,oBAAQ,CAAC,OAAO,CAAC;SAClD,CAAC;QAEF,KAAK,CAAC,KAAK,IAAI;0BACO,MAAM,CAAC,QAAQ;;;KAGpC,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAAgD;QAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;KAGb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA8B;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;;;;KAIb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,KAAK,GAAG;;;;KAIb,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAAwC;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAErC,KAAK,CAAC,WAAW,GAAG;YAClB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;wBACM,MAAM,CAAC,QAAQ;;KAElC,CAAC;QAEF,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAGxB;QACC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/F,KAAK,CAAC,KAAK,GAAG;;;;;;;;;;KAUb,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAkC,EAAE,EAAE,CAAC,CAAC;YACjE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,CAAW;YACnC,MAAM,EAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAc,IAAI,EAAE;YAC3C,KAAK,EAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAc,IAAI,EAAE;SAC1C,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,MAAoC;QACpE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,8BAAe,CAAC,KAAK,EAAE,CAAC,CAAC;QAE1F,KAAK,CAAC,WAAW,GAAG;YAClB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,QAAQ,EAAE,MAAM,CAAC,IAAI;SACtB,CAAC;QAEF,KAAK,CAAC,KAAK,GAAG;oBACE,MAAM,CAAC,IAAI;;KAE1B,CAAC;QAEF,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;CACF,CAAA;AA3eY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;IAQR,WAAA,IAAA,eAAM,EAAC,0CAAe,CAAC,CAAA;qCALA,4BAAY;QACL,4BAAY;QACT,sBAAe;QACpB,uBAAU;QACL,kCAAe;GANxC,eAAe,CA2e3B"}
|
|
1
|
+
{"version":3,"file":"chunk.repository.js","sourceRoot":"","sources":["../../../../src/foundations/chunk/repositories/chunk.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/services/chunk.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"chunk.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/chunk/services/chunk.service.ts"],"names":[],"mappings":"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"}
|