UNPKG

6.37 kBJavaScriptView Raw
1"use strict";
2/**
3 * gulpfile
4 */
5var __read = (this && this.__read) || function (o, n) {
6 var m = typeof Symbol === "function" && o[Symbol.iterator];
7 if (!m) return o;
8 var i = m.call(o), r, ar = [], e;
9 try {
10 while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
11 }
12 catch (error) { e = { error: error }; }
13 finally {
14 try {
15 if (r && !r.done && (m = i["return"])) m.call(i);
16 }
17 finally { if (e) throw e.error; }
18 }
19 return ar;
20};
21var __spread = (this && this.__spread) || function () {
22 for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
23 return ar;
24};
25Object.defineProperty(exports, "__esModule", { value: true });
26var RBrowserSync = require("browser-sync");
27var gulp = require("gulp");
28var internal_1 = require("./internal");
29// Create gulp tasks using the timpla config
30var browserSync = internal_1.browserSync(internal_1.TIMPLA_CONFIG);
31var clean = internal_1.clean(internal_1.TIMPLA_CONFIG);
32exports.clean = clean;
33var open = internal_1.open(internal_1.TIMPLA_CONFIG);
34var openAnalyzer = internal_1.openAnalyzer(internal_1.TIMPLA_CONFIG);
35exports.openAnalyzer = openAnalyzer;
36var javascripts = internal_1.webpackProduction(internal_1.TIMPLA_CONFIG);
37exports.javascripts = javascripts;
38var rev = internal_1.rev(internal_1.TIMPLA_CONFIG);
39exports.rev = rev;
40var sizeReport = internal_1.sizeReport(internal_1.TIMPLA_CONFIG);
41exports.sizeReport = sizeReport;
42var init = internal_1.init(internal_1.TIMPLA_CONFIG);
43exports.init = init;
44var initConfig = internal_1.initConfig(internal_1.TIMPLA_CONFIG);
45exports.initConfig = initConfig;
46// Grab alternative tasks
47var alternateHtmlTask = internal_1.TIMPLA_CONFIG.html && internal_1.TIMPLA_CONFIG.html.alternate;
48var alternateSvgTask = internal_1.TIMPLA_CONFIG.svg && internal_1.TIMPLA_CONFIG.svg.alternate;
49var alternateStylesheetsTask = internal_1.TIMPLA_CONFIG.stylesheets && internal_1.TIMPLA_CONFIG.stylesheets.alternate;
50var alternateImagesTask = internal_1.TIMPLA_CONFIG.images && internal_1.TIMPLA_CONFIG.images.alternate;
51var alternateFontsTask = internal_1.TIMPLA_CONFIG.fonts && internal_1.TIMPLA_CONFIG.fonts.alternate;
52var alternateStaticFilesTask = internal_1.TIMPLA_CONFIG.staticFiles && internal_1.TIMPLA_CONFIG.staticFiles.alternate;
53// Create alternateable tasks
54var timplaHelper = {
55 browserSync: RBrowserSync,
56 gulp: gulp,
57 projectDestPath: internal_1.projectDestPath,
58 projectSrcPath: internal_1.projectSrcPath,
59 timplaConfig: internal_1.TIMPLA_CONFIG,
60 timplaProcess: internal_1.TIMPLA_PROCESS,
61};
62var createExtraTasks = internal_1.TIMPLA_CONFIG.additionalTasks && internal_1.TIMPLA_CONFIG.additionalTasks.initialize;
63if (createExtraTasks) {
64 createExtraTasks(timplaHelper);
65}
66var fonts = alternateFontsTask ? alternateFontsTask(timplaHelper) : internal_1.fonts(internal_1.TIMPLA_CONFIG);
67exports.fonts = fonts;
68var images = alternateImagesTask ? alternateImagesTask(timplaHelper) : internal_1.images(internal_1.TIMPLA_CONFIG);
69exports.images = images;
70var staticFiles = alternateStaticFilesTask
71 ? alternateStaticFilesTask(timplaHelper)
72 : internal_1.staticFiles(internal_1.TIMPLA_CONFIG);
73exports.staticFiles = staticFiles;
74var html = alternateHtmlTask ? alternateHtmlTask(timplaHelper) : internal_1.html(internal_1.TIMPLA_CONFIG);
75exports.html = html;
76var svg = alternateSvgTask ? alternateSvgTask(timplaHelper) : internal_1.svg(internal_1.TIMPLA_CONFIG);
77exports.svg = svg;
78var stylesheets = alternateStylesheetsTask
79 ? alternateStylesheetsTask(timplaHelper)
80 : internal_1.stylesheets(internal_1.TIMPLA_CONFIG);
81exports.stylesheets = stylesheets;
82// Init development watch
83// We're passing the created functions to keep the gulp task references
84var watch = internal_1.watch(internal_1.TIMPLA_CONFIG, {
85 fonts: fonts,
86 html: html,
87 images: images,
88 staticFiles: staticFiles,
89 stylesheets: stylesheets,
90 svg: svg,
91});
92internal_1.checkAndLabel(browserSync, 'browserSync');
93internal_1.checkAndLabel(fonts, 'fonts');
94internal_1.checkAndLabel(clean, 'clean');
95internal_1.checkAndLabel(open, 'open');
96internal_1.checkAndLabel(javascripts, 'javascripts');
97internal_1.checkAndLabel(rev, 'rev');
98internal_1.checkAndLabel(sizeReport, 'sizeReport');
99internal_1.checkAndLabel(images, 'images');
100internal_1.checkAndLabel(staticFiles, 'staticFiles');
101internal_1.checkAndLabel(html, 'html');
102internal_1.checkAndLabel(svg, 'svg');
103internal_1.checkAndLabel(stylesheets, 'stylesheets');
104internal_1.checkAndLabel(watch, 'watch');
105// Common tasks are used by both prod and dev runs
106var commonTasks = [
107 internal_1.TIMPLA_CONFIG.fonts && fonts,
108 internal_1.TIMPLA_CONFIG.html && html,
109 internal_1.TIMPLA_CONFIG.images && images,
110 internal_1.TIMPLA_CONFIG.svg && svg,
111 internal_1.TIMPLA_CONFIG.stylesheets && stylesheets,
112 internal_1.TIMPLA_CONFIG.staticFiles && staticFiles,
113].filter(Boolean);
114var parallelCommon = commonTasks.length && gulp.parallel.apply(gulp, __spread(commonTasks));
115var currentEnv = internal_1.TIMPLA_PROCESS.isProduction ? 'production' : 'development';
116var _a = (internal_1.TIMPLA_CONFIG.additionalTasks && internal_1.TIMPLA_CONFIG.additionalTasks[currentEnv]) || {}, _b = _a.prebuild, prebuildT = _b === void 0 ? false : _b, _c = _a.postbuild, postbuildT = _c === void 0 ? false : _c;
117var prebuild = prebuildT && prebuildT(timplaHelper);
118var postbuild = postbuildT && postbuildT(timplaHelper);
119var isOpenEnabled = !internal_1.TIMPLA_PROCESS.isTimplaReloaded && internal_1.TIMPLA_CONFIG[currentEnv] && internal_1.TIMPLA_CONFIG[currentEnv].open;
120var isCleanEnabled = !!internal_1.TIMPLA_CONFIG.clean;
121var devSeries = [
122 prebuild,
123 isCleanEnabled && clean,
124 parallelCommon,
125 postbuild,
126 browserSync,
127 watch,
128 isOpenEnabled && open,
129].filter(Boolean);
130var prodSeries = [
131 prebuild,
132 isCleanEnabled && clean,
133 parallelCommon,
134 internal_1.TIMPLA_CONFIG.javascripts && javascripts,
135 internal_1.TIMPLA_CONFIG.production && internal_1.TIMPLA_CONFIG.production.rev && rev,
136 sizeReport,
137 postbuild,
138 isOpenEnabled && open,
139].filter(Boolean);
140var development = gulp.series.apply(gulp, __spread(devSeries));
141var build = gulp.series.apply(gulp, __spread(prodSeries));
142exports.build = build;
143exports.default = development;
144//# sourceMappingURL=index.js.map
\No newline at end of file