@memberjunction/ng-core-entity-forms 5.32.0 → 5.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts +30 -0
- package/dist/lib/custom/AIAgents/ai-agent-form.component.d.ts.map +1 -1
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js +944 -645
- package/dist/lib/custom/AIAgents/ai-agent-form.component.js.map +1 -1
- package/dist/lib/custom/SearchScopes/searchscope-form.component.d.ts +137 -0
- package/dist/lib/custom/SearchScopes/searchscope-form.component.d.ts.map +1 -0
- package/dist/lib/custom/SearchScopes/searchscope-form.component.js +888 -0
- package/dist/lib/custom/SearchScopes/searchscope-form.component.js.map +1 -0
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.d.ts +66 -0
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.d.ts.map +1 -0
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.js +253 -0
- package/dist/lib/custom/SearchScopes/searchscopeprovider-form.component.js.map +1 -0
- package/dist/lib/custom/Tests/test-rubric-form.component.js +2 -2
- package/dist/lib/custom/Tests/test-rubric-form.component.js.map +1 -1
- package/dist/lib/custom/Tests/test-suite-form.component.js +2 -2
- package/dist/lib/custom/Tests/test-suite-form.component.js.map +1 -1
- package/dist/lib/custom/custom-forms.module.d.ts +28 -25
- package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
- package/dist/lib/custom/custom-forms.module.js +18 -4
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/custom/shared/entity-selector-dialog.component.js +2 -2
- package/dist/lib/custom/shared/entity-selector-dialog.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js +111 -79
- package/dist/lib/generated/Entities/MJAIAgent/mjaiagent.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJAIAgentSearchScope/mjaiagentsearchscope.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJAIAgentSearchScope/mjaiagentsearchscope.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJAIAgentSearchScope/mjaiagentsearchscope.form.component.js +93 -0
- package/dist/lib/generated/Entities/MJAIAgentSearchScope/mjaiagentsearchscope.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJAIResultCache/mjairesultcache.form.component.js +2 -2
- package/dist/lib/generated/Entities/MJAIResultCache/mjairesultcache.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js +89 -71
- package/dist/lib/generated/Entities/MJEntity/mjentity.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js +23 -21
- package/dist/lib/generated/Entities/MJEntityField/mjentityfield.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJFileStorageAccount/mjfilestorageaccount.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJFileStorageAccount/mjfilestorageaccount.form.component.js +33 -15
- package/dist/lib/generated/Entities/MJFileStorageAccount/mjfilestorageaccount.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js +31 -13
- package/dist/lib/generated/Entities/MJRole/mjrole.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJSearchExecutionLog/mjsearchexecutionlog.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchExecutionLog/mjsearchexecutionlog.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchExecutionLog/mjsearchexecutionlog.form.component.js +91 -0
- package/dist/lib/generated/Entities/MJSearchExecutionLog/mjsearchexecutionlog.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchProvider/mjsearchprovider.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJSearchProvider/mjsearchprovider.form.component.js +23 -5
- package/dist/lib/generated/Entities/MJSearchProvider/mjsearchprovider.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJSearchScope/mjsearchscope.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScope/mjsearchscope.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScope/mjsearchscope.form.component.js +243 -0
- package/dist/lib/generated/Entities/MJSearchScope/mjsearchscope.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeEntity/mjsearchscopeentity.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopeEntity/mjsearchscopeentity.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeEntity/mjsearchscopeentity.form.component.js +71 -0
- package/dist/lib/generated/Entities/MJSearchScopeEntity/mjsearchscopeentity.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeExternalIndex/mjsearchscopeexternalindex.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopeExternalIndex/mjsearchscopeexternalindex.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeExternalIndex/mjsearchscopeexternalindex.form.component.js +75 -0
- package/dist/lib/generated/Entities/MJSearchScopeExternalIndex/mjsearchscopeexternalindex.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopePermission/mjsearchscopepermission.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopePermission/mjsearchscopepermission.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopePermission/mjsearchscopepermission.form.component.js +65 -0
- package/dist/lib/generated/Entities/MJSearchScopePermission/mjsearchscopepermission.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeProvider/mjsearchscopeprovider.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopeProvider/mjsearchscopeprovider.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeProvider/mjsearchscopeprovider.form.component.js +75 -0
- package/dist/lib/generated/Entities/MJSearchScopeProvider/mjsearchscopeprovider.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeStorageAccount/mjsearchscopestorageaccount.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopeStorageAccount/mjsearchscopestorageaccount.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeStorageAccount/mjsearchscopestorageaccount.form.component.js +63 -0
- package/dist/lib/generated/Entities/MJSearchScopeStorageAccount/mjsearchscopestorageaccount.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeTestQuery/mjsearchscopetestquery.form.component.d.ts +10 -0
- package/dist/lib/generated/Entities/MJSearchScopeTestQuery/mjsearchscopetestquery.form.component.d.ts.map +1 -0
- package/dist/lib/generated/Entities/MJSearchScopeTestQuery/mjsearchscopetestquery.form.component.js +75 -0
- package/dist/lib/generated/Entities/MJSearchScopeTestQuery/mjsearchscopetestquery.form.component.js.map +1 -0
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js +9 -9
- package/dist/lib/generated/Entities/MJTag/mjtag.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJTemplate/mjtemplate.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJTemplate/mjtemplate.form.component.js +46 -10
- package/dist/lib/generated/Entities/MJTemplate/mjtemplate.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js +223 -169
- package/dist/lib/generated/Entities/MJUser/mjuser.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js +32 -14
- package/dist/lib/generated/Entities/MJVectorIndex/mjvectorindex.form.component.js.map +1 -1
- package/dist/lib/generated/generated-forms.module.d.ts +312 -298
- package/dist/lib/generated/generated-forms.module.d.ts.map +1 -1
- package/dist/lib/generated/generated-forms.module.js +168 -111
- package/dist/lib/generated/generated-forms.module.js.map +1 -1
- package/package.json +36 -35
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Custom SearchScope form (P2D.7 Angular half).
|
|
3
|
+
*
|
|
4
|
+
* Adds a "Reranker" custom section that:
|
|
5
|
+
* - Renders a dropdown of registered rerankers — currently a hardcoded list
|
|
6
|
+
* mirroring `BaseReRanker.GetAvailableRerankers()` server-side, with each
|
|
7
|
+
* option's HasCost flag surfaced inline so authors can see at a glance
|
|
8
|
+
* which options will incur API spend.
|
|
9
|
+
* - Reads / writes the current selection from `record.ScopeConfig` JSON's
|
|
10
|
+
* `reRanker.driverClass` key — same path the SearchEngine reads at runtime.
|
|
11
|
+
*
|
|
12
|
+
* **Discovery follow-up:** the canonical source of available rerankers is
|
|
13
|
+
* `BaseReRanker.GetAvailableRerankers()` in `@memberjunction/search-engine`,
|
|
14
|
+
* but that's a Node-only package and can't be imported in the browser.
|
|
15
|
+
* A small GraphQL query (e.g. `AvailableRerankers`) on MJServer that calls
|
|
16
|
+
* the helper server-side would let this dropdown auto-discover any
|
|
17
|
+
* third-party reranker registered with ClassFactory. Tracked as a follow-up
|
|
18
|
+
* — for now the hardcoded list covers the 5 rerankers shipped in Phase 2D.
|
|
19
|
+
*
|
|
20
|
+
* The CodeGen-generated `RerankerBudgetCents` numeric input is already on
|
|
21
|
+
* the form (in the "Details" section); we don't need to recreate it.
|
|
22
|
+
* The dropdown above + budget input below give scope authors the full
|
|
23
|
+
* Phase 2D configuration surface.
|
|
24
|
+
*/
|
|
25
|
+
import { OnDestroy } from '@angular/core';
|
|
26
|
+
import { MJSearchScopeEntity } from '@memberjunction/core-entities';
|
|
27
|
+
import { SearchResultItem, StreamingProviderStatus } from '@memberjunction/ng-search';
|
|
28
|
+
import { MJSearchScopeFormComponent } from '../../generated/Entities/MJSearchScope/mjsearchscope.form.component';
|
|
29
|
+
import * as i0 from "@angular/core";
|
|
30
|
+
interface FusionWeightRow {
|
|
31
|
+
/** Source-type key the SearchEngine matches against (e.g. 'vector', 'fulltext'). */
|
|
32
|
+
Key: string;
|
|
33
|
+
/** Friendly label for the slider — same value as Key today, kept separate for future i18n. */
|
|
34
|
+
Label: string;
|
|
35
|
+
/** Working value of the slider (1-decimal precision) — bound via two-way. */
|
|
36
|
+
Weight: number;
|
|
37
|
+
}
|
|
38
|
+
interface RerankerOption {
|
|
39
|
+
DriverClass: string;
|
|
40
|
+
Name: string;
|
|
41
|
+
HasCost: boolean;
|
|
42
|
+
}
|
|
43
|
+
export declare class MJSearchScopeFormComponentExtended extends MJSearchScopeFormComponent implements OnDestroy {
|
|
44
|
+
record: MJSearchScopeEntity;
|
|
45
|
+
readonly AvailableRerankers: RerankerOption[];
|
|
46
|
+
/** Live-preview state (P4.1). */
|
|
47
|
+
PreviewQuery: string;
|
|
48
|
+
PreviewIsRunning: boolean;
|
|
49
|
+
PreviewResults: SearchResultItem[];
|
|
50
|
+
PreviewProviders: StreamingProviderStatus[];
|
|
51
|
+
PreviewElapsedMs: number | null;
|
|
52
|
+
PreviewError: string | null;
|
|
53
|
+
private previewSubscription;
|
|
54
|
+
private searchService;
|
|
55
|
+
/**
|
|
56
|
+
* P4.3 — A/B comparison via Kendall-tau between consecutive preview runs.
|
|
57
|
+
* After RunPreview completes, the previous run's RecordIDs are diffed
|
|
58
|
+
* against the current run and the rank-correlation similarity is shown
|
|
59
|
+
* inline ("82% similar to last run"). Authors use this to immediately
|
|
60
|
+
* see how much a reranker swap or fusion-weight tweak shifted the ranking.
|
|
61
|
+
*/
|
|
62
|
+
private PreviousRunRecordIDs;
|
|
63
|
+
LastRunSimilarityPercent: number | null;
|
|
64
|
+
ngOnDestroy(): void;
|
|
65
|
+
/**
|
|
66
|
+
* P4.1 — run a streaming preview against this scope. Uses the same
|
|
67
|
+
* SearchService.StreamSearch path the production search UI uses, scoped
|
|
68
|
+
* to just this scope's ID. Renders progressively as each provider
|
|
69
|
+
* reports back so authors can see chip-by-chip what each tuning change
|
|
70
|
+
* actually affects.
|
|
71
|
+
*/
|
|
72
|
+
RunPreview(): void;
|
|
73
|
+
CancelPreview(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Compute Kendall-tau rank correlation on the items present in both lists.
|
|
76
|
+
* Items only in one list are ignored (partial-overlap handling). Returns
|
|
77
|
+
* null when the shared overlap is too small (< 2 items) to be meaningful.
|
|
78
|
+
*
|
|
79
|
+
* Tau formula: (concordant - discordant) / (N * (N-1) / 2)
|
|
80
|
+
* where concordant = pairs ranked in the same order in both lists,
|
|
81
|
+
* discordant = pairs ranked in opposite order, N = shared item count.
|
|
82
|
+
*/
|
|
83
|
+
private static kendallTauOnSharedItems;
|
|
84
|
+
/**
|
|
85
|
+
* Override the section list to include the new "Reranker" section before
|
|
86
|
+
* "Details". The generated `initSections()` doesn't know about our custom
|
|
87
|
+
* section so we replace the list. Order matches the template's render order.
|
|
88
|
+
*/
|
|
89
|
+
ngOnInit(): Promise<void>;
|
|
90
|
+
/**
|
|
91
|
+
* Currently-selected reranker driver class, parsed from `record.ScopeConfig`.
|
|
92
|
+
* Empty string means "no reranker explicitly chosen" — runtime defaults
|
|
93
|
+
* to NoopReRanker. Stored as `ScopeConfig.reRanker.driverClass`.
|
|
94
|
+
*/
|
|
95
|
+
get SelectedRerankerDriverClass(): string;
|
|
96
|
+
set SelectedRerankerDriverClass(value: string);
|
|
97
|
+
/**
|
|
98
|
+
* Whether the currently-selected reranker incurs API cost — used to render
|
|
99
|
+
* an inline cost-warning indicator next to the dropdown.
|
|
100
|
+
*/
|
|
101
|
+
get SelectedRerankerHasCost(): boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Whether the CSV export is currently running. Drives the button's disabled
|
|
104
|
+
* state + spinner.
|
|
105
|
+
*/
|
|
106
|
+
IsExportingTuningCsv: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* P4.2 — fusion weight sliders for each canonical SearchEngine source type.
|
|
109
|
+
* Backed by `SearchScope.ScopeConfig.fusionWeights` JSON (the runtime path
|
|
110
|
+
* — see plans/search-scopes-rag-plus/RAG_plan.md §8 Multi-Scope RRF Fusion). Plan task originally
|
|
111
|
+
* proposed `SearchScopeProvider.Weight` but that column doesn't exist in
|
|
112
|
+
* Phase 1; the JSON path is the actual contract the SearchEngine reads.
|
|
113
|
+
*/
|
|
114
|
+
private _fusionWeights;
|
|
115
|
+
get FusionWeights(): FusionWeightRow[];
|
|
116
|
+
/**
|
|
117
|
+
* Persist a fusion weight change back to `ScopeConfig.fusionWeights`. The
|
|
118
|
+
* caller is the slider's `(change)` event so writes happen only on
|
|
119
|
+
* slide-end, not on every drag tick.
|
|
120
|
+
*/
|
|
121
|
+
OnFusionWeightChanged(row: FusionWeightRow, raw: number | string): void;
|
|
122
|
+
/**
|
|
123
|
+
* P3.4 — export the last 500 SearchExecutionLog rows for this scope as CSV.
|
|
124
|
+
* Used by scope authors for offline tuning analysis (open in a spreadsheet,
|
|
125
|
+
* pivot by reranker / status / latency, etc.). Filtered to this scope's ID
|
|
126
|
+
* so multi-tenant deployments don't leak other scopes' query history.
|
|
127
|
+
*/
|
|
128
|
+
ExportTuningCsv(): Promise<void>;
|
|
129
|
+
private downloadCsv;
|
|
130
|
+
private escapeCsv;
|
|
131
|
+
private parseScopeConfig;
|
|
132
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MJSearchScopeFormComponentExtended, never>;
|
|
133
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MJSearchScopeFormComponentExtended, "mj-searchscope-form-extended", never, {}, {}, never, never, false, never>;
|
|
134
|
+
}
|
|
135
|
+
export declare function LoadMJSearchScopeFormComponentExtended(): void;
|
|
136
|
+
export {};
|
|
137
|
+
//# sourceMappingURL=searchscope-form.component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"searchscope-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/SearchScopes/searchscope-form.component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAa,SAAS,EAAE,MAAM,eAAe,CAAC;AAGrD,OAAO,EAAE,mBAAmB,EAAkC,MAAM,+BAA+B,CAAC;AAGpG,OAAO,EAAiB,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACrG,OAAO,EAAE,0BAA0B,EAAE,MAAM,qEAAqE,CAAC;;AAEjH,UAAU,eAAe;IACrB,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAC;IACZ,8FAA8F;IAC9F,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;CAClB;AAUD,UAAU,cAAc;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CACpB;AAeD,qBAOa,kCAAmC,SAAQ,0BAA2B,YAAW,SAAS;IACnF,MAAM,EAAG,mBAAmB,CAAC;IAE7C,SAAgB,kBAAkB,EAAE,cAAc,EAAE,CAAsB;IAE1E,iCAAiC;IAC1B,YAAY,SAAM;IAClB,gBAAgB,UAAS;IACzB,cAAc,EAAE,gBAAgB,EAAE,CAAM;IACxC,gBAAgB,EAAE,uBAAuB,EAAE,CAAM;IACjD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACvC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,aAAa,CAAuB;IAE5C;;;;;;OAMG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IACrC,wBAAwB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEtC,WAAW,IAAI,IAAI;IAKnC;;;;;;OAMG;IACI,UAAU,IAAI,IAAI;IAiElB,aAAa,IAAI,IAAI;IAM5B;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAuBtC;;;;OAIG;IACmB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAuB/C;;;;OAIG;IACH,IAAW,2BAA2B,IAAI,MAAM,CAG/C;IAED,IAAW,2BAA2B,CAAC,KAAK,EAAE,MAAM,EAUnD;IAED;;;OAGG;IACH,IAAW,uBAAuB,IAAI,OAAO,CAG5C;IAED;;;OAGG;IACI,oBAAoB,UAAS;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,cAAc,CAAkC;IAExD,IAAW,aAAa,IAAI,eAAe,EAAE,CAW5C;IAED;;;;OAIG;IACI,qBAAqB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAsB9E;;;;;OAKG;IACU,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IA6B7C,OAAO,CAAC,WAAW;IAkCnB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,gBAAgB;yCA9Uf,kCAAkC;2CAAlC,kCAAkC;CAuV9C;AAED,wBAAgB,sCAAsC,IAAI,IAAI,CAI7D"}
|