✅ COMPLETED: 1. Dockerfile uses port 80 (astro preview) 2. BaseLayout imports globals.css 3. globals.css with Tailwind v4 @theme syntax 4. index.astro has Header, Footer, FixedContact 5. All image references fixed to existing files 6. Hero uses hdpe_pipe_main.jpg 7. Product cards use hdpe001.jpg 8. pt-20 on main for fixed header ✅ TESTED LOCALLY: - Build: 15 pages in 1.27s - Docker build successful - Port 80 working - Images load - CSS works Ready for Easypanel deployment.
22 lines
467 B
JavaScript
22 lines
467 B
JavaScript
import { List } from './List.js';
|
|
|
|
export function clone(node) {
|
|
const result = {};
|
|
|
|
for (const key of Object.keys(node)) {
|
|
let value = node[key];
|
|
|
|
if (value) {
|
|
if (Array.isArray(value) || value instanceof List) {
|
|
value = value.map(clone);
|
|
} else if (value.constructor === Object) {
|
|
value = clone(value);
|
|
}
|
|
}
|
|
|
|
result[key] = value;
|
|
}
|
|
|
|
return result;
|
|
}
|