@praxisui/page-builder 9.0.68-rc.3 → 10.0.0-rc.3
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/README.md +20 -1
- package/ai/component-registry.json +2 -2
- package/fesm2022/praxisui-page-builder.mjs +714 -304
- package/package.json +4 -4
- package/types/praxisui-page-builder.d.ts +31 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/page-builder",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.0-rc.3",
|
|
4
4
|
"description": "Page and widget builder utilities for Praxis UI (grid, dynamic widgets, editors).",
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0",
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
"@angular/forms": "^21.0.0",
|
|
9
9
|
"@angular/cdk": "^21.0.0",
|
|
10
10
|
"@angular/material": "^21.0.0",
|
|
11
|
-
"@praxisui/ai": "^
|
|
12
|
-
"@praxisui/core": "^
|
|
13
|
-
"@praxisui/settings-panel": "^
|
|
11
|
+
"@praxisui/ai": "^10.0.0-rc.3",
|
|
12
|
+
"@praxisui/core": "^10.0.0-rc.3",
|
|
13
|
+
"@praxisui/settings-panel": "^10.0.0-rc.3",
|
|
14
14
|
"rxjs": "~7.8.0"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
@@ -475,6 +475,7 @@ type ConnectionEditorDockTab = 'json' | 'links' | 'derived' | 'export';
|
|
|
475
475
|
type ConnectionEditorConditionPreset = 'source-present' | 'source-id-present';
|
|
476
476
|
type ConnectionEditorPolicyPreset = 'stable-delivery' | 'skip-missing';
|
|
477
477
|
type ConnectionEditorVisualDensity = 'guided' | 'full';
|
|
478
|
+
type ConnectionEditorGlobalActionPayloadSource = 'expression' | 'literal' | 'delivery';
|
|
478
479
|
interface DragState {
|
|
479
480
|
port: ConnectionEditorPort;
|
|
480
481
|
source: ConnectionEditorPoint;
|
|
@@ -540,11 +541,13 @@ interface ConnectionEditorDockTabDefinition {
|
|
|
540
541
|
glyph: string;
|
|
541
542
|
}
|
|
542
543
|
declare class ConnectionEditorComponent {
|
|
544
|
+
private static nextDraftDescriptionInstanceId;
|
|
543
545
|
readonly stateNodeId = "__page_state__";
|
|
544
546
|
protected readonly minZoom = 0.2;
|
|
545
547
|
protected readonly maxZoom = 1.8;
|
|
546
548
|
readonly nodeViewBox = "0 0 168 168";
|
|
547
549
|
readonly canvasViewBox = "0 0 900 540";
|
|
550
|
+
readonly draftDescriptionIdPrefix: string;
|
|
548
551
|
readonly nodeHaloPaths: string[];
|
|
549
552
|
private readonly injector;
|
|
550
553
|
private readonly i18n;
|
|
@@ -571,6 +574,7 @@ declare class ConnectionEditorComponent {
|
|
|
571
574
|
readonly draftPorts: _angular_core.Signal<ConnectionEditorPort[]>;
|
|
572
575
|
readonly draftSources: _angular_core.Signal<ConnectionEditorPort[]>;
|
|
573
576
|
readonly draftTargets: _angular_core.Signal<ConnectionEditorPort[]>;
|
|
577
|
+
readonly draftEndpointsComplete: _angular_core.Signal<boolean>;
|
|
574
578
|
readonly draftDiagnostics: _angular_core.Signal<_praxisui_core.DiagnosticRecord[]>;
|
|
575
579
|
readonly draftDuplicate: _angular_core.Signal<boolean>;
|
|
576
580
|
readonly draftExistingRoute: _angular_core.Signal<ConnectionEditorConnection | null>;
|
|
@@ -595,6 +599,8 @@ declare class ConnectionEditorComponent {
|
|
|
595
599
|
readonly hoveredNodeId: _angular_core.WritableSignal<string | null>;
|
|
596
600
|
readonly visualDensity: _angular_core.WritableSignal<ConnectionEditorVisualDensity>;
|
|
597
601
|
private readonly invalidSurfaceDrafts;
|
|
602
|
+
/** Keeps the mounted Surface editor's local draft intact while expression is the effective source. */
|
|
603
|
+
private readonly surfaceOpenPayloadSnapshots;
|
|
598
604
|
readonly surfaceDraftInvalid: _angular_core.WritableSignal<boolean>;
|
|
599
605
|
onSurfaceDraftValidity(source: SurfaceOpenActionEditorComponent, connection: ConnectionEditorConnection, valid: boolean): void;
|
|
600
606
|
readonly globalActionPayloadError: _angular_core.WritableSignal<string | null>;
|
|
@@ -958,6 +964,10 @@ declare class ConnectionEditorComponent {
|
|
|
958
964
|
describeSource(edge: ConnectionsViewerEdge): string;
|
|
959
965
|
describeTarget(edge: ConnectionsViewerEdge): string;
|
|
960
966
|
globalActionPayloadText(connection: ConnectionEditorConnection): string;
|
|
967
|
+
globalActionPayloadSource(connection: ConnectionEditorConnection): ConnectionEditorGlobalActionPayloadSource;
|
|
968
|
+
globalActionPayloadExpression(connection: ConnectionEditorConnection): string;
|
|
969
|
+
globalActionHasStructuredPayload(connection: ConnectionEditorConnection): boolean;
|
|
970
|
+
useGlobalActionPayloadSource(connection: ConnectionEditorConnection, source: Extract<ConnectionEditorGlobalActionPayloadSource, 'expression' | 'literal'>): void;
|
|
961
971
|
globalActionPayloadExample(connection: ConnectionEditorConnection): string;
|
|
962
972
|
surfaceOpenPayloadValue(connection: ConnectionEditorConnection): SurfaceOpenPayload | null;
|
|
963
973
|
surfaceOpenHostKind(connection: ConnectionEditorConnection): string;
|
|
@@ -971,6 +981,7 @@ declare class ConnectionEditorComponent {
|
|
|
971
981
|
changeDraftPickPath(index: number, path: string): void;
|
|
972
982
|
draftPortLabel(port: ConnectionEditorPort): string;
|
|
973
983
|
draftEndpointLabel(id: string): string;
|
|
984
|
+
draftPortDescription(id: string): string;
|
|
974
985
|
applyDraft(): void;
|
|
975
986
|
cancelDraft(): void;
|
|
976
987
|
private clearDraft;
|
|
@@ -1009,6 +1020,14 @@ declare class ConnectionEditorComponent {
|
|
|
1009
1020
|
private scrollActiveModeIntoView;
|
|
1010
1021
|
private focusDockTab;
|
|
1011
1022
|
private focusEditorSurface;
|
|
1023
|
+
private focusNewConnectionAfterDraftCancel;
|
|
1024
|
+
private refreshSurfaceDraftValidity;
|
|
1025
|
+
private asSurfaceOpenPayload;
|
|
1026
|
+
hasInactiveSurfaceDraft(connection: ConnectionEditorConnection): boolean;
|
|
1027
|
+
private hasInvalidSurfaceDraft;
|
|
1028
|
+
private isSurfaceOpenLink;
|
|
1029
|
+
private discardSurfaceDraftState;
|
|
1030
|
+
private focusGlobalActionPayloadSourceAfterRender;
|
|
1012
1031
|
private portQualifiedLabel;
|
|
1013
1032
|
private stagePointFromEvent;
|
|
1014
1033
|
private rotationAngleForNode;
|
|
@@ -2660,6 +2679,16 @@ declare class DynamicPageBuilderComponent implements OnChanges, OnDestroy {
|
|
|
2660
2679
|
private toRecord;
|
|
2661
2680
|
private resolvePreviewCompiledFormPatch;
|
|
2662
2681
|
focusCanvasWidget(widgetKey: string): void;
|
|
2682
|
+
/**
|
|
2683
|
+
* Directly updates a single input on a rendered widget without recreating
|
|
2684
|
+
* or rerendering the canvas or sibling widgets.
|
|
2685
|
+
*/
|
|
2686
|
+
setWidgetInput(widgetKey: string, inputName: string, value: unknown): boolean;
|
|
2687
|
+
/**
|
|
2688
|
+
* Directly patches multiple inputs on a rendered widget without recreating
|
|
2689
|
+
* or rerendering the canvas or sibling widgets.
|
|
2690
|
+
*/
|
|
2691
|
+
patchWidgetInputs(widgetKey: string, inputPatch: Record<string, unknown>): boolean;
|
|
2663
2692
|
private openWidgetConfiguration;
|
|
2664
2693
|
private selectInsertedWidget;
|
|
2665
2694
|
private deferInsertedWidgetFocus;
|
|
@@ -2667,6 +2696,8 @@ declare class DynamicPageBuilderComponent implements OnChanges, OnDestroy {
|
|
|
2667
2696
|
private escapeAttributeValue;
|
|
2668
2697
|
private parsePage;
|
|
2669
2698
|
private clonePage;
|
|
2699
|
+
private clonePagePreservingInputs;
|
|
2700
|
+
private cloneInputsPreservingLiveReferences;
|
|
2670
2701
|
private clearSelectedWidgetIfMissing;
|
|
2671
2702
|
private defaultInputsFor;
|
|
2672
2703
|
private applyWidgetIdentityDefaults;
|