UNPKG

1.29 kBJavaScriptView Raw
1/*
2 * _generator.js
3 *
4 * browserify entry point to load generator into client
5 * served at /pub/_generator.js by serve-scripts.js
6 * depends on jquery
7 *
8 * copyright 2015, Jürgen Leschner - github.com/jldec - MIT license
9*/
10
11/* global $ */
12/* global pubRef */
13
14var debug = require('debug')('pub:generator');
15var initOpts = require('./init-opts');
16
17$.ajaxSetup( { cache: true } );
18
19// init client-side opts
20initOpts(function(err, opts) {
21
22 // start client-side pub-generator
23 var generator = window.generator = require('pub-generator')(opts);
24 opts.log.logger.noErrors = true;
25
26 // get browserified generator plugins - avoid caching across directories
27 $.getScript(pubRef.relPath + '/pub/_generator-plugins.js?_=' + encodeURIComponent(opts.basedir))
28 .fail(function(jqXHR) {
29 opts.log(new Error(jqXHR.responseText));
30 })
31 .done(function() {
32 debug('plugins loaded');
33
34 // load sources
35 generator.load(function(err) {
36 if (err) return opts.log(err);
37 debug('generator loaded');
38
39 // hook custom timers
40 generator.emit('init-timers', false);
41
42 // initialize editor-ui
43 if (window.onGeneratorLoaded) {
44 window.onGeneratorLoaded(generator);
45 debug('ui loaded');
46 }
47 });
48 });
49});