Ghost/ghost/admin/lib/asset-delivery/index.js
Kevin Ansfield 4636b4be0d Koenig - Initial Spirit styles integration
no issue
- copy Spirit styles over (eventually these will live in an addon)
- update `ember-cli-build` to output a separate CSS file for Spirit
- update `asset-delivery` addon to output Spirit CSS link
- add `{{kg-style}}` helper for Spirit class names
- update `{{koenig-card}}` and the `{{koenig-card-markdown/html}}` components to use Spirit class names and markup
- replace markdown icon with new version from Spirit
2018-02-20 15:05:19 +00:00

53 lines
1.7 KiB
JavaScript

/* eslint-disable */
'use strict';
module.exports = {
name: 'asset-delivery',
isDevelopingAddon() {
return true;
},
contentFor(type, config) {
let min = config.environment === 'production' ? '.min' : '';
if (type === 'minifiedInProductionCss') {
return `
<link rel="stylesheet" href="assets/vendor${min}.css">
<link rel="stylesheet" href="assets/ghost${min}.css" title="light">
<link rel="stylesheet" href="assets/spirit${min}.css">
`;
}
if (type === 'minifiedInProductionJs') {
return `
<script src="assets/vendor${min}.js"></script>
<script src="assets/ghost${min}.js"></script>
`;
}
},
postBuild: function (results) {
var fs = this.project.require('fs-extra'),
walkSync = this.project.require('walk-sync'),
assetsIn = results.directory + '/assets',
templateOutDir = '../server/web/admin/views',
assetsOut = '../built/assets',
assets = walkSync(assetsIn);
fs.ensureDirSync(assetsOut);
if (fs.existsSync(results.directory + '/index.min.html')) {
fs.copySync(results.directory + '/index.min.html', `${templateOutDir}/default-prod.html`, {overwrite: true});
} else {
fs.copySync(results.directory + '/index.html', `${templateOutDir}/default.html`, {overwrite: true});
}
assets.forEach(function (relativePath) {
if (relativePath.slice(-1) === '/') { return; }
fs.copySync(assetsIn + '/' + relativePath, assetsOut + '/' + relativePath, {overwrite: true});
});
}
};