gulp-ng-recipes
Version:
A collection of gulp recipies.
220 lines (201 loc) • 4.51 kB
YAML
# ===================================================================
# BUILD-TIME CONFIG PROPERTIES
#
# This is multi-env properties file. Keep sensitive data in external
# file that SysOps can source at runtime.
# ===================================================================
# ----------------------------------------
# CORE PROPERTIES
# ----------------------------------------
# build
build:
src: src
extras:
- "src/.htaccess"
- "src/favicon.ico"
- "src/robots.txt"
- "src/**/*.json"
- "src/**/*.html"
- "!src/index.html"
- ".tmp/**/*.css"
temp: .tmp
dest: dist
# server
browserSync:
options:
logPrefix: "SPA"
browser: "google chrome"
notify: true
logLevel: debug
server:
baseDir:
- ".tmp"
- "src"
- "."
index: "index.html"
routes:
"/source": "/src/app"
# http-proxy-middleware
proxy:
context: "/v1"
options:
target: "http://localhost:8050"
ws: false
proxyTable:
"dev.localhost:3000" : "http://localhost:8050"
"localhost:3000/api" : "http://localhost:8003"
# css
sass:
src:
- "src/**/*.scss"
dest: .tmp
autoprefixer:
- "ie >= 10"
- "ie_mob >= 10"
- "ff >= 30"
- "chrome >= 34"
- "safari >= 7"
- "opera >= 23"
- "ios >= 7"
- "android >= 4.4"
- "bb >= 10"
options:
precision: 10
outputStyle: "nested"
errLogToConsole: true
# sourcemaps
sourcemaps:
dest: .maps
options:
sourceRoot: "src"
includeContent: true
# scripts
scripts:
src: "src/app/**/*.ts"
dest: .tmp
# images
images:
src: "src/assets/images/**/*"
dest: dist/assets/images
options:
optimizationLevel: 3
progressive: true
interlaced: true
# fonts
fonts:
src:
- "src/assets/fonts/**/*.{eot,svg,ttf,woff,woff2}"
- "jspm_packages/**/*.{woff,woff2}"
dest: "dist/assets/fonts"
options:
includeParents: 0
# html
html:
src: "src/index.html"
dest: dist
options:
usePrefix: false
patterns:
- match: "jspm_packages/system.js"
replacement: "build.js"
- match: "<!-- PROD"
replacement: ""
- match: "END -->"
replacement: ""
# sw-precache
swPrecache:
dest: .tmp
options:
cacheId: "spa-starter-kit"
# dynamicUrlToDependencies:
# "dynamic/page1":
# - "src/app/views/layout.jade"
# - "src/app/views/page1.jade"
# "dynamic/page2":
# - "src/app/views/layout.jade"
# - "src/app/views/page2.jade"
handleFetch: false
staticFileGlobs:
- "src/assets/fonts/**/*.woff"
- "src/assets/images/**/*"
- "src/**/*.css"
- "src/app/**/*.js"
- "src/**/*.{html,json}"
stripPrefix: "src/"
verbose: true
# Require JS Bundler
buildProfile:
mainConfigFile: jspm.config.js
appDir: .tmp
baseUrl: "."
removeCombined: true
findNestedDependencies: true
dir: dist
optimizeCss: none
optimize: none
modules:
- name: vendor
exclude:
- angular
- name: bootstrap
include:
- requirejs
exclude:
- vendor
- name: common/index
- name: drug/index
- name: experiments/index
- name: grails/index
- name: home/index
- name: iprovider/index
- name: provider/index
# deploy
deploy:
src: "dist/**/*"
# ----------------------------------------
# TESTING PROPERTIES
# ----------------------------------------
# karma unit testing
karmaCommonConf:
frameworks:
- jasmine
- requirejs
- traceur
files:
- test/test-main.js
- pattern: "src/app/**/*.js"
included: false
- pattern: "test/unit/**/*.js"
included: false
exclude:
- app/bootstrap.js
proxies:
/base/di/: /base/bower_components/di/dist/amd/
/base/assert.js: /base/bower_components/assert/dist/amd/assert.js
/base/diary.js: /base/bower_components/diary/dist/amd/diary.js
/base/harmony-reflect.js: /base/bower_components/harmony-reflect/reflect.js
reporters:
- progress
preprocessors:
"src/app/**/*.js":
- traceur
"test/unit/**/*.js":
- traceur
browsers:
- Chrome
traceurPreprocessor:
options:
modules: amd
atscript: true
types: true
typeAssertions: true
typeAssertionModule: assert
annotations: true
memberVariables: true
asyncFunctions: true
asyncGenerators: true
forOn: true
arrayComprehension: true
generatorComprehension: true
experimental: true