@arkcit/engine-react 0.3.7 → 0.3.8
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/engine.d.ts +11 -11
- package/dist/index.d.ts +3 -3
- package/dist/index.js +5 -0
- package/dist/renderReactNode-xwA81IXf.d.ts +110 -0
- package/dist/rendering.d.ts +1 -1
- package/dist/rendering.js +5 -0
- package/dist/static-engine.d.ts +7 -7
- package/package.json +5 -5
- package/dist/renderReactNode-DmxD8hot.d.ts +0 -109
package/dist/engine.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import React__default from 'react';
|
|
|
3
3
|
import { UIEngineProps, UINodeSize, UINodeWrapperProps } from '@arkcit/engine-core';
|
|
4
4
|
import { UINode } from '@arkcit/engine-schema';
|
|
5
5
|
import { UIRuntimeAdapter } from '@arkcit/engine-runtime';
|
|
6
|
-
import {
|
|
7
|
-
export { StaticReactWebEngineRoot } from './static-engine.js';
|
|
6
|
+
import { a as RenderReactNodeDependencies } from './renderReactNode-xwA81IXf.js';
|
|
7
|
+
export { StaticReactWebEngineRoot, StaticReactWebEngineRootArgs, StaticReactWebEngineRootDependencies, StaticRenderSafeNodeArgs } from './static-engine.js';
|
|
8
8
|
import '@arkcit/engine-render-layer';
|
|
9
9
|
|
|
10
10
|
type EngineWarningFallbackProps = {
|
|
@@ -30,7 +30,7 @@ declare class NodeErrorBoundary extends React__default.Component<NodeErrorBounda
|
|
|
30
30
|
render(): string | number | bigint | boolean | Iterable<React__default.ReactNode> | Promise<string | number | bigint | boolean | React__default.ReactPortal | React__default.ReactElement<unknown, string | React__default.JSXElementConstructor<any>> | Iterable<React__default.ReactNode> | null | undefined> | react_jsx_runtime.JSX.Element | null | undefined;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
type
|
|
33
|
+
type ReactWebUseUIEngineEffectsArgs = {
|
|
34
34
|
schema: UIEngineProps["schema"];
|
|
35
35
|
runtime: UIRuntimeAdapter;
|
|
36
36
|
onNodeResize?: ((nodeId: string, size: UINodeSize) => void) | undefined;
|
|
@@ -42,12 +42,12 @@ type UseUIEngineEffectsArgs = {
|
|
|
42
42
|
minHeightPct: number;
|
|
43
43
|
minHeightPx: number;
|
|
44
44
|
};
|
|
45
|
-
type
|
|
45
|
+
type ReactWebUseUIEngineEffectsResult = {
|
|
46
46
|
ancestorTypeMembership: Record<string, Set<string>>;
|
|
47
47
|
overlaysByNodeId: Record<string, unknown>;
|
|
48
48
|
captureFieldFocus: (target: EventTarget | null) => void;
|
|
49
49
|
};
|
|
50
|
-
type
|
|
50
|
+
type ReactWebRenderSafeNodeArgs<TInlineEditing = unknown> = {
|
|
51
51
|
node: UINode;
|
|
52
52
|
registry: NonNullable<UIEngineProps["registry"]>;
|
|
53
53
|
runtime: UIRuntimeAdapter;
|
|
@@ -77,9 +77,9 @@ type RenderSafeNodeArgs<TInlineEditing> = {
|
|
|
77
77
|
NodeWrapper: React__default.ComponentType<UINodeWrapperProps>;
|
|
78
78
|
isFormInteractiveTarget: (target: HTMLElement | null) => boolean;
|
|
79
79
|
};
|
|
80
|
-
type ReactWebEngineRootDependencies<TInlineEditing> = {
|
|
81
|
-
useUIEngineEffects: (args:
|
|
82
|
-
renderSafeNode: (args:
|
|
80
|
+
type ReactWebEngineRootDependencies<TInlineEditing = unknown> = {
|
|
81
|
+
useUIEngineEffects: (args: ReactWebUseUIEngineEffectsArgs) => ReactWebUseUIEngineEffectsResult;
|
|
82
|
+
renderSafeNode: (args: ReactWebRenderSafeNodeArgs<TInlineEditing>) => React__default.ReactNode;
|
|
83
83
|
InlineTextEditor: React__default.ComponentType<{
|
|
84
84
|
editing: TInlineEditing;
|
|
85
85
|
onChange: (value: string) => void;
|
|
@@ -87,11 +87,11 @@ type ReactWebEngineRootDependencies<TInlineEditing> = {
|
|
|
87
87
|
onCommit: () => void;
|
|
88
88
|
}>;
|
|
89
89
|
StudioNodeWrapper: React__default.ComponentType<UINodeWrapperProps>;
|
|
90
|
-
renderReactNodeDependencies:
|
|
90
|
+
renderReactNodeDependencies: RenderReactNodeDependencies<TInlineEditing>;
|
|
91
91
|
};
|
|
92
|
-
type ReactWebEngineRootArgs<TInlineEditing> = UIEngineProps & {
|
|
92
|
+
type ReactWebEngineRootArgs<TInlineEditing = unknown> = UIEngineProps & {
|
|
93
93
|
dependencies: ReactWebEngineRootDependencies<TInlineEditing>;
|
|
94
94
|
};
|
|
95
95
|
declare const ReactWebEngineRoot: <TInlineEditing = unknown>({ schema, registry, store, onNodeClick, onInlineTextEdit, onNodeResize, onNodeResizeStart, onNodeResizeEnd, onNodeDragStart, onNodeDragOverTarget, onNodeDropTarget, selectedNodeId, nodeWrapper, dependencies, }: ReactWebEngineRootArgs<TInlineEditing>) => react_jsx_runtime.JSX.Element;
|
|
96
96
|
|
|
97
|
-
export { EngineWarningFallback, NodeErrorBoundary, ReactWebEngineRoot };
|
|
97
|
+
export { EngineWarningFallback, NodeErrorBoundary, ReactWebEngineRoot, type ReactWebEngineRootArgs, type ReactWebEngineRootDependencies, type ReactWebRenderSafeNodeArgs, type ReactWebUseUIEngineEffectsArgs, type ReactWebUseUIEngineEffectsResult };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export { applyContentComposition, applyNavigationComposition } from './composition.js';
|
|
2
2
|
export { applyRenderDirectives } from './directives.js';
|
|
3
|
-
export { EngineWarningFallback, NodeErrorBoundary, ReactWebEngineRoot } from './engine.js';
|
|
4
|
-
export { StaticReactWebEngineRoot } from './static-engine.js';
|
|
3
|
+
export { EngineWarningFallback, NodeErrorBoundary, ReactWebEngineRoot, ReactWebEngineRootArgs, ReactWebEngineRootDependencies, ReactWebRenderSafeNodeArgs, ReactWebUseUIEngineEffectsArgs, ReactWebUseUIEngineEffectsResult } from './engine.js';
|
|
4
|
+
export { StaticReactWebEngineRoot, StaticReactWebEngineRootArgs, StaticReactWebEngineRootDependencies, StaticRenderSafeNodeArgs } from './static-engine.js';
|
|
5
5
|
export { useUIEngineEffects, useUIEngineState } from './hooks.js';
|
|
6
6
|
export { buildAccordionItems, buildCoverContent, buildCoverMedia, buildExpandablePanelChildren, buildScrollRevealChildren, materializeAccordionItems, materializeBoundTable, materializeChildContent, materializeCoverContent, materializeExpandablePanelContent, materializeTabsContent } from './materialization.js';
|
|
7
7
|
export { BoundTableColumn, BoundTableRow, ReactNodeRenderPlan, ResolvedBoundTableData, ResolvedReactNode, buildNodeResetToken, configurePreviewLinkBehavior, finalizeRenderedNode, getGridItemWrapperProps, normalizeRenderableChild, prepareRenderableChildren, resolveBoundTableData, resolveReactNodePlan, resolveResolvedReactNode, toBoolean } from './rendering.js';
|
|
8
|
-
export { r as renderReactNode } from './renderReactNode-
|
|
8
|
+
export { R as RenderReactNodeArgs, a as RenderReactNodeDependencies, r as renderReactNode } from './renderReactNode-xwA81IXf.js';
|
|
9
9
|
export { AccordionItemDescriptor, CoverContentDescriptor, ExpandablePanelContentDescriptor, ResolvedNodeContentDescriptor as ResolvedChildContentDescriptor, ResolvedNodeChildDescriptor as ResolvedChildDescriptor, TabsContentDescriptor } from '@arkcit/engine-render-layer';
|
|
10
10
|
export { ComponentRegistry, ComponentRegistryEntry } from '@arkcit/engine-core';
|
|
11
11
|
import 'react';
|
package/dist/index.js
CHANGED
|
@@ -1506,6 +1506,11 @@ var normalizeRenderableChild = (value) => {
|
|
|
1506
1506
|
const nestedChildren = candidate.props.children;
|
|
1507
1507
|
return normalizeRenderableChild(nestedChildren);
|
|
1508
1508
|
}
|
|
1509
|
+
for (const key of ["children", "label", "title", "content", "text", "value"]) {
|
|
1510
|
+
if (key in candidate) {
|
|
1511
|
+
return normalizeRenderableChild(candidate[key]);
|
|
1512
|
+
}
|
|
1513
|
+
}
|
|
1509
1514
|
}
|
|
1510
1515
|
return null;
|
|
1511
1516
|
};
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { ComponentRegistry } from '@arkcit/engine-core';
|
|
3
|
+
import { UINode } from '@arkcit/engine-schema';
|
|
4
|
+
import { UIRuntimeAdapter } from '@arkcit/engine-runtime';
|
|
5
|
+
import { ContentCompositionPlan, RenderDirectivePlan, NavigationCompositionPlan, FinalRenderPlan } from '@arkcit/engine-render-layer';
|
|
6
|
+
|
|
7
|
+
type RenderReactNodeDependencies<TInlineEditing = unknown> = {
|
|
8
|
+
applyStudioOverlayComponentProps: (args: {
|
|
9
|
+
node: UINode;
|
|
10
|
+
componentProps: Record<string, unknown>;
|
|
11
|
+
runtime: UIRuntimeAdapter;
|
|
12
|
+
overlaysByNodeId: Record<string, unknown>;
|
|
13
|
+
renderBindingProps: Record<string, unknown>;
|
|
14
|
+
resolvedChildContent: React__default.ReactNode | null;
|
|
15
|
+
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
16
|
+
isStudioRendererContext: boolean;
|
|
17
|
+
dropdownOpenByNodeId: Record<string, boolean>;
|
|
18
|
+
setDropdownOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
19
|
+
}) => void;
|
|
20
|
+
applyContentComposition: (args: {
|
|
21
|
+
node: UINode;
|
|
22
|
+
componentProps: Record<string, unknown>;
|
|
23
|
+
isStudioRendererContext: boolean;
|
|
24
|
+
internalStudioNodeTypes: Set<string>;
|
|
25
|
+
schemaNodes: UINode[];
|
|
26
|
+
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
27
|
+
captureFieldFocus: (target: EventTarget | null) => void;
|
|
28
|
+
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
29
|
+
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
30
|
+
findNodeById: (nodeId: string, nodes: UINode[]) => UINode | null;
|
|
31
|
+
runtime: UIRuntimeAdapter;
|
|
32
|
+
plans?: ContentCompositionPlan[];
|
|
33
|
+
}) => React__default.ReactNode | null;
|
|
34
|
+
applyRenderDirectives: (args: {
|
|
35
|
+
node: UINode;
|
|
36
|
+
componentProps: Record<string, unknown>;
|
|
37
|
+
renderBindingProps: Record<string, unknown>;
|
|
38
|
+
runtime: UIRuntimeAdapter;
|
|
39
|
+
plans?: RenderDirectivePlan[];
|
|
40
|
+
}) => void;
|
|
41
|
+
applyNavigationComposition: (args: {
|
|
42
|
+
node: UINode;
|
|
43
|
+
componentProps: Record<string, unknown>;
|
|
44
|
+
isStudioRendererContext: boolean;
|
|
45
|
+
selectedNodeId: string | null;
|
|
46
|
+
wizardActiveStepByNodeId: Record<string, string>;
|
|
47
|
+
accordionOpenIdsByNodeId: Record<string, string[]>;
|
|
48
|
+
expandablePanelOpenByNodeId: Record<string, boolean>;
|
|
49
|
+
runtime: UIRuntimeAdapter;
|
|
50
|
+
setWizardActiveStepByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string>>>;
|
|
51
|
+
setAccordionOpenIdsByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string[]>>>;
|
|
52
|
+
setExpandablePanelOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
53
|
+
onNodeClick?: (nodeId: string) => void;
|
|
54
|
+
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
55
|
+
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
56
|
+
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
57
|
+
captureFieldFocus: (target: EventTarget | null) => void;
|
|
58
|
+
setInlineEditing: React__default.Dispatch<React__default.SetStateAction<TInlineEditing | null>>;
|
|
59
|
+
internalStudioNodeTypes: Set<string>;
|
|
60
|
+
plans?: NavigationCompositionPlan[];
|
|
61
|
+
}) => void;
|
|
62
|
+
finalizeRenderedNode: (args: {
|
|
63
|
+
node: UINode;
|
|
64
|
+
children: React__default.ReactNode[] | undefined;
|
|
65
|
+
componentProps: Record<string, unknown>;
|
|
66
|
+
registryComponent: React__default.ComponentType<Record<string, unknown>>;
|
|
67
|
+
runtime: UIRuntimeAdapter;
|
|
68
|
+
isStudioRendererContext: boolean;
|
|
69
|
+
studioSizing?: {
|
|
70
|
+
widthPct: number | null;
|
|
71
|
+
heightPct: number | null;
|
|
72
|
+
heightPx: number | null;
|
|
73
|
+
};
|
|
74
|
+
plans?: FinalRenderPlan[];
|
|
75
|
+
}) => React__default.ReactNode | null;
|
|
76
|
+
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
77
|
+
findNodeById: (nodeId: string, nodes: UINode[]) => UINode | null;
|
|
78
|
+
};
|
|
79
|
+
type RenderReactNodeArgs<TInlineEditing = unknown> = {
|
|
80
|
+
node: UINode;
|
|
81
|
+
runtime: UIRuntimeAdapter;
|
|
82
|
+
registry: ComponentRegistry;
|
|
83
|
+
schemaNodes: UINode[];
|
|
84
|
+
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
85
|
+
internalStudioNodeTypes: Set<string>;
|
|
86
|
+
overlaysByNodeId: Record<string, unknown>;
|
|
87
|
+
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
88
|
+
isStudioRendererContext: boolean;
|
|
89
|
+
dropdownOpenByNodeId: Record<string, boolean>;
|
|
90
|
+
setDropdownOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
91
|
+
captureFieldFocus: (target: EventTarget | null) => void;
|
|
92
|
+
selectedNodeId: string | null | undefined;
|
|
93
|
+
wizardActiveStepByNodeId: Record<string, string>;
|
|
94
|
+
accordionOpenIdsByNodeId: Record<string, string[]>;
|
|
95
|
+
expandablePanelOpenByNodeId: Record<string, boolean>;
|
|
96
|
+
setWizardActiveStepByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string>>>;
|
|
97
|
+
setAccordionOpenIdsByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string[]>>>;
|
|
98
|
+
setExpandablePanelOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
99
|
+
onNodeClick?: (nodeId: string) => void;
|
|
100
|
+
setInlineEditing: React__default.Dispatch<React__default.SetStateAction<TInlineEditing | null>>;
|
|
101
|
+
studioSizing?: {
|
|
102
|
+
widthPct: number | null;
|
|
103
|
+
heightPct: number | null;
|
|
104
|
+
heightPx: number | null;
|
|
105
|
+
};
|
|
106
|
+
dependencies: RenderReactNodeDependencies<TInlineEditing>;
|
|
107
|
+
};
|
|
108
|
+
declare const renderReactNode: <TInlineEditing = unknown>({ node, runtime, registry, schemaNodes, renderSafeNode, internalStudioNodeTypes, overlaysByNodeId, onInlineTextEdit, isStudioRendererContext, dropdownOpenByNodeId, setDropdownOpenByNodeId, captureFieldFocus, selectedNodeId, wizardActiveStepByNodeId, accordionOpenIdsByNodeId, expandablePanelOpenByNodeId, setWizardActiveStepByNodeId, setAccordionOpenIdsByNodeId, setExpandablePanelOpenByNodeId, onNodeClick, setInlineEditing, studioSizing, dependencies, }: RenderReactNodeArgs<TInlineEditing>) => React__default.ReactNode;
|
|
109
|
+
|
|
110
|
+
export { type RenderReactNodeArgs as R, type RenderReactNodeDependencies as a, renderReactNode as r };
|
package/dist/rendering.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { FinalRenderPlan, ResolvedNodeChildDescriptor, ResolvedNodeContentDescri
|
|
|
3
3
|
import { UINode } from '@arkcit/engine-schema';
|
|
4
4
|
import { UIRuntimeAdapter } from '@arkcit/engine-runtime';
|
|
5
5
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
6
|
-
export { r as renderReactNode } from './renderReactNode-
|
|
6
|
+
export { R as RenderReactNodeArgs, a as RenderReactNodeDependencies, r as renderReactNode } from './renderReactNode-xwA81IXf.js';
|
|
7
7
|
import { ComponentRegistry } from '@arkcit/engine-core';
|
|
8
8
|
|
|
9
9
|
type FinalizeRenderedNodeParams = {
|
package/dist/rendering.js
CHANGED
|
@@ -458,6 +458,11 @@ var normalizeRenderableChild = (value) => {
|
|
|
458
458
|
const nestedChildren = candidate.props.children;
|
|
459
459
|
return normalizeRenderableChild(nestedChildren);
|
|
460
460
|
}
|
|
461
|
+
for (const key of ["children", "label", "title", "content", "text", "value"]) {
|
|
462
|
+
if (key in candidate) {
|
|
463
|
+
return normalizeRenderableChild(candidate[key]);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
461
466
|
}
|
|
462
467
|
return null;
|
|
463
468
|
};
|
package/dist/static-engine.d.ts
CHANGED
|
@@ -3,10 +3,10 @@ import React__default from 'react';
|
|
|
3
3
|
import { UIEngineProps, UINodeWrapperProps } from '@arkcit/engine-core';
|
|
4
4
|
import { UINode } from '@arkcit/engine-schema';
|
|
5
5
|
import { UIRuntimeAdapter } from '@arkcit/engine-runtime';
|
|
6
|
-
import {
|
|
6
|
+
import { a as RenderReactNodeDependencies } from './renderReactNode-xwA81IXf.js';
|
|
7
7
|
import '@arkcit/engine-render-layer';
|
|
8
8
|
|
|
9
|
-
type
|
|
9
|
+
type StaticRenderSafeNodeArgs<TInlineEditing = unknown> = {
|
|
10
10
|
node: UINode;
|
|
11
11
|
registry: NonNullable<UIEngineProps["registry"]>;
|
|
12
12
|
runtime: UIRuntimeAdapter;
|
|
@@ -36,14 +36,14 @@ type RenderSafeNodeArgs<TInlineEditing> = {
|
|
|
36
36
|
NodeWrapper: React__default.ComponentType<UINodeWrapperProps>;
|
|
37
37
|
isFormInteractiveTarget: (target: HTMLElement | null) => boolean;
|
|
38
38
|
};
|
|
39
|
-
type StaticReactWebEngineRootDependencies<TInlineEditing> = {
|
|
40
|
-
renderSafeNode: (args:
|
|
39
|
+
type StaticReactWebEngineRootDependencies<TInlineEditing = unknown> = {
|
|
40
|
+
renderSafeNode: (args: StaticRenderSafeNodeArgs<TInlineEditing>) => React__default.ReactNode;
|
|
41
41
|
StudioNodeWrapper: React__default.ComponentType<UINodeWrapperProps>;
|
|
42
|
-
renderReactNodeDependencies:
|
|
42
|
+
renderReactNodeDependencies: RenderReactNodeDependencies<TInlineEditing>;
|
|
43
43
|
};
|
|
44
|
-
type StaticReactWebEngineRootArgs<TInlineEditing> = UIEngineProps & {
|
|
44
|
+
type StaticReactWebEngineRootArgs<TInlineEditing = unknown> = UIEngineProps & {
|
|
45
45
|
dependencies: StaticReactWebEngineRootDependencies<TInlineEditing>;
|
|
46
46
|
};
|
|
47
47
|
declare const StaticReactWebEngineRoot: <TInlineEditing = unknown>({ schema, registry, store, nodeWrapper, dependencies, }: StaticReactWebEngineRootArgs<TInlineEditing>) => react_jsx_runtime.JSX.Element;
|
|
48
48
|
|
|
49
|
-
export { StaticReactWebEngineRoot };
|
|
49
|
+
export { StaticReactWebEngineRoot, type StaticReactWebEngineRootArgs, type StaticReactWebEngineRootDependencies, type StaticRenderSafeNodeArgs };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arkcit/engine-react",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.3.
|
|
4
|
+
"version": "0.3.8",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"description": "React-specific renderer package for the Arkcit engine platform.",
|
|
@@ -75,10 +75,10 @@
|
|
|
75
75
|
"test": "npm run test:smoke && npm run test:unit"
|
|
76
76
|
},
|
|
77
77
|
"dependencies": {
|
|
78
|
-
"@arkcit/engine-core": "^0.3.
|
|
79
|
-
"@arkcit/engine-render-layer": "^0.3.
|
|
80
|
-
"@arkcit/engine-runtime": "^0.3.
|
|
81
|
-
"@arkcit/engine-schema": "^0.3.
|
|
78
|
+
"@arkcit/engine-core": "^0.3.3",
|
|
79
|
+
"@arkcit/engine-render-layer": "^0.3.3",
|
|
80
|
+
"@arkcit/engine-runtime": "^0.3.2",
|
|
81
|
+
"@arkcit/engine-schema": "^0.3.3"
|
|
82
82
|
},
|
|
83
83
|
"peerDependencies": {
|
|
84
84
|
"react": "^19.1.0",
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import React__default from 'react';
|
|
2
|
-
import { ComponentRegistry } from '@arkcit/engine-core';
|
|
3
|
-
import { UINode } from '@arkcit/engine-schema';
|
|
4
|
-
import { UIRuntimeAdapter } from '@arkcit/engine-runtime';
|
|
5
|
-
import { ContentCompositionPlan, RenderDirectivePlan, NavigationCompositionPlan, FinalRenderPlan } from '@arkcit/engine-render-layer';
|
|
6
|
-
|
|
7
|
-
type RenderReactNodeArgs<TInlineEditing = unknown> = {
|
|
8
|
-
node: UINode;
|
|
9
|
-
runtime: UIRuntimeAdapter;
|
|
10
|
-
registry: ComponentRegistry;
|
|
11
|
-
schemaNodes: UINode[];
|
|
12
|
-
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
13
|
-
internalStudioNodeTypes: Set<string>;
|
|
14
|
-
overlaysByNodeId: Record<string, unknown>;
|
|
15
|
-
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
16
|
-
isStudioRendererContext: boolean;
|
|
17
|
-
dropdownOpenByNodeId: Record<string, boolean>;
|
|
18
|
-
setDropdownOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
19
|
-
captureFieldFocus: (target: EventTarget | null) => void;
|
|
20
|
-
selectedNodeId: string | null | undefined;
|
|
21
|
-
wizardActiveStepByNodeId: Record<string, string>;
|
|
22
|
-
accordionOpenIdsByNodeId: Record<string, string[]>;
|
|
23
|
-
expandablePanelOpenByNodeId: Record<string, boolean>;
|
|
24
|
-
setWizardActiveStepByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string>>>;
|
|
25
|
-
setAccordionOpenIdsByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string[]>>>;
|
|
26
|
-
setExpandablePanelOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
27
|
-
onNodeClick?: (nodeId: string) => void;
|
|
28
|
-
setInlineEditing: React__default.Dispatch<React__default.SetStateAction<TInlineEditing | null>>;
|
|
29
|
-
studioSizing?: {
|
|
30
|
-
widthPct: number | null;
|
|
31
|
-
heightPct: number | null;
|
|
32
|
-
heightPx: number | null;
|
|
33
|
-
};
|
|
34
|
-
dependencies: {
|
|
35
|
-
applyStudioOverlayComponentProps: (args: {
|
|
36
|
-
node: UINode;
|
|
37
|
-
componentProps: Record<string, unknown>;
|
|
38
|
-
runtime: UIRuntimeAdapter;
|
|
39
|
-
overlaysByNodeId: Record<string, unknown>;
|
|
40
|
-
renderBindingProps: Record<string, unknown>;
|
|
41
|
-
resolvedChildContent: React__default.ReactNode | null;
|
|
42
|
-
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
43
|
-
isStudioRendererContext: boolean;
|
|
44
|
-
dropdownOpenByNodeId: Record<string, boolean>;
|
|
45
|
-
setDropdownOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
46
|
-
}) => void;
|
|
47
|
-
applyContentComposition: (args: {
|
|
48
|
-
node: UINode;
|
|
49
|
-
componentProps: Record<string, unknown>;
|
|
50
|
-
isStudioRendererContext: boolean;
|
|
51
|
-
internalStudioNodeTypes: Set<string>;
|
|
52
|
-
schemaNodes: UINode[];
|
|
53
|
-
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
54
|
-
captureFieldFocus: (target: EventTarget | null) => void;
|
|
55
|
-
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
56
|
-
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
57
|
-
findNodeById: (nodeId: string, nodes: UINode[]) => UINode | null;
|
|
58
|
-
runtime: UIRuntimeAdapter;
|
|
59
|
-
plans?: ContentCompositionPlan[];
|
|
60
|
-
}) => React__default.ReactNode | null;
|
|
61
|
-
applyRenderDirectives: (args: {
|
|
62
|
-
node: UINode;
|
|
63
|
-
componentProps: Record<string, unknown>;
|
|
64
|
-
renderBindingProps: Record<string, unknown>;
|
|
65
|
-
runtime: UIRuntimeAdapter;
|
|
66
|
-
plans?: RenderDirectivePlan[];
|
|
67
|
-
}) => void;
|
|
68
|
-
applyNavigationComposition: (args: {
|
|
69
|
-
node: UINode;
|
|
70
|
-
componentProps: Record<string, unknown>;
|
|
71
|
-
isStudioRendererContext: boolean;
|
|
72
|
-
selectedNodeId: string | null;
|
|
73
|
-
wizardActiveStepByNodeId: Record<string, string>;
|
|
74
|
-
accordionOpenIdsByNodeId: Record<string, string[]>;
|
|
75
|
-
expandablePanelOpenByNodeId: Record<string, boolean>;
|
|
76
|
-
runtime: UIRuntimeAdapter;
|
|
77
|
-
setWizardActiveStepByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string>>>;
|
|
78
|
-
setAccordionOpenIdsByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, string[]>>>;
|
|
79
|
-
setExpandablePanelOpenByNodeId: React__default.Dispatch<React__default.SetStateAction<Record<string, boolean>>>;
|
|
80
|
-
onNodeClick?: (nodeId: string) => void;
|
|
81
|
-
onInlineTextEdit?: (nodeId: string, propName: string, value: unknown) => void;
|
|
82
|
-
renderSafeNode: (node: UINode) => React__default.ReactNode;
|
|
83
|
-
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
84
|
-
captureFieldFocus: (target: EventTarget | null) => void;
|
|
85
|
-
setInlineEditing: React__default.Dispatch<React__default.SetStateAction<TInlineEditing | null>>;
|
|
86
|
-
internalStudioNodeTypes: Set<string>;
|
|
87
|
-
plans?: NavigationCompositionPlan[];
|
|
88
|
-
}) => void;
|
|
89
|
-
finalizeRenderedNode: (args: {
|
|
90
|
-
node: UINode;
|
|
91
|
-
children: React__default.ReactNode[] | undefined;
|
|
92
|
-
componentProps: Record<string, unknown>;
|
|
93
|
-
registryComponent: React__default.ComponentType<Record<string, unknown>>;
|
|
94
|
-
runtime: UIRuntimeAdapter;
|
|
95
|
-
isStudioRendererContext: boolean;
|
|
96
|
-
studioSizing?: {
|
|
97
|
-
widthPct: number | null;
|
|
98
|
-
heightPct: number | null;
|
|
99
|
-
heightPx: number | null;
|
|
100
|
-
};
|
|
101
|
-
plans?: FinalRenderPlan[];
|
|
102
|
-
}) => React__default.ReactNode | null;
|
|
103
|
-
normalizeRenderableChild: (value: unknown) => React__default.ReactNode;
|
|
104
|
-
findNodeById: (nodeId: string, nodes: UINode[]) => UINode | null;
|
|
105
|
-
};
|
|
106
|
-
};
|
|
107
|
-
declare const renderReactNode: <TInlineEditing = unknown>({ node, runtime, registry, schemaNodes, renderSafeNode, internalStudioNodeTypes, overlaysByNodeId, onInlineTextEdit, isStudioRendererContext, dropdownOpenByNodeId, setDropdownOpenByNodeId, captureFieldFocus, selectedNodeId, wizardActiveStepByNodeId, accordionOpenIdsByNodeId, expandablePanelOpenByNodeId, setWizardActiveStepByNodeId, setAccordionOpenIdsByNodeId, setExpandablePanelOpenByNodeId, onNodeClick, setInlineEditing, studioSizing, dependencies, }: RenderReactNodeArgs<TInlineEditing>) => React__default.ReactNode;
|
|
108
|
-
|
|
109
|
-
export { renderReactNode as r };
|