grind-assets
Version:
Asset management for Grind
28 lines (25 loc) • 2.9 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.watch = watch;
const path = require('path');
function watch(app) {
const base = app.paths.base();
const assets = path.join(base, app.config.get('assets.paths.source'));
app.assets.watcher = require('chokidar').watch(assets);
app.assets.watcher.on('ready', () => {
app.assets.watcher.on('all', (type, asset) => {
try {
asset = path.relative(base, asset);
app.assets.websocket.sendAll({
type: 'change',
asset
});
} catch (err) {
Log.error('Error notifying clients', err);
}
});
});
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9EZXZ0b29scy9TZXJ2ZXIvd2F0Y2guanMiXSwibmFtZXMiOlsicGF0aCIsInJlcXVpcmUiLCJ3YXRjaCIsImFwcCIsImJhc2UiLCJwYXRocyIsImFzc2V0cyIsImpvaW4iLCJjb25maWciLCJnZXQiLCJ3YXRjaGVyIiwib24iLCJ0eXBlIiwiYXNzZXQiLCJyZWxhdGl2ZSIsIndlYnNvY2tldCIsInNlbmRBbGwiLCJlcnIiLCJMb2ciLCJlcnJvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLE1BQU1BLElBQUksR0FBR0MsT0FBTyxDQUFDLE1BQUQsQ0FBcEI7O0FBRU8sU0FBU0MsS0FBVCxDQUFlQyxHQUFmLEVBQW9CO0FBQzFCLFFBQU1DLElBQUksR0FBR0QsR0FBRyxDQUFDRSxLQUFKLENBQVVELElBQVYsRUFBYjtBQUNBLFFBQU1FLE1BQU0sR0FBR04sSUFBSSxDQUFDTyxJQUFMLENBQVVILElBQVYsRUFBZ0JELEdBQUcsQ0FBQ0ssTUFBSixDQUFXQyxHQUFYLENBQWUscUJBQWYsQ0FBaEIsQ0FBZjtBQUNBTixFQUFBQSxHQUFHLENBQUNHLE1BQUosQ0FBV0ksT0FBWCxHQUFxQlQsT0FBTyxDQUFDLFVBQUQsQ0FBUCxDQUFvQkMsS0FBcEIsQ0FBMEJJLE1BQTFCLENBQXJCO0FBRUFILEVBQUFBLEdBQUcsQ0FBQ0csTUFBSixDQUFXSSxPQUFYLENBQW1CQyxFQUFuQixDQUFzQixPQUF0QixFQUErQixNQUFNO0FBQ3BDUixJQUFBQSxHQUFHLENBQUNHLE1BQUosQ0FBV0ksT0FBWCxDQUFtQkMsRUFBbkIsQ0FBc0IsS0FBdEIsRUFBNkIsQ0FBQ0MsSUFBRCxFQUFPQyxLQUFQLEtBQWlCO0FBQzdDLFVBQUk7QUFDSEEsUUFBQUEsS0FBSyxHQUFHYixJQUFJLENBQUNjLFFBQUwsQ0FBY1YsSUFBZCxFQUFvQlMsS0FBcEIsQ0FBUjtBQUNBVixRQUFBQSxHQUFHLENBQUNHLE1BQUosQ0FBV1MsU0FBWCxDQUFxQkMsT0FBckIsQ0FBNkI7QUFBRUosVUFBQUEsSUFBSSxFQUFFLFFBQVI7QUFBa0JDLFVBQUFBO0FBQWxCLFNBQTdCO0FBQ0EsT0FIRCxDQUdFLE9BQU9JLEdBQVAsRUFBWTtBQUNiQyxRQUFBQSxHQUFHLENBQUNDLEtBQUosQ0FBVSx5QkFBVixFQUFxQ0YsR0FBckM7QUFDQTtBQUNELEtBUEQ7QUFRQSxHQVREO0FBVUEiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBwYXRoID0gcmVxdWlyZSgncGF0aCcpXG5cbmV4cG9ydCBmdW5jdGlvbiB3YXRjaChhcHApIHtcblx0Y29uc3QgYmFzZSA9IGFwcC5wYXRocy5iYXNlKClcblx0Y29uc3QgYXNzZXRzID0gcGF0aC5qb2luKGJhc2UsIGFwcC5jb25maWcuZ2V0KCdhc3NldHMucGF0aHMuc291cmNlJykpXG5cdGFwcC5hc3NldHMud2F0Y2hlciA9IHJlcXVpcmUoJ2Nob2tpZGFyJykud2F0Y2goYXNzZXRzKVxuXG5cdGFwcC5hc3NldHMud2F0Y2hlci5vbigncmVhZHknLCAoKSA9PiB7XG5cdFx0YXBwLmFzc2V0cy53YXRjaGVyLm9uKCdhbGwnLCAodHlwZSwgYXNzZXQpID0+IHtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdGFzc2V0ID0gcGF0aC5yZWxhdGl2ZShiYXNlLCBhc3NldClcblx0XHRcdFx0YXBwLmFzc2V0cy53ZWJzb2NrZXQuc2VuZEFsbCh7IHR5cGU6ICdjaGFuZ2UnLCBhc3NldCB9KVxuXHRcdFx0fSBjYXRjaCAoZXJyKSB7XG5cdFx0XHRcdExvZy5lcnJvcignRXJyb3Igbm90aWZ5aW5nIGNsaWVudHMnLCBlcnIpXG5cdFx0XHR9XG5cdFx0fSlcblx0fSlcbn1cbiJdfQ==