mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-30 14:22:07 +03:00
fd20f90cca
- The original intention of the proxy was to collect up all the requires in our helpers into one place - This has since been expanded and used in more places, in more ways - In hindsight there are now multiple different types of requires in the proxy: - One: true frontend rendering framework requires (stuff from deep inside theme-engine) - Two: data manipulation/sdk stuff, belongs to the frontend, ways to process API data - Three: actual core stuff from Ghost, that we wish wasn't here / needs to be passed in a controlled way - This commit pulls out One into a new rendering service, so at least that stuff is managed independently - This draws the lines clearly between what's internal to the frontend and what isn't - It also highlights that the theme-engine needs to be divided up / refactored so that we don't have these deep requires
25 lines
820 B
JavaScript
25 lines
820 B
JavaScript
/**
|
|
* This is a loose concept of a frontend rendering framework
|
|
* Note: everything here gets deep-required from the theme-engine
|
|
* This indicates that the theme engine is a set of services, rather than a single service
|
|
* and could do with a refactor.
|
|
*
|
|
* This at least keeps the deep requires in a single place.
|
|
*/
|
|
|
|
const hbs = require('./theme-engine/engine');
|
|
|
|
module.exports = {
|
|
hbs: hbs,
|
|
SafeString: hbs.SafeString,
|
|
escapeExpression: hbs.escapeExpression,
|
|
// The local template thing, should this be merged with the channels one?
|
|
templates: require('./theme-engine/handlebars/template'),
|
|
|
|
// Theme i18n is separate to common i18n
|
|
themeI18n: require('./theme-engine/i18n'),
|
|
|
|
// TODO: these need a more sensible home
|
|
localUtils: require('./theme-engine/handlebars/utils')
|
|
};
|