@parhelia/page-wizard 0.1.11004 → 0.1.11005
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/SplashScreen.d.ts +1 -0
- package/dist/SplashScreen.js +110 -0
- package/dist/SplashScreen.js.map +1 -0
- package/dist/dist/PageWizard.d.ts +78 -0
- package/dist/dist/PageWizard.js +57 -0
- package/dist/dist/PageWizard.js.map +1 -0
- package/dist/dist/SplashScreen.d.ts +1 -0
- package/dist/dist/SplashScreen.js +110 -0
- package/dist/dist/SplashScreen.js.map +1 -0
- package/dist/dist/WizardBoxConnector.d.ts +4 -0
- package/dist/dist/WizardBoxConnector.js +6 -0
- package/dist/dist/WizardBoxConnector.js.map +1 -0
- package/dist/dist/WizardSteps.d.ts +8 -0
- package/dist/dist/WizardSteps.js +174 -0
- package/dist/dist/WizardSteps.js.map +1 -0
- package/dist/dist/config.d.ts +2 -0
- package/dist/dist/config.js +86 -0
- package/dist/dist/config.js.map +1 -0
- package/dist/dist/index.d.ts +2 -0
- package/dist/dist/index.js +2 -0
- package/dist/dist/index.js.map +1 -0
- package/dist/dist/service.d.ts +15 -0
- package/dist/dist/service.js +29 -0
- package/dist/dist/service.js.map +1 -0
- package/dist/dist/startPageWizardCommand.d.ts +13 -0
- package/dist/dist/startPageWizardCommand.js +31 -0
- package/dist/dist/startPageWizardCommand.js.map +1 -0
- package/dist/dist/steps/BuildPageStep.d.ts +2 -0
- package/dist/dist/steps/BuildPageStep.js +138 -0
- package/dist/dist/steps/BuildPageStep.js.map +1 -0
- package/dist/dist/steps/CollectStep.d.ts +2 -0
- package/dist/dist/steps/CollectStep.js +115 -0
- package/dist/dist/steps/CollectStep.js.map +1 -0
- package/dist/dist/steps/ComponentTypesSelector.d.ts +13 -0
- package/dist/dist/steps/ComponentTypesSelector.js +155 -0
- package/dist/dist/steps/ComponentTypesSelector.js.map +1 -0
- package/dist/dist/steps/Components.d.ts +9 -0
- package/dist/dist/steps/Components.js +89 -0
- package/dist/dist/steps/Components.js.map +1 -0
- package/dist/dist/steps/ContentStep.d.ts +2 -0
- package/dist/dist/steps/ContentStep.js +808 -0
- package/dist/dist/steps/ContentStep.js.map +1 -0
- package/dist/dist/steps/EditButton.d.ts +8 -0
- package/dist/dist/steps/EditButton.js +5 -0
- package/dist/dist/steps/EditButton.js.map +1 -0
- package/dist/dist/steps/FieldEditor.d.ts +5 -0
- package/dist/dist/steps/FieldEditor.js +27 -0
- package/dist/dist/steps/FieldEditor.js.map +1 -0
- package/dist/dist/steps/FindItemsStep.d.ts +2 -0
- package/dist/dist/steps/FindItemsStep.js +294 -0
- package/dist/dist/steps/FindItemsStep.js.map +1 -0
- package/dist/dist/steps/Generate.d.ts +6 -0
- package/dist/dist/steps/Generate.js +31 -0
- package/dist/dist/steps/Generate.js.map +1 -0
- package/dist/dist/steps/ImagesStep.d.ts +2 -0
- package/dist/dist/steps/ImagesStep.js +178 -0
- package/dist/dist/steps/ImagesStep.js.map +1 -0
- package/dist/dist/steps/LayoutStep.d.ts +2 -0
- package/dist/dist/steps/LayoutStep.js +128 -0
- package/dist/dist/steps/LayoutStep.js.map +1 -0
- package/dist/dist/steps/MetaDataStep.d.ts +2 -0
- package/dist/dist/steps/MetaDataStep.js +112 -0
- package/dist/dist/steps/MetaDataStep.js.map +1 -0
- package/dist/dist/steps/SchottSelectImagesStep.d.ts +2 -0
- package/dist/dist/steps/SchottSelectImagesStep.js +55 -0
- package/dist/dist/steps/SchottSelectImagesStep.js.map +1 -0
- package/dist/dist/steps/SelectStep.d.ts +2 -0
- package/dist/dist/steps/SelectStep.js +151 -0
- package/dist/dist/steps/SelectStep.js.map +1 -0
- package/dist/dist/steps/StructureStep.d.ts +2 -0
- package/dist/dist/steps/StructureStep.js +205 -0
- package/dist/dist/steps/StructureStep.js.map +1 -0
- package/dist/dist/steps/TranslateStep.d.ts +2 -0
- package/dist/dist/steps/TranslateStep.js +613 -0
- package/dist/dist/steps/TranslateStep.js.map +1 -0
- package/dist/dist/steps/schema.d.ts +13 -0
- package/dist/dist/steps/schema.js +139 -0
- package/dist/dist/steps/schema.js.map +1 -0
- package/dist/dist/steps/usePageCreator.d.ts +7 -0
- package/dist/dist/steps/usePageCreator.js +285 -0
- package/dist/dist/steps/usePageCreator.js.map +1 -0
- package/dist/dist/types.d.ts +27 -0
- package/dist/dist/types.js +2 -0
- package/dist/dist/types.js.map +1 -0
- package/dist/dist/usePageWizard.d.ts +22 -0
- package/dist/dist/usePageWizard.js +69 -0
- package/dist/dist/usePageWizard.js.map +1 -0
- package/dist/dist/utils/dataAccessor.d.ts +57 -0
- package/dist/dist/utils/dataAccessor.js +323 -0
- package/dist/dist/utils/dataAccessor.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
// Component Type and Placeholder Selection UI
|
|
4
|
+
export function ComponentTypeSelector({ selectedComponentTypes, setSelectedComponentTypes, schema, data, setData, step, availableComponentTypes, }) {
|
|
5
|
+
const [preselectedTypes, setPreselectedTypes] = useState([]);
|
|
6
|
+
const [searchFilter, setSearchFilter] = useState("");
|
|
7
|
+
// Ensure selectedComponentTypes is always an array
|
|
8
|
+
useEffect(() => {
|
|
9
|
+
if (!selectedComponentTypes || !Array.isArray(selectedComponentTypes)) {
|
|
10
|
+
setSelectedComponentTypes([]);
|
|
11
|
+
}
|
|
12
|
+
}, [selectedComponentTypes]);
|
|
13
|
+
// Handle select all component types
|
|
14
|
+
const handleSelectAllComponents = () => {
|
|
15
|
+
if (availableComponentTypes) {
|
|
16
|
+
setSelectedComponentTypes(availableComponentTypes);
|
|
17
|
+
setData({
|
|
18
|
+
...data,
|
|
19
|
+
selectedComponentTypes: availableComponentTypes,
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
// Handle clear all component types
|
|
24
|
+
const handleClearAllComponents = () => {
|
|
25
|
+
setSelectedComponentTypes([]);
|
|
26
|
+
setData({
|
|
27
|
+
...data,
|
|
28
|
+
selectedComponentTypes: [],
|
|
29
|
+
});
|
|
30
|
+
};
|
|
31
|
+
// Toggle component type selection
|
|
32
|
+
const toggleComponentType = (type) => {
|
|
33
|
+
if (!setSelectedComponentTypes) {
|
|
34
|
+
console.error("setSelectedComponentTypes is not defined");
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
try {
|
|
38
|
+
// Get the current selected types safely
|
|
39
|
+
const currentSelected = Array.isArray(selectedComponentTypes)
|
|
40
|
+
? selectedComponentTypes
|
|
41
|
+
: [];
|
|
42
|
+
// Calculate the new selection
|
|
43
|
+
const newSelected = currentSelected.includes(type)
|
|
44
|
+
? currentSelected.filter((t) => t !== type)
|
|
45
|
+
: [...currentSelected, type];
|
|
46
|
+
// Update the state
|
|
47
|
+
setSelectedComponentTypes(newSelected);
|
|
48
|
+
// Save selected types to wizard data
|
|
49
|
+
setData({
|
|
50
|
+
...data,
|
|
51
|
+
selectedComponentTypes: newSelected,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
console.error("Error in toggleComponentType:", error);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
// Filter available components by search term
|
|
59
|
+
const filteredComponentTypes = availableComponentTypes?.filter((type) => type.toLowerCase().includes(searchFilter.toLowerCase())) || [];
|
|
60
|
+
// Helper function to extract placeholders from the schema
|
|
61
|
+
const extractPlaceholders = (items) => {
|
|
62
|
+
if (!items)
|
|
63
|
+
return [];
|
|
64
|
+
if (items && "placeholders" in items) {
|
|
65
|
+
return items.placeholders.map((placeholder) => placeholder.name);
|
|
66
|
+
}
|
|
67
|
+
if (!Array.isArray(items))
|
|
68
|
+
return [];
|
|
69
|
+
let placeholders = [];
|
|
70
|
+
for (const item of items) {
|
|
71
|
+
// Add the current placeholder name if it exists
|
|
72
|
+
if ("name" in item && typeof item.name === "string") {
|
|
73
|
+
placeholders.push(item.name);
|
|
74
|
+
}
|
|
75
|
+
// Handle SchemaComponent objects
|
|
76
|
+
if ("placeholders" in item && Array.isArray(item.placeholders)) {
|
|
77
|
+
// Extract names from each placeholder
|
|
78
|
+
item.placeholders.forEach((placeholder) => {
|
|
79
|
+
placeholders.push(placeholder.name);
|
|
80
|
+
// Recursively process components in this placeholder
|
|
81
|
+
if (placeholder.components && Array.isArray(placeholder.components)) {
|
|
82
|
+
placeholders = [
|
|
83
|
+
...placeholders,
|
|
84
|
+
...extractPlaceholders(placeholder.components),
|
|
85
|
+
];
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// Handle SchemaPlaceholder objects
|
|
90
|
+
if ("components" in item && Array.isArray(item.components)) {
|
|
91
|
+
placeholders = [
|
|
92
|
+
...placeholders,
|
|
93
|
+
...extractPlaceholders(item.components),
|
|
94
|
+
];
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return placeholders;
|
|
98
|
+
};
|
|
99
|
+
// Initialize preselected types from step configuration
|
|
100
|
+
useEffect(() => {
|
|
101
|
+
if (availableComponentTypes && step.fields["preselectedComponents"]) {
|
|
102
|
+
// Parse preselected components from step if available
|
|
103
|
+
const stepPreselectedTypes = step.fields["preselectedComponents"]
|
|
104
|
+
.split(/[,\n\r]+/)
|
|
105
|
+
.map((type) => type.trim())
|
|
106
|
+
.filter((type) => type && availableComponentTypes.includes(type));
|
|
107
|
+
setPreselectedTypes(stepPreselectedTypes);
|
|
108
|
+
}
|
|
109
|
+
}, [availableComponentTypes, step]);
|
|
110
|
+
return (_jsxs("div", { className: "space-y-4", children: [_jsx("div", { className: "mb-2", children: _jsx("input", { type: "text", value: searchFilter, onChange: (e) => setSearchFilter(e.target.value), placeholder: "Search components...", className: "focus:ring-theme-secondary w-full rounded border border-gray-300 px-3 py-1 text-sm focus:ring-1 focus:outline-none" }) }), _jsx("div", { className: "mb-3 flex flex-col gap-3 py-2", children: _jsxs("div", { className: "min-w-0 flex-1 rounded", children: [_jsx("div", { className: "mb-2 flex items-center justify-between", children: _jsx("h4", { className: "text-sm", children: "Component Types" }) }), _jsx("div", { className: `mb-2 max-h-96 space-y-2 overflow-y-auto ${filteredComponentTypes.length === 0
|
|
111
|
+
? "flex items-center justify-center"
|
|
112
|
+
: ""}`, children: filteredComponentTypes.length > 0 ? (filteredComponentTypes.map((type) => {
|
|
113
|
+
const isSelected = selectedComponentTypes &&
|
|
114
|
+
Array.isArray(selectedComponentTypes) &&
|
|
115
|
+
selectedComponentTypes.includes(type);
|
|
116
|
+
const isPreselected = preselectedTypes.includes(type);
|
|
117
|
+
// Generate a description for each component type
|
|
118
|
+
const getComponentDescription = (componentType) => {
|
|
119
|
+
return `${componentType} component for your page layout`;
|
|
120
|
+
};
|
|
121
|
+
return (_jsx("div", { className: `relative cursor-pointer rounded-lg border p-2 transition-all ${isSelected
|
|
122
|
+
? "border-theme-secondary bg-theme-secondary-50"
|
|
123
|
+
: "border-gray-200 bg-white hover:border-gray-300 hover:bg-gray-50"}`, onClick: () => toggleComponentType(type), children: _jsxs("div", { className: "flex items-start justify-between", children: [_jsx("div", { className: "min-w-0 flex-1", children: _jsx("div", { className: "mb-1 flex items-center gap-2", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx("h3", { className: "text-sm text-gray-900", children: type }), isPreselected && (_jsx("span", { className: "text-theme-secondary text-sm", title: "Recommended by template", children: "\u2605" }))] }) }) }), _jsx("div", { className: "ml-4 flex-shrink-0", children: _jsx("div", { className: `flex h-6 w-6 items-center justify-center rounded-full border-2 ${isSelected
|
|
124
|
+
? "border-theme-secondary bg-theme-secondary"
|
|
125
|
+
: "border-gray-300 bg-white"}`, children: isSelected && (_jsx("svg", { className: "h-3 w-3 text-white", fill: "currentColor", viewBox: "0 0 20 20", children: _jsx("path", { fillRule: "evenodd", d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z", clipRule: "evenodd" }) })) }) })] }) }, type));
|
|
126
|
+
})) : (_jsx("div", { className: "p-8 text-center text-sm text-gray-500", children: searchFilter
|
|
127
|
+
? "No matching component types found"
|
|
128
|
+
: "No component types available" })) }), _jsxs("div", { className: "flex gap-1", children: [_jsx("button", { onClick: handleSelectAllComponents, disabled: selectedComponentTypes &&
|
|
129
|
+
Array.isArray(selectedComponentTypes) &&
|
|
130
|
+
availableComponentTypes &&
|
|
131
|
+
selectedComponentTypes.length === availableComponentTypes.length, className: "flex-1 rounded bg-gray-200 px-2 py-1 text-xs text-gray-700 hover:bg-gray-300 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-gray-400", children: "Select All" }), _jsx("button", { onClick: handleClearAllComponents, disabled: !selectedComponentTypes ||
|
|
132
|
+
!Array.isArray(selectedComponentTypes) ||
|
|
133
|
+
selectedComponentTypes.length === 0, className: "flex-1 rounded bg-gray-200 px-2 py-1 text-xs text-gray-700 hover:bg-gray-300 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-gray-400", children: "Clear All" })] }), preselectedTypes.length > 0 && (_jsx("div", { className: "mt-2", children: _jsx("button", { onClick: () => {
|
|
134
|
+
setSelectedComponentTypes(preselectedTypes);
|
|
135
|
+
setData({
|
|
136
|
+
...data,
|
|
137
|
+
selectedComponentTypes: preselectedTypes,
|
|
138
|
+
});
|
|
139
|
+
}, disabled: selectedComponentTypes &&
|
|
140
|
+
Array.isArray(selectedComponentTypes) &&
|
|
141
|
+
preselectedTypes.length === selectedComponentTypes.length &&
|
|
142
|
+
preselectedTypes.every((type) => selectedComponentTypes.includes(type)), className: "w-full rounded bg-green-500 px-2 py-1 text-xs text-white hover:bg-green-600 disabled:cursor-not-allowed disabled:bg-gray-100 disabled:text-gray-400", children: "Use Recommended Components" }) }))] }) })] }));
|
|
143
|
+
}
|
|
144
|
+
// Helper function to get summary for parent card
|
|
145
|
+
export function getComponentTypeSelectorSummary(selectedComponentTypes, availableComponentTypes) {
|
|
146
|
+
if (!selectedComponentTypes || !Array.isArray(selectedComponentTypes)) {
|
|
147
|
+
return "Configure what the AI will use to generate the layout";
|
|
148
|
+
}
|
|
149
|
+
if (selectedComponentTypes.length === 0) {
|
|
150
|
+
return "No component types selected";
|
|
151
|
+
}
|
|
152
|
+
const total = availableComponentTypes?.length || 0;
|
|
153
|
+
return `${selectedComponentTypes.length} of ${total} component types selected`;
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=ComponentTypesSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ComponentTypesSelector.js","sourceRoot":"","sources":["../../src/steps/ComponentTypesSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAA4B,SAAS,EAAE,QAAQ,EAAU,MAAM,OAAO,CAAC;AAS9E,8CAA8C;AAC9C,MAAM,UAAU,qBAAqB,CAAC,EACpC,sBAAsB,EACtB,yBAAyB,EACzB,MAAM,EACN,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,uBAAuB,GASxB;IACC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACvE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAE7D,mDAAmD;IACnD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,sBAAsB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACtE,yBAAyB,CAAC,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAE7B,oCAAoC;IACpC,MAAM,yBAAyB,GAAG,GAAG,EAAE;QACrC,IAAI,uBAAuB,EAAE,CAAC;YAC5B,yBAAyB,CAAC,uBAAuB,CAAC,CAAC;YACnD,OAAO,CAAC;gBACN,GAAG,IAAI;gBACP,sBAAsB,EAAE,uBAAuB;aAChD,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,mCAAmC;IACnC,MAAM,wBAAwB,GAAG,GAAG,EAAE;QACpC,yBAAyB,CAAC,EAAE,CAAC,CAAC;QAC9B,OAAO,CAAC;YACN,GAAG,IAAI;YACP,sBAAsB,EAAE,EAAE;SAC3B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,kCAAkC;IAClC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,EAAE;QAC3C,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,wCAAwC;YACxC,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;gBAC3D,CAAC,CAAC,sBAAsB;gBACxB,CAAC,CAAC,EAAE,CAAC;YAEP,8BAA8B;YAC9B,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAChD,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;gBACnD,CAAC,CAAC,CAAC,GAAG,eAAe,EAAE,IAAI,CAAC,CAAC;YAE/B,mBAAmB;YACnB,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAEvC,qCAAqC;YACrC,OAAO,CAAC;gBACN,GAAG,IAAI;gBACP,sBAAsB,EAAE,WAAW;aACpC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC;IAEF,6CAA6C;IAC7C,MAAM,sBAAsB,GAC1B,uBAAuB,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACvC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CACxD,IAAI,EAAE,CAAC;IAEV,0DAA0D;IAC1D,MAAM,mBAAmB,GAAG,CAC1B,KAAqC,EAC3B,EAAE;QACZ,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QAEtB,IAAI,KAAK,IAAI,cAAc,IAAI,KAAK,EAAE,CAAC;YACrC,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAErC,IAAI,YAAY,GAAa,EAAE,CAAC;QAEhC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,gDAAgD;YAChD,IAAI,MAAM,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACpD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;YAED,iCAAiC;YACjC,IAAI,cAAc,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/D,sCAAsC;gBACtC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,WAA8B,EAAE,EAAE;oBAC3D,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAEpC,qDAAqD;oBACrD,IAAI,WAAW,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;wBACpE,YAAY,GAAG;4BACb,GAAG,YAAY;4BACf,GAAG,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC;yBAC/C,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAED,mCAAmC;YACnC,IAAI,YAAY,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3D,YAAY,GAAG;oBACb,GAAG,YAAY;oBACf,GAAG,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC;iBACxC,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IAEF,uDAAuD;IACvD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,uBAAuB,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACpE,sDAAsD;YACtD,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC;iBAC9D,KAAK,CAAC,UAAU,CAAC;iBACjB,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;iBAClC,MAAM,CACL,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,IAAI,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACjE,CAAC;YAEJ,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,EAAE,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC,CAAC;IAEpC,OAAO,CACL,eAAK,SAAS,EAAC,WAAW,aACxB,cAAK,SAAS,EAAC,MAAM,YACnB,gBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAChD,WAAW,EAAC,sBAAsB,EAClC,SAAS,EAAC,oHAAoH,GAC9H,GACE,EAEN,cAAK,SAAS,EAAC,+BAA+B,YAE5C,eAAK,SAAS,EAAC,wBAAwB,aACrC,cAAK,SAAS,EAAC,wCAAwC,YACrD,aAAI,SAAS,EAAC,SAAS,gCAAqB,GACxC,EAwCN,cACE,SAAS,EAAE,2CACT,sBAAsB,CAAC,MAAM,KAAK,CAAC;gCACjC,CAAC,CAAC,kCAAkC;gCACpC,CAAC,CAAC,EACN,EAAE,YAED,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACnC,sBAAsB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gCAClC,MAAM,UAAU,GACd,sBAAsB;oCACtB,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;oCACrC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gCACxC,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gCAEtD,iDAAiD;gCACjD,MAAM,uBAAuB,GAAG,CAAC,aAAqB,EAAE,EAAE;oCACxD,OAAO,GAAG,aAAa,iCAAiC,CAAC;gCAC3D,CAAC,CAAC;gCAEF,OAAO,CACL,cAEE,SAAS,EAAE,gEACT,UAAU;wCACR,CAAC,CAAC,8CAA8C;wCAChD,CAAC,CAAC,iEACN,EAAE,EACF,OAAO,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAExC,eAAK,SAAS,EAAC,kCAAkC,aAC/C,cAAK,SAAS,EAAC,gBAAgB,YAC7B,cAAK,SAAS,EAAC,8BAA8B,YAC3C,eAAK,SAAS,EAAC,yBAAyB,aACtC,aAAI,SAAS,EAAC,uBAAuB,YAAE,IAAI,GAAM,EAChD,aAAa,IAAI,CAChB,eACE,SAAS,EAAC,8BAA8B,EACxC,KAAK,EAAC,yBAAyB,uBAG1B,CACR,IACG,GACF,GAIF,EACN,cAAK,SAAS,EAAC,oBAAoB,YACjC,cACE,SAAS,EAAE,kEACT,UAAU;wDACR,CAAC,CAAC,2CAA2C;wDAC7C,CAAC,CAAC,0BACN,EAAE,YAED,UAAU,IAAI,CACb,cACE,SAAS,EAAC,oBAAoB,EAC9B,IAAI,EAAC,cAAc,EACnB,OAAO,EAAC,WAAW,YAEnB,eACE,QAAQ,EAAC,SAAS,EAClB,CAAC,EAAC,oHAAoH,EACtH,QAAQ,EAAC,SAAS,GAClB,GACE,CACP,GACG,GACF,IACF,IAlDD,IAAI,CAmDL,CACP,CAAC;4BACJ,CAAC,CAAC,CACH,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,uCAAuC,YACnD,YAAY;oCACX,CAAC,CAAC,mCAAmC;oCACrC,CAAC,CAAC,8BAA8B,GAC9B,CACP,GACG,EAGN,eAAK,SAAS,EAAC,YAAY,aACzB,iBACE,OAAO,EAAE,yBAAyB,EAClC,QAAQ,EACN,sBAAsB;wCACtB,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;wCACrC,uBAAuB;wCACvB,sBAAsB,CAAC,MAAM,KAAK,uBAAuB,CAAC,MAAM,EAElE,SAAS,EAAC,sJAAsJ,2BAGzJ,EACT,iBACE,OAAO,EAAE,wBAAwB,EACjC,QAAQ,EACN,CAAC,sBAAsB;wCACvB,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;wCACtC,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAErC,SAAS,EAAC,sJAAsJ,0BAGzJ,IACL,EAGL,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,CAC9B,cAAK,SAAS,EAAC,MAAM,YACnB,iBACE,OAAO,EAAE,GAAG,EAAE;oCACZ,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;oCAC5C,OAAO,CAAC;wCACN,GAAG,IAAI;wCACP,sBAAsB,EAAE,gBAAgB;qCACzC,CAAC,CAAC;gCACL,CAAC,EACD,QAAQ,EACN,sBAAsB;oCACtB,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC;oCACrC,gBAAgB,CAAC,MAAM,KAAK,sBAAsB,CAAC,MAAM;oCACzD,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9B,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtC,EAEH,SAAS,EAAC,qJAAqJ,2CAGxJ,GACL,CACP,IACG,GACF,IACF,CACP,CAAC;AACJ,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,+BAA+B,CAC7C,sBAAiC,EACjC,uBAAkC;IAElC,IAAI,CAAC,sBAAsB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACtE,OAAO,uDAAuD,CAAC;IACjE,CAAC;IAED,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO,6BAA6B,CAAC;IACvC,CAAC;IAED,MAAM,KAAK,GAAG,uBAAuB,EAAE,MAAM,IAAI,CAAC,CAAC;IACnD,OAAO,GAAG,sBAAsB,CAAC,MAAM,OAAO,KAAK,2BAA2B,CAAC;AACjF,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Thumbnail } from "@parhelia/core";
|
|
2
|
+
import { WizardPageComponent, WizardPageModel } from "../PageWizard";
|
|
3
|
+
export declare function Components({ pageModel, onFieldEdited, onComponentRemoved, thumbnails, setInternalState, }: {
|
|
4
|
+
pageModel?: WizardPageModel;
|
|
5
|
+
onFieldEdited: () => void;
|
|
6
|
+
onComponentRemoved: (component: WizardPageComponent) => void;
|
|
7
|
+
thumbnails: Thumbnail[];
|
|
8
|
+
setInternalState: (state: any) => void;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useEditContext, SimpleIconButton } from "@parhelia/core";
|
|
3
|
+
import { FieldEditor } from "./FieldEditor";
|
|
4
|
+
import React from "react";
|
|
5
|
+
import { X } from "lucide-react";
|
|
6
|
+
export function Components({ pageModel, onFieldEdited, onComponentRemoved, thumbnails, setInternalState, }) {
|
|
7
|
+
const editContext = useEditContext();
|
|
8
|
+
if (!pageModel)
|
|
9
|
+
return _jsx("div", { children: "No layout generated yet" });
|
|
10
|
+
// Simplified component to only render component hierarchy
|
|
11
|
+
const SimpleLayoutItem = ({ components, depth = 0, }) => {
|
|
12
|
+
if (!components)
|
|
13
|
+
return null;
|
|
14
|
+
// Generate a random pastel background color based on component type
|
|
15
|
+
const getColorForType = (type) => {
|
|
16
|
+
// Simple hash function to generate consistent colors for the same type
|
|
17
|
+
const hash = type
|
|
18
|
+
.split("")
|
|
19
|
+
.reduce((acc, char) => acc + char.charCodeAt(0), 0);
|
|
20
|
+
const hue = hash % 360;
|
|
21
|
+
return `hsl(${hue}, 70%, 90%)`;
|
|
22
|
+
};
|
|
23
|
+
const getThumbnailUrl = (mediaId) => {
|
|
24
|
+
if (!thumbnails)
|
|
25
|
+
return;
|
|
26
|
+
return thumbnails.find((thumbnail) => thumbnail.id === mediaId)?.thumbUrl;
|
|
27
|
+
};
|
|
28
|
+
const getImage = (field) => {
|
|
29
|
+
const url = getThumbnailUrl(field.value);
|
|
30
|
+
if (url) {
|
|
31
|
+
return _jsx("img", { src: url, alt: field.name, className: "mb-2" });
|
|
32
|
+
}
|
|
33
|
+
return field.value;
|
|
34
|
+
};
|
|
35
|
+
// Handle component with placeholders
|
|
36
|
+
const renderComponent = (component, collection) => {
|
|
37
|
+
const indent = depth * 20;
|
|
38
|
+
const componentType = component.type || "Unknown";
|
|
39
|
+
const borderColor = component.type
|
|
40
|
+
? getColorForType(componentType)
|
|
41
|
+
: "#f0f0f0";
|
|
42
|
+
return (_jsxs("div", { className: "relative", style: {
|
|
43
|
+
marginBottom: "8px",
|
|
44
|
+
marginLeft: indent,
|
|
45
|
+
}, children: [_jsx("div", { className: "absolute top-0 right-0", children: _jsx(SimpleIconButton, { icon: _jsx(X, { size: 14 }), label: "Remove", onClick: () => {
|
|
46
|
+
// Remove component from its collection
|
|
47
|
+
const index = collection.findIndex((c) => c.id === component.id);
|
|
48
|
+
if (index !== -1) {
|
|
49
|
+
collection.splice(index, 1);
|
|
50
|
+
}
|
|
51
|
+
onComponentRemoved(component);
|
|
52
|
+
} }) }), _jsxs("div", { className: "mb-2 rounded-md border-2 bg-white px-2 py-1", style: {
|
|
53
|
+
borderColor,
|
|
54
|
+
}, children: [_jsxs("div", { className: "mb-2", children: [_jsx("span", { className: "text-gray-600", children: component.type }), ":", " ", component.name] }), _jsx("div", { className: "text-xs text-gray-500", children: component.fields?.map((field, index) => field.type === "Picture" || field.type === "Image" ? (_jsxs("div", { className: "cursor-pointer", onClick: async () => {
|
|
55
|
+
const currentImage = await editContext?.itemsRepository.getItem({
|
|
56
|
+
id: field.value,
|
|
57
|
+
language: "en",
|
|
58
|
+
version: 1,
|
|
59
|
+
});
|
|
60
|
+
const selectedImageId = await editContext?.selectMedia({
|
|
61
|
+
selectedIdPath: currentImage?.idPath || "",
|
|
62
|
+
mode: "images",
|
|
63
|
+
});
|
|
64
|
+
if (selectedImageId) {
|
|
65
|
+
const newImage = await editContext?.itemsRepository.getItem({
|
|
66
|
+
id: selectedImageId,
|
|
67
|
+
language: "en",
|
|
68
|
+
version: 1,
|
|
69
|
+
});
|
|
70
|
+
const newThumb = {
|
|
71
|
+
id: newImage?.id || "",
|
|
72
|
+
name: newImage?.name || "",
|
|
73
|
+
thumbUrl: newImage?.thumbnail || "",
|
|
74
|
+
previewUrl: newImage?.thumbnail || "",
|
|
75
|
+
};
|
|
76
|
+
field.value = selectedImageId;
|
|
77
|
+
setInternalState((state) => ({
|
|
78
|
+
...state,
|
|
79
|
+
thumbnails: [...(state.thumbnails || []), newThumb],
|
|
80
|
+
}));
|
|
81
|
+
onFieldEdited();
|
|
82
|
+
}
|
|
83
|
+
}, children: [_jsxs("div", { className: "font-bold text-gray-900", children: [field.name, ":"] }), _jsx("div", { children: getImage(field) })] }, index)) : (_jsx(FieldEditor, { field: field, onFieldEdited: onFieldEdited }, index))) })] }), component.children && (_jsx(SimpleLayoutItem, { components: component.children, depth: depth + 1 }))] }, component.id));
|
|
84
|
+
};
|
|
85
|
+
return components.map((component, index) => (_jsx(React.Fragment, { children: renderComponent(component, components) }, component.id || index)));
|
|
86
|
+
};
|
|
87
|
+
return (_jsx(_Fragment, { children: _jsx("div", { className: "relative w-full flex-1", children: _jsx("div", { className: "absolute inset-0 overflow-y-auto", children: pageModel ? (_jsx(SimpleLayoutItem, { components: pageModel.components })) : (_jsx("div", { children: "No layout generated yet" })) }) }) }));
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=Components.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Components.js","sourceRoot":"","sources":["../../src/steps/Components.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAa,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAM7E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAEjC,MAAM,UAAU,UAAU,CAAC,EACzB,SAAS,EACT,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,gBAAgB,GAOjB;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,IAAI,CAAC,SAAS;QAAE,OAAO,oDAAkC,CAAC;IAE1D,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,CAAC,EACxB,UAAU,EACV,KAAK,GAAG,CAAC,GAIV,EAAE,EAAE;QACH,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAE7B,oEAAoE;QACpE,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE;YACvC,uEAAuE;YACvE,MAAM,IAAI,GAAG,IAAI;iBACd,KAAK,CAAC,EAAE,CAAC;iBACT,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,MAAM,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC;YACvB,OAAO,OAAO,GAAG,aAAa,CAAC;QACjC,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,CAAC,OAAe,EAAE,EAAE;YAC1C,IAAI,CAAC,UAAU;gBAAE,OAAO;YACxB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,QAAQ,CAAC;QAC5E,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,CAAC,KAAkB,EAAE,EAAE;YACtC,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,cAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAC,MAAM,GAAG,CAAC;YAC7D,CAAC;YACD,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC,CAAC;QAEF,qCAAqC;QACrC,MAAM,eAAe,GAAG,CACtB,SAA8B,EAC9B,UAAiC,EACjC,EAAE;YACF,MAAM,MAAM,GAAG,KAAK,GAAG,EAAE,CAAC;YAC1B,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC;YAClD,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI;gBAChC,CAAC,CAAC,eAAe,CAAC,aAAa,CAAC;gBAChC,CAAC,CAAC,SAAS,CAAC;YAEd,OAAO,CACL,eAEE,SAAS,EAAC,UAAU,EACpB,KAAK,EAAE;oBACL,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,MAAM;iBACnB,aAED,cAAK,SAAS,EAAC,wBAAwB,YACrC,KAAC,gBAAgB,IACf,IAAI,EAAE,KAAC,CAAC,IAAC,IAAI,EAAE,EAAE,GAAI,EACrB,KAAK,EAAC,QAAQ,EACd,OAAO,EAAE,GAAG,EAAE;gCACZ,uCAAuC;gCACvC,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAChC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE,CAC7B,CAAC;gCACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;oCACjB,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gCAC9B,CAAC;gCACD,kBAAkB,CAAC,SAAS,CAAC,CAAC;4BAChC,CAAC,GACD,GACE,EACN,eACE,SAAS,EAAC,6CAA6C,EACvD,KAAK,EAAE;4BACL,WAAW;yBACZ,aAED,eAAK,SAAS,EAAC,MAAM,aACnB,eAAM,SAAS,EAAC,eAAe,YAAE,SAAS,CAAC,IAAI,GAAQ,OAAE,GAAG,EAC3D,SAAS,CAAC,IAAI,IACX,EACN,cAAK,SAAS,EAAC,uBAAuB,YACnC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACtC,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CACnD,eAEE,SAAS,EAAC,gBAAgB,EAC1B,OAAO,EAAE,KAAK,IAAI,EAAE;wCAClB,MAAM,YAAY,GAChB,MAAM,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC;4CACzC,EAAE,EAAE,KAAK,CAAC,KAAK;4CACf,QAAQ,EAAE,IAAI;4CACd,OAAO,EAAE,CAAC;yCACX,CAAC,CAAC;wCACL,MAAM,eAAe,GAAG,MAAM,WAAW,EAAE,WAAW,CAAC;4CACrD,cAAc,EAAE,YAAY,EAAE,MAAM,IAAI,EAAE;4CAC1C,IAAI,EAAE,QAAQ;yCACf,CAAC,CAAC;wCACH,IAAI,eAAe,EAAE,CAAC;4CACpB,MAAM,QAAQ,GACZ,MAAM,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC;gDACzC,EAAE,EAAE,eAAe;gDACnB,QAAQ,EAAE,IAAI;gDACd,OAAO,EAAE,CAAC;6CACX,CAAC,CAAC;4CACL,MAAM,QAAQ,GAAc;gDAC1B,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE;gDACtB,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE;gDAC1B,QAAQ,EAAE,QAAQ,EAAE,SAAS,IAAI,EAAE;gDACnC,UAAU,EAAE,QAAQ,EAAE,SAAS,IAAI,EAAE;6CACtC,CAAC;4CACF,KAAK,CAAC,KAAK,GAAG,eAAe,CAAC;4CAC9B,gBAAgB,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;gDAChC,GAAG,KAAK;gDACR,UAAU,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC;6CACpD,CAAC,CAAC,CAAC;4CACJ,aAAa,EAAE,CAAC;wCAClB,CAAC;oCACH,CAAC,aAED,eAAK,SAAS,EAAC,yBAAyB,aAAE,KAAK,CAAC,IAAI,SAAQ,EAC5D,wBAAM,QAAQ,CAAC,KAAK,CAAC,GAAO,KApCvB,KAAK,CAqCN,CACP,CAAC,CAAC,CAAC,CACF,KAAC,WAAW,IAEV,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,aAAa,IAFvB,KAAK,CAGV,CACH,CACF,GACG,IACF,EAGL,SAAS,CAAC,QAAQ,IAAI,CACrB,KAAC,gBAAgB,IACf,UAAU,EAAE,SAAS,CAAC,QAAQ,EAC9B,KAAK,EAAE,KAAK,GAAG,CAAC,GAChB,CACH,KA5FI,SAAS,CAAC,EAAE,CA6Fb,CACP,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1C,KAAC,KAAK,CAAC,QAAQ,cACZ,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,IADpB,SAAS,CAAC,EAAE,IAAI,KAAK,CAEzB,CAClB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,4BACE,cAAK,SAAS,EAAC,wBAAwB,YACrC,cAAK,SAAS,EAAC,kCAAkC,YAC9C,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,gBAAgB,IAAC,UAAU,EAAE,SAAS,CAAC,UAAU,GAAI,CACvD,CAAC,CAAC,CAAC,CACF,oDAAkC,CACnC,GACG,GACF,GACL,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import type { StepComponentProps } from "../types";
|
|
2
|
+
export declare function ContentStep({ wizard, step, parentItem, pageModel, setPageModel, data, setData, internalState, setInternalState, setStepCompleted, }: StepComponentProps): import("react/jsx-runtime").JSX.Element | "No parent item";
|