✅ 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.
39 lines
1018 B
JavaScript
39 lines
1018 B
JavaScript
/**
|
|
* @import {Parents, Text} from 'hast'
|
|
* @import {Raw} from 'mdast-util-to-hast'
|
|
* @import {State} from '../index.js'
|
|
*/
|
|
|
|
import {stringifyEntities} from 'stringify-entities'
|
|
|
|
// Declare array as variable so it can be cached by `stringifyEntities`
|
|
const textEntitySubset = ['<', '&']
|
|
|
|
/**
|
|
* Serialize a text node.
|
|
*
|
|
* @param {Raw | Text} node
|
|
* Node to handle.
|
|
* @param {number | undefined} _
|
|
* Index of `node` in `parent.
|
|
* @param {Parents | undefined} parent
|
|
* Parent of `node`.
|
|
* @param {State} state
|
|
* Info passed around about the current state.
|
|
* @returns {string}
|
|
* Serialized node.
|
|
*/
|
|
export function text(node, _, parent, state) {
|
|
// Check if content of `node` should be escaped.
|
|
return parent &&
|
|
parent.type === 'element' &&
|
|
(parent.tagName === 'script' || parent.tagName === 'style')
|
|
? node.value
|
|
: stringifyEntities(
|
|
node.value,
|
|
Object.assign({}, state.settings.characterReferences, {
|
|
subset: textEntitySubset
|
|
})
|
|
)
|
|
}
|