@praxisui/page-builder 9.0.68-rc.0 → 9.0.68-rc.2
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 +147 -3
- package/ai/component-registry.json +76 -10
- package/fesm2022/praxisui-page-builder.mjs +763 -348
- package/package.json +4 -4
- package/types/praxisui-page-builder.d.ts +85 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@praxisui/page-builder",
|
|
3
|
-
"version": "9.0.68-rc.
|
|
3
|
+
"version": "9.0.68-rc.2",
|
|
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": "^9.0.68-rc.
|
|
12
|
-
"@praxisui/core": "^9.0.68-rc.
|
|
13
|
-
"@praxisui/settings-panel": "^9.0.68-rc.
|
|
11
|
+
"@praxisui/ai": "^9.0.68-rc.2",
|
|
12
|
+
"@praxisui/core": "^9.0.68-rc.2",
|
|
13
|
+
"@praxisui/settings-panel": "^9.0.68-rc.2",
|
|
14
14
|
"rxjs": "~7.8.0"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
@@ -2,7 +2,7 @@ import { MatDialogRef, MatDialog } from '@angular/material/dialog';
|
|
|
2
2
|
import * as _angular_core from '@angular/core';
|
|
3
3
|
import { EventEmitter, OnInit, WritableSignal, InjectionToken, Provider, OnChanges, OnDestroy, Type, SimpleChanges } from '@angular/core';
|
|
4
4
|
import * as _praxisui_core from '@praxisui/core';
|
|
5
|
-
import { ComponentDocMeta, WidgetShellConfig, ComponentMetadataRegistry, PraxisI18nService, SettingsEditorSection, EndpointRef, PraxisTextValue, WidgetShellPresetCategory, CompositionLink, WidgetShellAction, WidgetPageAuthoringCapabilities, PortContract, ComponentPortPathSegment, LinkIntent, WidgetPageDefinition, SurfaceOpenActionEditorComponent, TransformKind, TransformPipeline, SurfaceOpenPayload, WidgetPageDeviceKind, SettingsValueProvider as SettingsValueProvider$1, WidgetShellPresetDefinition, WidgetPageGroupingDefinition, BUILTIN_PAGE_LAYOUT_PRESETS, BUILTIN_PAGE_THEME_PRESETS, PageIdentity, WidgetStateNode, WidgetDerivedStateNode, AiCapability, AiCapabilityCategory, AiCapabilityCatalog, AiValueKind,
|
|
5
|
+
import { ComponentDocMeta, WidgetShellConfig, ComponentMetadataRegistry, PraxisI18nService, SettingsEditorSection, EndpointRef, PraxisTextValue, WidgetShellPresetCategory, CompositionLink, WidgetShellAction, WidgetPageAuthoringCapabilities, PortContract, ComponentPortPathSegment, LinkIntent, WidgetPageDefinition, SurfaceOpenActionEditorComponent, TransformKind, TransformPipeline, SurfaceOpenPayload, WidgetPageDeviceKind, SettingsValueProvider as SettingsValueProvider$1, WidgetShellPresetDefinition, WidgetPageCanvasLayout, WidgetPageGroupingDefinition, BUILTIN_PAGE_LAYOUT_PRESETS, BUILTIN_PAGE_THEME_PRESETS, PageIdentity, WidgetStateNode, WidgetDerivedStateNode, AiCapability, AiCapabilityCategory, AiCapabilityCatalog, AiValueKind, WidgetPageDeviceLayouts, WidgetPageSlotAssignments, WidgetPageStateInput, WidgetInstance, TransformOutputHint, TransformSemanticKind, ConfigAuthoringSource, DomainKnowledgeChangeSetRequest, DomainKnowledgeChangeSet, DomainKnowledgeChangeSetTimelineResponse, DomainKnowledgeChangeSetFilters, DomainKnowledgeValidationResponse, DomainKnowledgeStatusTransitionRequest, DomainRuleIntakeRequest, DomainRuleIntakeResponse, DomainRuleDefinitionRequest, DomainRuleDefinition, DomainRuleSimulationRequest, DomainRuleSimulationResponse, DomainRuleStatusTransitionRequest, DomainRulePublicationRequest, DomainRulePublicationResponse, DomainRuleMaterializationFilters, DomainRuleMaterialization, DomainRuleTimelineResponse, PraxisRuntimeComponentObservationEnvelope, ComponentContextPack, ComponentAuthoringManifest, DiagnosticRecord, NestedPortCatalogRegistry, CompositionValidatorService, ApiUrlEntry, DynamicWidgetPageComponent, ConfigDocument, WidgetEventEnvelope, ObservabilityAgenticTurnMetrics, SettingsPanelBridge, ObservabilityAgenticTurnMetricBucket, RichTimelineItem } from '@praxisui/core';
|
|
6
6
|
import * as rxjs from 'rxjs';
|
|
7
7
|
import { BehaviorSubject, Observable } from 'rxjs';
|
|
8
8
|
import { FormGroup, FormControl, FormArray, AbstractControl } from '@angular/forms';
|
|
@@ -210,10 +210,16 @@ declare class WidgetShellEditorComponent implements SettingsValueProvider {
|
|
|
210
210
|
collapsible: FormControl<boolean>;
|
|
211
211
|
cardBg: FormControl<string>;
|
|
212
212
|
cardBorder: FormControl<string>;
|
|
213
|
+
cardBorderWidth: FormControl<string>;
|
|
214
|
+
cardBorderStyle: FormControl<string>;
|
|
213
215
|
cardRadius: FormControl<string>;
|
|
214
216
|
cardShadow: FormControl<string>;
|
|
217
|
+
cardFilter: FormControl<string>;
|
|
218
|
+
cardFallbackBg: FormControl<string>;
|
|
215
219
|
headerBg: FormControl<string>;
|
|
216
220
|
headerBorder: FormControl<string>;
|
|
221
|
+
headerBorderWidth: FormControl<string>;
|
|
222
|
+
headerBorderStyle: FormControl<string>;
|
|
217
223
|
titleColor: FormControl<string>;
|
|
218
224
|
subtitleColor: FormControl<string>;
|
|
219
225
|
iconColor: FormControl<string>;
|
|
@@ -257,6 +263,7 @@ declare class WidgetShellEditorComponent implements SettingsValueProvider {
|
|
|
257
263
|
selectPreset(id: string): void;
|
|
258
264
|
presetLabel(preset: ShellPresetOption): string;
|
|
259
265
|
presetDescription(preset: ShellPresetOption): string;
|
|
266
|
+
effectivePresetLabel(): string;
|
|
260
267
|
presetTitle(): string;
|
|
261
268
|
noPresetLabel(): string;
|
|
262
269
|
noPresetDescription(): string;
|
|
@@ -1117,6 +1124,75 @@ declare class DynamicPageConfigEditorComponent implements OnInit, SettingsValueP
|
|
|
1117
1124
|
presets?: unknown;
|
|
1118
1125
|
pagePreset?: string | null;
|
|
1119
1126
|
pageChange: EventEmitter<WidgetPageDefinition>;
|
|
1127
|
+
private arrangementFeedback?;
|
|
1128
|
+
private focusArrangementFeedback;
|
|
1129
|
+
readonly workspaceTab: WritableSignal<number>;
|
|
1130
|
+
readonly arrangementSelection: WritableSignal<string>;
|
|
1131
|
+
readonly arrangementChoices: readonly [{
|
|
1132
|
+
readonly id: "stack";
|
|
1133
|
+
readonly weights: readonly [1];
|
|
1134
|
+
}, {
|
|
1135
|
+
readonly id: "compare";
|
|
1136
|
+
readonly weights: readonly [1, 1];
|
|
1137
|
+
}, {
|
|
1138
|
+
readonly id: "primary";
|
|
1139
|
+
readonly weights: readonly [2, 1];
|
|
1140
|
+
}, {
|
|
1141
|
+
readonly id: "secondary";
|
|
1142
|
+
readonly weights: readonly [1, 2];
|
|
1143
|
+
}, {
|
|
1144
|
+
readonly id: "grid";
|
|
1145
|
+
readonly weights: readonly [1, 1, 1];
|
|
1146
|
+
}, {
|
|
1147
|
+
readonly id: "center";
|
|
1148
|
+
readonly weights: readonly [1, 2, 1];
|
|
1149
|
+
}, {
|
|
1150
|
+
readonly id: "wide-left";
|
|
1151
|
+
readonly weights: readonly [3, 1];
|
|
1152
|
+
}, {
|
|
1153
|
+
readonly id: "wide-right";
|
|
1154
|
+
readonly weights: readonly [1, 3];
|
|
1155
|
+
}, {
|
|
1156
|
+
readonly id: "four";
|
|
1157
|
+
readonly weights: readonly [1, 1, 1, 1];
|
|
1158
|
+
}];
|
|
1159
|
+
arrangementWidths(id: string): number[];
|
|
1160
|
+
arrangementFits(id: string): boolean;
|
|
1161
|
+
themeTokens(id: string): Record<string, string>;
|
|
1162
|
+
shellName(id: string): string;
|
|
1163
|
+
shellDescription(preset: WidgetShellPresetDefinition): string;
|
|
1164
|
+
previewRowCount(before: WidgetPageCanvasLayout, after: WidgetPageCanvasLayout): number;
|
|
1165
|
+
previewItems(canvas: WidgetPageCanvasLayout): {
|
|
1166
|
+
key: string;
|
|
1167
|
+
number: number;
|
|
1168
|
+
label: string;
|
|
1169
|
+
col: number;
|
|
1170
|
+
row: number;
|
|
1171
|
+
colSpan: number;
|
|
1172
|
+
rowSpan: number;
|
|
1173
|
+
contentSize?: "auto" | {
|
|
1174
|
+
heightPx: number;
|
|
1175
|
+
offsetTopPx?: number;
|
|
1176
|
+
};
|
|
1177
|
+
zIndex?: number;
|
|
1178
|
+
constraints?: _praxisui_core.WidgetPageCanvasConstraints;
|
|
1179
|
+
}[];
|
|
1180
|
+
readonly arrangementPreview: WritableSignal<{
|
|
1181
|
+
source: string;
|
|
1182
|
+
before: WidgetPageCanvasLayout;
|
|
1183
|
+
canvas: WidgetPageCanvasLayout;
|
|
1184
|
+
keys: string[];
|
|
1185
|
+
} | null>;
|
|
1186
|
+
readonly arrangementMessage: WritableSignal<string>;
|
|
1187
|
+
readonly arrangementUndoAvailable: WritableSignal<boolean>;
|
|
1188
|
+
private arrangedItems;
|
|
1189
|
+
private arrangementAppliedDocument;
|
|
1190
|
+
private arrangementSourcePage;
|
|
1191
|
+
private arrangementGeometry;
|
|
1192
|
+
private previousArrangementItems;
|
|
1193
|
+
prepareArrangement(id: string): void;
|
|
1194
|
+
useArrangement(): void;
|
|
1195
|
+
undoArrangement(): void;
|
|
1120
1196
|
readonly layoutPresetEntries: LayoutPresetEntry[];
|
|
1121
1197
|
readonly themePresetEntries: ThemePresetEntry[];
|
|
1122
1198
|
readonly shellPresetEntries: readonly WidgetShellPresetDefinition[];
|
|
@@ -1175,9 +1251,12 @@ declare class DynamicPageConfigEditorComponent implements OnInit, SettingsValueP
|
|
|
1175
1251
|
get selectedThemePresetEntry(): ThemePresetEntry | null;
|
|
1176
1252
|
get recommendedThemePresetEntry(): ThemePresetEntry | null;
|
|
1177
1253
|
get canvasSummaryLabel(): string;
|
|
1254
|
+
private focusEditorTab;
|
|
1255
|
+
selectDetailTab(index: number): void;
|
|
1178
1256
|
onSelectedTabIndexChange(index: number): void;
|
|
1179
1257
|
getSettingsValue(): WidgetPageDefinition | null;
|
|
1180
1258
|
onSave(): WidgetPageDefinition | null;
|
|
1259
|
+
acceptAppliedValue(value: unknown): void;
|
|
1181
1260
|
reset(): void;
|
|
1182
1261
|
pinRecommendedThemePreset(): void;
|
|
1183
1262
|
get hasCanvasWidgets(): boolean;
|
|
@@ -1198,6 +1277,7 @@ declare class DynamicPageConfigEditorComponent implements OnInit, SettingsValueP
|
|
|
1198
1277
|
private draftFingerprint;
|
|
1199
1278
|
limitsGeometryLabel(): string;
|
|
1200
1279
|
limitsUseContentHeight(): boolean;
|
|
1280
|
+
private geometryFingerprint;
|
|
1201
1281
|
private applyCanvasLimits;
|
|
1202
1282
|
private readRenderedIssue;
|
|
1203
1283
|
protected refreshRenderedValidation(): void;
|
|
@@ -1207,11 +1287,14 @@ declare class DynamicPageConfigEditorComponent implements OnInit, SettingsValueP
|
|
|
1207
1287
|
private replaceGroupingNodes;
|
|
1208
1288
|
private buildCurrentPage;
|
|
1209
1289
|
private buildGrouping;
|
|
1290
|
+
private buildPageContext;
|
|
1291
|
+
private buildCanvas;
|
|
1210
1292
|
/** A grid must place every existing widget before replacing the flow layout. */
|
|
1211
1293
|
private completeCanvasItems;
|
|
1212
1294
|
private buildDeviceLayouts;
|
|
1213
1295
|
private invalidate;
|
|
1214
1296
|
private refreshPanelState;
|
|
1297
|
+
get layoutPresetOptions(): WidgetPageDefinition['layoutPresetOptions'];
|
|
1215
1298
|
private currentPageInput;
|
|
1216
1299
|
private parsePage;
|
|
1217
1300
|
private parseJson;
|
|
@@ -1437,6 +1520,7 @@ declare class PageConfigEditorComponent implements SettingsValueProvider$1 {
|
|
|
1437
1520
|
getSettingsValue(): PageDefinition | null;
|
|
1438
1521
|
onSave(): PageDefinition | null;
|
|
1439
1522
|
private lookupPresetLabel;
|
|
1523
|
+
get layoutPresetOptions(): WidgetPageDefinition['layoutPresetOptions'];
|
|
1440
1524
|
private currentPageInput;
|
|
1441
1525
|
private extractShellPreset;
|
|
1442
1526
|
private buildCurrentPage;
|