@praxisui/list 10.0.0-rc.20 → 10.0.0-rc.21
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/ai/component-registry.json +2 -2
- package/fesm2022/praxisui-list.mjs +29 -46
- package/package.json +6 -6
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "1.0.0",
|
|
3
|
-
"generatedAt": "2026-10-
|
|
3
|
+
"generatedAt": "2026-10-15T04:35:19.773Z",
|
|
4
4
|
"packageName": "@praxisui/list",
|
|
5
|
-
"packageVersion": "10.0.0-rc.
|
|
5
|
+
"packageVersion": "10.0.0-rc.21",
|
|
6
6
|
"sourceRegistry": "praxis-component-registry-ingestion",
|
|
7
7
|
"sourceRegistryVersion": "1.0.0",
|
|
8
8
|
"componentCount": 1,
|
|
@@ -36,8 +36,8 @@ import * as i1$1 from '@angular/forms';
|
|
|
36
36
|
import { FormControl, ReactiveFormsModule, FormsModule, FormGroup } from '@angular/forms';
|
|
37
37
|
import * as i15 from '@angular/cdk/scrolling';
|
|
38
38
|
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
39
|
-
import { BehaviorSubject, combineLatest, of, firstValueFrom, Subject, debounceTime, distinctUntilChanged as distinctUntilChanged$1, takeUntil as takeUntil$1, Subscription } from 'rxjs';
|
|
40
|
-
import { auditTime, map, distinctUntilChanged, switchMap, catchError, finalize, shareReplay, take, takeUntil,
|
|
39
|
+
import { BehaviorSubject, combineLatest, of, firstValueFrom, Subject, debounceTime, distinctUntilChanged as distinctUntilChanged$1, takeUntil as takeUntil$1, timer, defer, Subscription } from 'rxjs';
|
|
40
|
+
import { auditTime, map, distinctUntilChanged, switchMap, catchError, finalize, shareReplay, take, takeUntil, defaultIfEmpty } from 'rxjs/operators';
|
|
41
41
|
import { PraxisRichContent } from '@praxisui/rich-content';
|
|
42
42
|
import { SettingsPanelService, SETTINGS_PANEL_DATA } from '@praxisui/settings-panel';
|
|
43
43
|
import { BaseAiAdapter, withAuthoringScopePolicy, shouldRoutePromptToGovernedDecision, createPraxisAssistantViewportLayout, AiBackendApiService, PraxisAssistantSessionRegistryService, PraxisAssistantTurnOrchestratorService, PraxisAiAssistantShellComponent } from '@praxisui/ai';
|
|
@@ -13540,7 +13540,10 @@ class PraxisListConfigEditor {
|
|
|
13540
13540
|
this.lastJson = this.initialJson;
|
|
13541
13541
|
// Start schema watcher and emit initial value
|
|
13542
13542
|
this.setupSchemaWatcher();
|
|
13543
|
-
this.resourcePathChanges.next(
|
|
13543
|
+
this.resourcePathChanges.next({
|
|
13544
|
+
path: String(this.working?.dataSource?.resourcePath || '').trim(),
|
|
13545
|
+
immediate: false,
|
|
13546
|
+
});
|
|
13544
13547
|
}
|
|
13545
13548
|
ip = inject(IconPickerService);
|
|
13546
13549
|
tx(text, params) {
|
|
@@ -13745,23 +13748,20 @@ class PraxisListConfigEditor {
|
|
|
13745
13748
|
this.chipColorMapEntries = [];
|
|
13746
13749
|
this.chipLabelMapEntries = [];
|
|
13747
13750
|
}
|
|
13748
|
-
// Debounced schema loader for resourcePath
|
|
13749
13751
|
setupSchemaWatcher() {
|
|
13750
13752
|
this.resourcePathChanges
|
|
13751
|
-
.pipe(
|
|
13752
|
-
|
|
13753
|
-
|
|
13754
|
-
|
|
13753
|
+
.pipe(distinctUntilChanged((previous, current) => !current.immediate && previous.path === current.path),
|
|
13754
|
+
// Invalidate the old request before waiting for a text edit to settle.
|
|
13755
|
+
switchMap(({ path, immediate }) => {
|
|
13756
|
+
const crud = this.crud;
|
|
13757
|
+
if (!path || !crud)
|
|
13755
13758
|
return of([]);
|
|
13756
|
-
|
|
13757
|
-
|
|
13758
|
-
|
|
13759
|
-
return
|
|
13760
|
-
}
|
|
13761
|
-
|
|
13762
|
-
return of([]);
|
|
13763
|
-
}
|
|
13764
|
-
}), takeUntilDestroyed())
|
|
13759
|
+
this.setEditorBusy(true);
|
|
13760
|
+
return (immediate ? of(0) : timer(300)).pipe(switchMap(() => defer(() => {
|
|
13761
|
+
crud.configure(path);
|
|
13762
|
+
return crud.getSchema();
|
|
13763
|
+
})), catchError(() => of([])), defaultIfEmpty([]));
|
|
13764
|
+
}), takeUntilDestroyed(this.destroyRef))
|
|
13765
13765
|
.subscribe((fields) => {
|
|
13766
13766
|
this.fields = (fields || [])
|
|
13767
13767
|
.map((f) => f?.name || f?.field || f?.key)
|
|
@@ -13771,35 +13771,16 @@ class PraxisListConfigEditor {
|
|
|
13771
13771
|
});
|
|
13772
13772
|
}
|
|
13773
13773
|
loadFieldsFromResource(resourcePath) {
|
|
13774
|
-
|
|
13775
|
-
|
|
13776
|
-
|
|
13777
|
-
|
|
13778
|
-
this.verify();
|
|
13779
|
-
return;
|
|
13780
|
-
}
|
|
13781
|
-
this.setEditorBusy(true);
|
|
13782
|
-
try {
|
|
13783
|
-
this.crud.configure(path);
|
|
13784
|
-
this.crud
|
|
13785
|
-
.getSchema()
|
|
13786
|
-
.pipe(catchError(() => of([])))
|
|
13787
|
-
.subscribe((fields) => {
|
|
13788
|
-
this.fields = (fields || [])
|
|
13789
|
-
.map((f) => f?.name || f?.field || f?.key)
|
|
13790
|
-
.filter((n) => !!n);
|
|
13791
|
-
this.setEditorBusy(false);
|
|
13792
|
-
this.verify();
|
|
13793
|
-
});
|
|
13794
|
-
}
|
|
13795
|
-
catch {
|
|
13796
|
-
this.fields = [];
|
|
13797
|
-
this.setEditorBusy(false);
|
|
13798
|
-
this.verify();
|
|
13799
|
-
}
|
|
13774
|
+
this.resourcePathChanges.next({
|
|
13775
|
+
path: String(resourcePath ?? '').trim(),
|
|
13776
|
+
immediate: true,
|
|
13777
|
+
});
|
|
13800
13778
|
}
|
|
13801
13779
|
onResourcePathChange(value) {
|
|
13802
|
-
this.resourcePathChanges.next(
|
|
13780
|
+
this.resourcePathChanges.next({
|
|
13781
|
+
path: String(value ?? '').trim(),
|
|
13782
|
+
immediate: false,
|
|
13783
|
+
});
|
|
13803
13784
|
this.markDirty();
|
|
13804
13785
|
this.verify();
|
|
13805
13786
|
}
|
|
@@ -13853,7 +13834,7 @@ class PraxisListConfigEditor {
|
|
|
13853
13834
|
});
|
|
13854
13835
|
this.syncDirtyStateNow();
|
|
13855
13836
|
this.markDirty();
|
|
13856
|
-
this.
|
|
13837
|
+
this.loadFieldsFromResource('');
|
|
13857
13838
|
}
|
|
13858
13839
|
getLocalDataRows() {
|
|
13859
13840
|
const data = this.working?.dataSource?.data;
|
|
@@ -14497,7 +14478,9 @@ class PraxisListConfigEditor {
|
|
|
14497
14478
|
this.isValid$.next(true);
|
|
14498
14479
|
}
|
|
14499
14480
|
finally {
|
|
14500
|
-
this.
|
|
14481
|
+
this.loadFieldsFromResource(this.getActiveDataSourceMode() === 'remote'
|
|
14482
|
+
? String(this.working?.dataSource?.resourcePath || '')
|
|
14483
|
+
: '');
|
|
14501
14484
|
}
|
|
14502
14485
|
}
|
|
14503
14486
|
onLayoutChanged() {
|
package/package.json
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/list",
|
|
3
|
-
"version": "10.0.0-rc.
|
|
3
|
+
"version": "10.0.0-rc.21",
|
|
4
4
|
"description": "List components and helpers for Praxis UI.",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
|
7
7
|
"@angular/core": "^21.0.0",
|
|
8
8
|
"@angular/cdk": "^21.0.0",
|
|
9
9
|
"@angular/material": "^21.0.0",
|
|
10
|
-
"@praxisui/dynamic-fields": "^10.0.0-rc.
|
|
10
|
+
"@praxisui/dynamic-fields": "^10.0.0-rc.21",
|
|
11
11
|
"rxjs": ">=7 <9",
|
|
12
12
|
"@angular/forms": "^21.0.0",
|
|
13
13
|
"@angular/router": "^21.0.0",
|
|
14
|
-
"@praxisui/ai": "^10.0.0-rc.
|
|
15
|
-
"@praxisui/core": "^10.0.0-rc.
|
|
16
|
-
"@praxisui/rich-content": "^10.0.0-rc.
|
|
17
|
-
"@praxisui/settings-panel": "^10.0.0-rc.
|
|
14
|
+
"@praxisui/ai": "^10.0.0-rc.21",
|
|
15
|
+
"@praxisui/core": "^10.0.0-rc.21",
|
|
16
|
+
"@praxisui/rich-content": "^10.0.0-rc.21",
|
|
17
|
+
"@praxisui/settings-panel": "^10.0.0-rc.21"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"tslib": "^2.3.0",
|