@memberjunction/ng-dashboards 5.23.0 → 5.24.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.
Files changed (78) hide show
  1. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts +677 -5
  2. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.d.ts.map +1 -1
  3. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js +6879 -1873
  4. package/dist/AI/components/autotagging/autotagging-pipeline-resource.component.js.map +1 -1
  5. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +46 -1
  6. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
  7. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +758 -491
  8. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
  9. package/dist/AI/components/vectors/vector-management-resource.component.d.ts +19 -0
  10. package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
  11. package/dist/AI/components/vectors/vector-management-resource.component.js +410 -208
  12. package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
  13. package/dist/DataExplorer/data-explorer-dashboard.component.d.ts.map +1 -1
  14. package/dist/DataExplorer/data-explorer-dashboard.component.js +17 -17
  15. package/dist/DataExplorer/data-explorer-dashboard.component.js.map +1 -1
  16. package/dist/Integration/components/activity/activity.component.d.ts.map +1 -1
  17. package/dist/Integration/components/activity/activity.component.js +1 -0
  18. package/dist/Integration/components/activity/activity.component.js.map +1 -1
  19. package/dist/Integration/components/connections/connections.component.d.ts.map +1 -1
  20. package/dist/Integration/components/connections/connections.component.js +1 -0
  21. package/dist/Integration/components/connections/connections.component.js.map +1 -1
  22. package/dist/Integration/components/mapping-workspace/mapping-workspace.component.d.ts.map +1 -1
  23. package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js +1 -0
  24. package/dist/Integration/components/mapping-workspace/mapping-workspace.component.js.map +1 -1
  25. package/dist/Integration/components/overview/overview.component.d.ts.map +1 -1
  26. package/dist/Integration/components/overview/overview.component.js +1 -0
  27. package/dist/Integration/components/overview/overview.component.js.map +1 -1
  28. package/dist/Integration/components/pipelines/pipelines.component.d.ts.map +1 -1
  29. package/dist/Integration/components/pipelines/pipelines.component.js +1 -0
  30. package/dist/Integration/components/pipelines/pipelines.component.js.map +1 -1
  31. package/dist/Integration/components/schedules/schedules.component.d.ts.map +1 -1
  32. package/dist/Integration/components/schedules/schedules.component.js +1 -0
  33. package/dist/Integration/components/schedules/schedules.component.js.map +1 -1
  34. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.d.ts +411 -0
  35. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.d.ts.map +1 -0
  36. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js +4266 -0
  37. package/dist/KnowledgeHub/components/analytics/analytics-resource.component.js.map +1 -0
  38. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts +35 -1
  39. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.d.ts.map +1 -1
  40. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js +186 -13
  41. package/dist/KnowledgeHub/components/clusters/cluster-visualization-resource.component.js.map +1 -1
  42. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts +1 -0
  43. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.d.ts.map +1 -1
  44. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +188 -165
  45. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
  46. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts +75 -0
  47. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.d.ts.map +1 -0
  48. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js +601 -0
  49. package/dist/KnowledgeHub/components/scheduling/scheduling-resource.component.js.map +1 -0
  50. package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.d.ts +93 -12
  51. package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.d.ts.map +1 -1
  52. package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.js +637 -107
  53. package/dist/KnowledgeHub/components/search/knowledge-search-resource.component.js.map +1 -1
  54. package/dist/KnowledgeHub/index.d.ts +2 -0
  55. package/dist/KnowledgeHub/index.d.ts.map +1 -1
  56. package/dist/KnowledgeHub/index.js +2 -0
  57. package/dist/KnowledgeHub/index.js.map +1 -1
  58. package/dist/__tests__/analytics-resource.test.d.ts +2 -0
  59. package/dist/__tests__/analytics-resource.test.d.ts.map +1 -0
  60. package/dist/__tests__/analytics-resource.test.js +181 -0
  61. package/dist/__tests__/analytics-resource.test.js.map +1 -0
  62. package/dist/__tests__/scheduling.test.d.ts +2 -0
  63. package/dist/__tests__/scheduling.test.d.ts.map +1 -0
  64. package/dist/__tests__/scheduling.test.js +205 -0
  65. package/dist/__tests__/scheduling.test.js.map +1 -0
  66. package/dist/ai-dashboards.module.d.ts +18 -14
  67. package/dist/ai-dashboards.module.d.ts.map +1 -1
  68. package/dist/ai-dashboards.module.js +25 -5
  69. package/dist/ai-dashboards.module.js.map +1 -1
  70. package/dist/public-api.d.ts +1 -0
  71. package/dist/public-api.d.ts.map +1 -1
  72. package/dist/public-api.js +1 -0
  73. package/dist/public-api.js.map +1 -1
  74. package/dist/shared/entity-field-display.d.ts +44 -0
  75. package/dist/shared/entity-field-display.d.ts.map +1 -0
  76. package/dist/shared/entity-field-display.js +118 -0
  77. package/dist/shared/entity-field-display.js.map +1 -0
  78. package/package.json +47 -46
@@ -0,0 +1,411 @@
1
+ /**
2
+ * @fileoverview Knowledge Hub Analytics & Insights Resource Component
3
+ *
4
+ * Multi-tab analytics dashboard for the Knowledge Hub: Overview (interactive cards),
5
+ * Tags (top 20, distribution), Sources (comparison, health), Pipeline (throughput,
6
+ * processing time, errors), and Quality (confidence, weight, model comparison).
7
+ *
8
+ * All chart rendering is pure CSS/inline SVG -- no JS chart libraries.
9
+ */
10
+ import { OnDestroy, AfterViewInit } from '@angular/core';
11
+ import { ResourceData } from '@memberjunction/core-entities';
12
+ import { BaseResourceComponent } from '@memberjunction/ng-shared';
13
+ import * as i0 from "@angular/core";
14
+ interface NavItem {
15
+ ID: string;
16
+ Label: string;
17
+ Icon: string;
18
+ }
19
+ interface DateRangeOption {
20
+ Label: string;
21
+ Days: number;
22
+ }
23
+ interface KPIData {
24
+ Label: string;
25
+ Value: string;
26
+ Delta: string;
27
+ DeltaDirection: 'up' | 'down' | 'flat';
28
+ SparklinePoints: string;
29
+ SparklineColor: string;
30
+ SparklineGradId: string;
31
+ DrillDownKey: string;
32
+ }
33
+ interface WidgetCard {
34
+ Key: string;
35
+ Title: string;
36
+ Icon: string;
37
+ }
38
+ interface TagGrowthMonth {
39
+ Label: string;
40
+ Count: number;
41
+ Percentage: number;
42
+ }
43
+ interface CoverageEntity {
44
+ Name: string;
45
+ Tagged: number;
46
+ Total: number;
47
+ Percentage: number;
48
+ Color: string;
49
+ StrokeDash: string;
50
+ }
51
+ interface SourcePerformanceRow {
52
+ Name: string;
53
+ AvgTagsPerItem: number;
54
+ Percentage: number;
55
+ Color: string;
56
+ }
57
+ interface ThroughputDay {
58
+ Label: string;
59
+ Percentage: number;
60
+ IsError: boolean;
61
+ }
62
+ interface TaxonomyStat {
63
+ Label: string;
64
+ Count: number;
65
+ Color: string;
66
+ BgColor: string;
67
+ }
68
+ interface TopTagRow {
69
+ Rank: number;
70
+ Name: string;
71
+ UsageCount: number;
72
+ AvgWeight: number;
73
+ WeightBarWidth: number;
74
+ WeightBarColor: string;
75
+ TrendPoints: string;
76
+ TrendColor: string;
77
+ TopEntity: string;
78
+ FirstSeen: string;
79
+ }
80
+ interface EntityDistributionRow {
81
+ EntityName: string;
82
+ Segments: EntityDistSegment[];
83
+ }
84
+ interface EntityDistSegment {
85
+ Label: string;
86
+ Percentage: number;
87
+ Color: string;
88
+ }
89
+ interface TagDepthBar {
90
+ Label: string;
91
+ Count: number;
92
+ Percentage: number;
93
+ }
94
+ interface SourceComparisonRow {
95
+ Name: string;
96
+ Type: string;
97
+ TypeIcon: string;
98
+ TypeColor: string;
99
+ Items: number;
100
+ TagsGenerated: number;
101
+ AvgTagsPerItem: number;
102
+ AvgWeight: number;
103
+ LastRun: string;
104
+ Status: string;
105
+ StatusClass: string;
106
+ }
107
+ interface SourceHealthCard {
108
+ Name: string;
109
+ Uptime: number;
110
+ Color: string;
111
+ }
112
+ interface PipelineBar {
113
+ Percentage: number;
114
+ IsError: boolean;
115
+ }
116
+ interface ProcessingStage {
117
+ Name: string;
118
+ Time: number;
119
+ Percentage: number;
120
+ Color: string;
121
+ }
122
+ interface ActiveRunRow {
123
+ RunID: string;
124
+ Source: string;
125
+ Started: string;
126
+ Progress: number;
127
+ Stage: string;
128
+ StageClass: string;
129
+ Items: number;
130
+ }
131
+ interface ErrorLogEntry {
132
+ Time: string;
133
+ Source: string;
134
+ Message: string;
135
+ }
136
+ interface HistogramBin {
137
+ Label: string;
138
+ Count: number;
139
+ Percentage: number;
140
+ Color: string;
141
+ }
142
+ interface WeightGroupedEntity {
143
+ Name: string;
144
+ High: number;
145
+ Med: number;
146
+ Low: number;
147
+ }
148
+ interface LowConfidenceTag {
149
+ Name: string;
150
+ AvgWeight: number;
151
+ UsageCount: number;
152
+ TopEntity: string;
153
+ SuggestedAction: string;
154
+ ActionClass: string;
155
+ }
156
+ interface ModelComparison {
157
+ Name: string;
158
+ Icon: string;
159
+ IconColor: string;
160
+ ScorePercentage: number;
161
+ ScoreColor: string;
162
+ AvgConfidence: number;
163
+ TagsGenerated: number;
164
+ Role: string;
165
+ RoleColor: string;
166
+ StrokeDash: string;
167
+ }
168
+ interface CoOccurrencePairRow {
169
+ TagAName: string;
170
+ TagBName: string;
171
+ Count: number;
172
+ /** Bar width as percentage of the max count in the displayed list */
173
+ BarWidth: number;
174
+ }
175
+ interface DrillDownRecord {
176
+ [key: string]: string | number | null;
177
+ }
178
+ export declare class AnalyticsResourceComponent extends BaseResourceComponent implements AfterViewInit, OnDestroy {
179
+ private cdr;
180
+ private navigationService;
181
+ private destroy$;
182
+ GetResourceDisplayName(_data: ResourceData): Promise<string>;
183
+ GetResourceIconClass(_data: ResourceData): Promise<string>;
184
+ NavItems: NavItem[];
185
+ ActiveTab: string;
186
+ IsLoading: boolean;
187
+ DateRanges: DateRangeOption[];
188
+ ActiveDateRange: string;
189
+ EntityFilter: string;
190
+ EntityFilterOptions: string[];
191
+ DrillDownTarget: string | null;
192
+ DrillDownData: DrillDownRecord[];
193
+ DrillDownColumns: string[];
194
+ IsDrillDownLoading: boolean;
195
+ /** Whether the current drill-down rows have navigable records */
196
+ DrillDownHasActions: boolean;
197
+ /** AN-1: Open a record from a drill-down table row */
198
+ OpenDrillDownRecord(row: DrillDownRecord): void;
199
+ /**
200
+ * D9: Navigate to the Classify dashboard's Tag Library tab with a tag pre-selected.
201
+ * Uses NavigationService.OpenNavItemByName to switch to the Classify nav item
202
+ * and passes the tag name and target tab via configuration.
203
+ */
204
+ private navigateToClassifyTagLibrary;
205
+ KPIs: KPIData[];
206
+ WidgetCards: WidgetCard[];
207
+ TagGrowthData: TagGrowthMonth[];
208
+ CoverageData: CoverageEntity[];
209
+ QualityScore: number;
210
+ MiniConfidenceBins: {
211
+ Height: number;
212
+ Color: string;
213
+ Title: string;
214
+ }[];
215
+ SourcePerfData: SourcePerformanceRow[];
216
+ ThroughputData: ThroughputDay[];
217
+ TaxonomyTotal: number;
218
+ TaxonomyStats: TaxonomyStat[];
219
+ TaxonomyRingSegments: {
220
+ StrokeDash: string;
221
+ StrokeOffset: string;
222
+ Color: string;
223
+ }[];
224
+ TopTags: TopTagRow[];
225
+ EntityDistribution: EntityDistributionRow[];
226
+ DistributionLegend: {
227
+ Label: string;
228
+ Color: string;
229
+ }[];
230
+ TagDepthBars: TagDepthBar[];
231
+ CoOccurrencePairs: CoOccurrencePairRow[];
232
+ CoOccurrenceLastComputed: string | null;
233
+ IsRecomputingCoOccurrence: boolean;
234
+ SourceComparison: SourceComparisonRow[];
235
+ SelectedSourceName: string;
236
+ SourceWeeklyBars: {
237
+ Label: string;
238
+ Value: number;
239
+ Percentage: number;
240
+ }[];
241
+ SourceQualityBands: {
242
+ Label: string;
243
+ Percentage: number;
244
+ Color: string;
245
+ }[];
246
+ SourceQualityNote: string;
247
+ SourceHealthCards: SourceHealthCard[];
248
+ PipelineThroughputBars: PipelineBar[];
249
+ PipelineDateLabels: string[];
250
+ ProcessingStages: ProcessingStage[];
251
+ TotalAvgProcessingTime: number;
252
+ BottleneckStage: string;
253
+ BottleneckPercent: number;
254
+ SuccessRateAvg: number;
255
+ FailureRateAvg: number;
256
+ ActiveRuns: ActiveRunRow[];
257
+ ErrorLog: ErrorLogEntry[];
258
+ ConfidenceHistogram: HistogramBin[];
259
+ ConfidenceStats: {
260
+ Label: string;
261
+ Value: string;
262
+ }[];
263
+ WeightByEntity: WeightGroupedEntity[];
264
+ WeightLegend: {
265
+ Label: string;
266
+ Color: string;
267
+ }[];
268
+ AccuracyLinePoints: string;
269
+ AccuracyDots: {
270
+ Cx: number;
271
+ Cy: number;
272
+ }[];
273
+ AccuracyMonthLabels: string[];
274
+ AccuracyTrendText: string;
275
+ LowConfidenceTags: LowConfidenceTag[];
276
+ ModelComparisons: ModelComparison[];
277
+ ModelRecommendation: string;
278
+ TrendingTags: {
279
+ Name: string;
280
+ Size: number;
281
+ Weight: number;
282
+ }[];
283
+ PipelineStatusText: string;
284
+ PipelineStatusOk: boolean;
285
+ CostKPIs: {
286
+ Label: string;
287
+ Value: string;
288
+ Icon: string;
289
+ SubLabel: string;
290
+ }[];
291
+ CostPerRunRows: {
292
+ RunID: string;
293
+ Source: string;
294
+ Tokens: number;
295
+ Cost: number;
296
+ Started: string;
297
+ }[];
298
+ private rawTags;
299
+ private rawContentItemTags;
300
+ private rawContentItems;
301
+ rawProcessRuns: Record<string, unknown>[];
302
+ private rawContentSources;
303
+ private rawContentTypes;
304
+ private rawRunDetails;
305
+ ngAfterViewInit(): Promise<void>;
306
+ private emitAgentContext;
307
+ private registerAgentTools;
308
+ ngOnDestroy(): void;
309
+ SelectTab(tabId: string): void;
310
+ SetDateRange(label: string): void;
311
+ SetEntityFilter(value: string): void;
312
+ OpenDrillDown(key: string): void;
313
+ CloseDrillDown(): void;
314
+ /** Export drill-down data as CSV */
315
+ ExportDrillDownCSV(): void;
316
+ /** Export a named data set (top-tags, sources, etc.) as CSV */
317
+ ExportTabDataCSV(dataKey: string): void;
318
+ private downloadCSV;
319
+ SelectSource(name: string): void;
320
+ FormatNumber(n: number): string;
321
+ TrackByIndex(index: number): number;
322
+ TrackByID(_index: number, item: {
323
+ ID?: string;
324
+ Key?: string;
325
+ Label?: string;
326
+ Name?: string;
327
+ }): string;
328
+ private loadAllData;
329
+ private buildEntityFilterOptions;
330
+ private rebuildAllAggregations;
331
+ private getDateFilteredItems;
332
+ private buildKPIs;
333
+ private buildTagGrowth;
334
+ private buildCoverageData;
335
+ private buildQualityScore;
336
+ private buildSourcePerformance;
337
+ private buildThroughput;
338
+ private buildTaxonomyHealth;
339
+ private buildTopTags;
340
+ private generateTrendPoints;
341
+ private buildEntityDistribution;
342
+ private buildTagDepth;
343
+ private buildSourceComparison;
344
+ private getSourceTypeIcon;
345
+ private getSourceTypeColor;
346
+ private formatRelativeTime;
347
+ private buildSourceDetail;
348
+ private buildSourceHealth;
349
+ private buildPipelineThroughput;
350
+ private buildProcessingStages;
351
+ private buildActiveRuns;
352
+ private buildErrorLog;
353
+ private buildConfidenceHistogram;
354
+ private buildWeightByEntity;
355
+ private buildAccuracyTrend;
356
+ private buildLowConfidenceTags;
357
+ private buildModelComparisons;
358
+ private buildTrendingTags;
359
+ private buildPipelineStatus;
360
+ private loadDrillDownData;
361
+ private buildWidgetDrillDown;
362
+ /**
363
+ * D10 Tags tab: Click a tag row to see content items using that tag.
364
+ */
365
+ private buildTagRowDrillDown;
366
+ /**
367
+ * D10 Sources tab: Click a source row to see recent runs, items, and errors.
368
+ */
369
+ private buildSourceRowDrillDown;
370
+ /**
371
+ * D10 Pipeline tab: Click throughput chart to see individual run details.
372
+ */
373
+ private buildPipelineThroughputDrillDown;
374
+ /**
375
+ * D10 Quality tab: Click confidence histogram bin to see matching items.
376
+ */
377
+ private buildQualityBinDrillDown;
378
+ /**
379
+ * Aggregates cost and token data from ContentProcessRunDetail records.
380
+ * Each detail record has TotalTokensUsed and TotalCost fields that are
381
+ * pre-rolled-up from linked AIPromptRun records.
382
+ */
383
+ private buildCostUsageData;
384
+ /** Sum a numeric field across an array of raw records */
385
+ static SumField(records: Record<string, unknown>[], fieldName: string): number;
386
+ private sumField;
387
+ private formatLargeNumber;
388
+ private buildCostPerRunRows;
389
+ /**
390
+ * D5: Opens the browser print dialog with print-friendly CSS.
391
+ * This is a zero-dependency approach to PDF export.
392
+ * NOTE: For full XLSX export, an xlsx library (e.g. SheetJS) can be added later.
393
+ */
394
+ PrintCurrentTab(): void;
395
+ private static readonly PREFS_KEY;
396
+ private persistAnalyticsPreferences;
397
+ private loadAnalyticsPreferences;
398
+ /**
399
+ * Load the top 20 co-occurring tag pairs and the staleness timestamp.
400
+ * Runs in background so it does not block initial render.
401
+ */
402
+ private loadCoOccurrenceData;
403
+ /** Recompute co-occurrence data (triggered by user button click) */
404
+ RecomputeCoOccurrence(): Promise<void>;
405
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnalyticsResourceComponent, never>;
406
+ static ɵcmp: i0.ɵɵComponentDeclaration<AnalyticsResourceComponent, "app-analytics-resource", never, {}, {}, never, never, false, never>;
407
+ }
408
+ /** Tree-shaking prevention */
409
+ export declare function LoadAnalyticsResource(): void;
410
+ export {};
411
+ //# sourceMappingURL=analytics-resource.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-resource.component.d.ts","sourceRoot":"","sources":["../../../../src/KnowledgeHub/components/analytics/analytics-resource.component.ts"],"names":[],"mappings":"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"}