@praxisui/rich-content 9.0.67 → 9.0.68-rc.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/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@praxisui/rich-content",
3
- "version": "9.0.67",
3
+ "version": "9.0.68-rc.0",
4
4
  "description": "Rich content rendering and authoring primitives for Praxis UI surfaces, including semantic blocks and page-builder integration.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
7
7
  "@angular/core": "^21.0.0",
8
- "@praxisui/core": "^9.0.67",
8
+ "@angular/material": "^21.0.0",
9
+ "@praxisui/core": "^9.0.68-rc.0",
9
10
  "@angular/forms": "^21.0.0",
10
11
  "rxjs": "~7.8.0"
11
12
  },
@@ -1,6 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { OnChanges, OnInit, SimpleChanges, InjectionToken, Provider } from '@angular/core';
3
- import { RichContentDocument, RichPrimitiveNode, RichPresetReferenceNode, JsonLogicDataRecord, RichBlockHostCapabilities, RichBlockNode, RichPresenterNode, RichComposeNode, RichCardNode, RichCardMedia, RichActionButtonNode, RichCalloutNode, RichCtaGroupNode, RichKeyValueListNode, RichKeyValueItem, RichEmptyStateNode, RichPropertySheetNode, RichPropertySheetItem, RichStatGroupNode, RichStatItem, RichTabsNode, RichTabsItem, RichRecordSummaryNode, RichRecordSummaryField, RichLookupResultNode, RichLookupResultField, RichLookupCardNode, RichRelatedRecordNode, RichActionCardNode, RichDecisionPackageNode, RichDecisionPackageEvidence, RichCollapsibleCardNode, RichFormLauncherNode, RichDisclosureNode, RichAccordionNode, RichAccordionItem, RichMediaBlockNode, RichTimelineNode, RichTimelineItem, RichTextNode, RichBadgeNode, RichIconNode, RichAvatarNode, RichImageNode, RichLinkNode, RichMetricNode, RichProgressNode, SettingsValueProvider, CorePresetRef, CorePresetDescriptor, ComponentDocMeta, AiCapabilityCatalog, AiCapability, AiCapabilityCategory, AiValueKind, ComponentAuthoringManifest, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nService } from '@praxisui/core';
3
+ import { RichContentDocument, RichPrimitiveNode, RichPresetReferenceNode, JsonLogicDataRecord, RichBlockHostCapabilities, RichBlockNode, RichActionButtonNode, RichPageHeaderNode, RichPresenterNode, RichComposeNode, RichCardNode, RichCardMedia, RichCalloutNode, RichCtaGroupNode, RichKeyValueListNode, RichKeyValueItem, RichEmptyStateNode, RichPropertySheetNode, RichPropertySheetItem, RichStatGroupNode, RichStatItem, RichTabsNode, RichTabsItem, RichRecordSummaryNode, RichRecordSummaryField, RichLookupResultNode, RichLookupResultField, RichLookupCardNode, RichRelatedRecordNode, RichActionCardNode, RichDecisionPackageNode, RichDecisionPackageEvidence, RichCollapsibleCardNode, RichFormLauncherNode, RichDisclosureNode, RichAccordionNode, RichAccordionItem, RichMediaBlockNode, RichTimelineNode, RichTimelineItem, RichTextNode, RichBadgeNode, RichIconNode, RichAvatarNode, RichImageNode, RichLinkNode, RichMetricNode, RichProgressNode, SettingsValueProvider, CorePresetRef, CorePresetDescriptor, ComponentDocMeta, AiCapabilityCatalog, AiCapability, AiCapabilityCategory, AiValueKind, ComponentAuthoringManifest, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nService } from '@praxisui/core';
4
4
  import * as _praxisui_rich_content from '@praxisui/rich-content';
5
5
  import { BehaviorSubject } from 'rxjs';
6
6
 
@@ -19,6 +19,13 @@ declare class PraxisRichContent {
19
19
  private readonly runtimeNodeIds;
20
20
  private nextRuntimeNodeId;
21
21
  readonly renderableNodes: _angular_core.Signal<RenderableNode[]>;
22
+ visiblePageHeaderNodes<T extends RichBlockNode>(nodes?: T[]): T[];
23
+ resolvePageHeaderMenuLabel(action: RichActionButtonNode): string;
24
+ visiblePageHeaderOverflow(node: RichPageHeaderNode): RichActionButtonNode[];
25
+ visiblePageHeaderActions(node: RichPageHeaderNode): RichActionButtonNode[];
26
+ resolvePageHeaderLevel(node: RichPageHeaderNode): number;
27
+ resolvePageHeaderTitle(node: RichPageHeaderNode): string;
28
+ resolvePageHeaderSubtitle(node: RichPageHeaderNode): string;
22
29
  isNodeVisible(node: RichBlockNode): boolean;
23
30
  resolveNodeClasses(node: RichBlockNode): string[];
24
31
  resolveNodeStyles(node: RichBlockNode): Record<string, string | number>;
@@ -273,7 +280,7 @@ interface RichContentValidationResult {
273
280
  declare function validateRichContentDocument(value: unknown): RichContentValidationResult;
274
281
  declare function isValidRichContentDocument(value: unknown): value is RichContentDocument;
275
282
 
276
- type EditableTopLevelNode = RichTextNode | RichBadgeNode | RichIconNode | RichAvatarNode | RichImageNode | RichLinkNode | RichMetricNode | RichProgressNode | RichActionButtonNode | RichComposeNode | RichCardNode | RichCalloutNode | RichCtaGroupNode | RichKeyValueListNode | RichPropertySheetNode | RichStatGroupNode | RichTabsNode | RichEmptyStateNode | RichRecordSummaryNode | RichLookupResultNode | RichLookupCardNode | RichRelatedRecordNode | RichActionCardNode | RichDecisionPackageNode | RichFormLauncherNode | RichCollapsibleCardNode | RichDisclosureNode | RichAccordionNode | RichMediaBlockNode | RichTimelineNode | RichPresetReferenceNode;
283
+ type EditableTopLevelNode = RichTextNode | RichBadgeNode | RichIconNode | RichAvatarNode | RichImageNode | RichLinkNode | RichMetricNode | RichProgressNode | RichActionButtonNode | RichComposeNode | RichCardNode | RichPageHeaderNode | RichCalloutNode | RichCtaGroupNode | RichKeyValueListNode | RichPropertySheetNode | RichStatGroupNode | RichTabsNode | RichEmptyStateNode | RichRecordSummaryNode | RichLookupResultNode | RichLookupCardNode | RichRelatedRecordNode | RichActionCardNode | RichDecisionPackageNode | RichFormLauncherNode | RichCollapsibleCardNode | RichDisclosureNode | RichAccordionNode | RichMediaBlockNode | RichTimelineNode | RichPresetReferenceNode;
277
284
  type EditableTopLevelNodeType = EditableTopLevelNode['type'];
278
285
  type EditablePresenterNode = RichPresenterNode;
279
286
  type EditablePresenterNodeType = EditablePresenterNode['type'];
@@ -283,6 +290,7 @@ type EditableTimelineItemField = 'title' | 'titleExpr' | 'subtitle' | 'subtitleE
283
290
  type DecisionPackageStringField = 'title' | 'titleExpr' | 'subtitle' | 'subtitleExpr' | 'summary' | 'summaryExpr' | 'status' | 'statusExpr' | 'owner' | 'ownerExpr' | 'policySource' | 'policySourceExpr' | 'version' | 'versionExpr' | 'confidenceExpr' | 'risk' | 'riskExpr' | 'lastReviewed' | 'lastReviewedExpr' | 'supersedes' | 'supersedesExpr';
284
291
  type DecisionPackageEvidence = NonNullable<RichDecisionPackageNode['evidence']>[number];
285
292
  type DecisionPackageEvidenceField = 'id' | 'label' | 'labelExpr' | 'source' | 'sourceExpr';
293
+ type PageHeaderRegion = 'identity' | 'breadcrumbs' | 'primaryAction' | 'secondaryActions' | 'overflowActions' | 'relatedLinks';
286
294
  type RichContentEditorPanel = 'guided' | 'preview' | 'json';
287
295
  declare const ADVANCED_JSON_ONLY_NODE_FIELDS: readonly ["bindings", "disabledWhen", "loadWhen", "classWhen", "styleWhen"];
288
296
  type AdvancedJsonOnlyNodeField = (typeof ADVANCED_JSON_ONLY_NODE_FIELDS)[number];
@@ -305,7 +313,7 @@ declare class PraxisRichContentConfigEditor implements SettingsValueProvider, On
305
313
  readonly isDirty$: BehaviorSubject<boolean>;
306
314
  readonly isValid$: BehaviorSubject<boolean>;
307
315
  readonly isBusy$: BehaviorSubject<boolean>;
308
- readonly editableNodeTypes: ("text" | "icon" | "image" | "link" | "badge" | "avatar" | "metric" | "progress" | "actionButton" | "compose" | "card" | "callout" | "ctaGroup" | "keyValueList" | "propertySheet" | "statGroup" | "tabs" | "emptyState" | "recordSummary" | "lookupResult" | "lookupCard" | "relatedRecord" | "actionCard" | "decisionPackage" | "formLauncher" | "collapsibleCard" | "disclosure" | "accordion" | "mediaBlock" | "timeline" | "preset")[];
316
+ readonly editableNodeTypes: ("text" | "icon" | "image" | "link" | "badge" | "avatar" | "metric" | "progress" | "actionButton" | "compose" | "card" | "pageHeader" | "callout" | "ctaGroup" | "keyValueList" | "propertySheet" | "statGroup" | "tabs" | "emptyState" | "recordSummary" | "lookupResult" | "lookupCard" | "relatedRecord" | "actionCard" | "decisionPackage" | "formLauncher" | "collapsibleCard" | "disclosure" | "accordion" | "mediaBlock" | "timeline" | "preset")[];
309
317
  readonly presenterNodeTypes: ("text" | "icon" | "image" | "link" | "badge" | "avatar" | "metric" | "progress" | "actionButton")[];
310
318
  readonly cardContentNodeTypes: EditableCardContentNodeType[];
311
319
  readonly advancedJsonOnlyNodeFields: readonly ["bindings", "disabledWhen", "loadWhen", "classWhen", "styleWhen"];
@@ -316,6 +324,8 @@ declare class PraxisRichContentConfigEditor implements SettingsValueProvider, On
316
324
  newNodeType: EditableTopLevelNodeType;
317
325
  errorMessage: string;
318
326
  valid: boolean;
327
+ documentSyntaxInvalid: boolean;
328
+ readonly editorInstanceId: string;
319
329
  parsedDocument: RichContentDocument | null;
320
330
  validationIssues: RichContentValidationIssue[];
321
331
  nodeCount: number;
@@ -531,6 +541,14 @@ declare class PraxisRichContentConfigEditor implements SettingsValueProvider, On
531
541
  private syncStructuredDocumentChange;
532
542
  private createDefaultNode;
533
543
  private getDefaultPresetRef;
544
+ private pageHeader;
545
+ getPageHeaderChildren(index: number, region: PageHeaderRegion): RichPresenterNode[];
546
+ setPageHeaderIdentity(index: number, type: string): void;
547
+ addPageHeaderChild(index: number, region: PageHeaderRegion): void;
548
+ removePageHeaderChild(index: number, region: PageHeaderRegion, childIndex: number): void;
549
+ movePageHeaderChild(index: number, region: PageHeaderRegion, childIndex: number, delta: number): void;
550
+ setPageHeaderChildField(index: number, region: PageHeaderRegion, childIndex: number, field: string, value: string): void;
551
+ setPageHeaderChildNumber(index: number, region: PageHeaderRegion, childIndex: number, field: string, value: number | string | null): void;
534
552
  private ensureCardNode;
535
553
  private pruneEmptyCardInteraction;
536
554
  private ensureCardSlotNodes;