mirror of
https://github.com/mgerb/mywebsite
synced 2026-01-12 18:52:50 +00:00
updated bunch of file paths and changed the way posts are loaded
This commit is contained in:
63
node_modules/swig/lib/loaders/memory.js
generated
vendored
Normal file
63
node_modules/swig/lib/loaders/memory.js
generated
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
var path = require('path'),
|
||||
utils = require('../utils');
|
||||
|
||||
/**
|
||||
* Loads templates from a provided object mapping.
|
||||
* @alias swig.loaders.memory
|
||||
* @example
|
||||
* var templates = {
|
||||
* "layout": "{% block content %}{% endblock %}",
|
||||
* "home.html": "{% extends 'layout.html' %}{% block content %}...{% endblock %}"
|
||||
* };
|
||||
* swig.setDefaults({ loader: swig.loaders.memory(templates) });
|
||||
*
|
||||
* @param {object} mapping Hash object with template paths as keys and template sources as values.
|
||||
* @param {string} [basepath] Path to the templates as string. Assigning this value allows you to use semi-absolute paths to templates instead of relative paths.
|
||||
*/
|
||||
module.exports = function (mapping, basepath) {
|
||||
var ret = {};
|
||||
|
||||
basepath = (basepath) ? path.normalize(basepath) : null;
|
||||
|
||||
/**
|
||||
* Resolves <var>to</var> to an absolute path or unique identifier. This is used for building correct, normalized, and absolute paths to a given template.
|
||||
* @alias resolve
|
||||
* @param {string} to Non-absolute identifier or pathname to a file.
|
||||
* @param {string} [from] If given, should attempt to find the <var>to</var> path in relation to this given, known path.
|
||||
* @return {string}
|
||||
*/
|
||||
ret.resolve = function (to, from) {
|
||||
if (basepath) {
|
||||
from = basepath;
|
||||
} else {
|
||||
from = (from) ? path.dirname(from) : '/';
|
||||
}
|
||||
return path.resolve(from, to);
|
||||
};
|
||||
|
||||
/**
|
||||
* Loads a single template. Given a unique <var>identifier</var> found by the <var>resolve</var> method this should return the given template.
|
||||
* @alias load
|
||||
* @param {string} identifier Unique identifier of a template (possibly an absolute path).
|
||||
* @param {function} [cb] Asynchronous callback function. If not provided, this method should run synchronously.
|
||||
* @return {string} Template source string.
|
||||
*/
|
||||
ret.load = function (pathname, cb) {
|
||||
var src, paths;
|
||||
|
||||
paths = [pathname, pathname.replace(/^(\/|\\)/, '')];
|
||||
|
||||
src = mapping[paths[0]] || mapping[paths[1]];
|
||||
if (!src) {
|
||||
utils.throwError('Unable to find template "' + pathname + '".');
|
||||
}
|
||||
|
||||
if (cb) {
|
||||
cb(null, src);
|
||||
return;
|
||||
}
|
||||
return src;
|
||||
};
|
||||
|
||||
return ret;
|
||||
};
|
||||
Reference in New Issue
Block a user