3.0.5 • Published 4 years ago

gulp-posthtml v3.0.5

Weekly downloads
748
License
MIT
Repository
github
Last release
4 years ago

npm node deps tests coverage code style chat

npm i -D gulp-posthtml
import { task, src, dest } from 'gulp'

import posthtml from 'gulp-posthtml'

task('html', () => {
  return src('src/*.html')
    .pipe(posthtml())
    .pipe(dest('dest'))
})

Plugins

NameTypeDefaultDescription
plugins{Array}[]PostHTML Plugins

Options

NameTypeDefaultDescription
options{Object}{}PostHTML Options

gulpfile.js

import { task, src, dest } from 'gulp'

import tap from 'gulp-tap'
import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'

task('html', () => {
  let path

  const plugins = [ require('posthtml-include')({ root: path }) ]
  const options = { parser: require('posthtml-sugarml')() }

  return src('src/*.html')
    .pipe(tap((file) => path = file.path))
    .pipe(posthtml(plugins, options))
    .pipe(rename({ ext: '.html' }))
    .pipe(dest('dest'))
})

Config

NameTypeDefaultDescription
plugins{Array}[]PostHTML Plugins
options{Object}{}PostHTML Options

gulpfile.js

import { task, src, dest } from 'gulp'

import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'


task('ssml', () => {
  const config = (file) => ({
    plugins: [ require('posthtml-include')({ root: file.dirname }) ],
    options: { parser: require('posthtml-sugarml')() }
  })

  return src('src/*.sml')
    .pipe(posthtml(config))
    .pipe(rename({ ext: '.html' }))
    .pipe(dest('dest'))
})

posthtml.config.js

Context

NameTypeDefaultDescription
env{String}'development'process.env.NODE_ENV
file{Object}dirname, basename, extnameFile
options{Object}{}Options (Parser, Render, Plugin Options)

posthtml.config.js

module.exports = ({ file, options, env }) => ({
  parser: 'posthtml-sugarml'
  plugins: {
    'posthtml-include': { root: file.dirname },
    'posthtm-expressions': { locals: options.locals }
    'htmlnano': env === 'production' ? {} : false
  }
})

gulpfile.js

import { task, src, dest } from 'gulp'

import rename from 'gulp-rename'
import posthtml from 'gulp-posthtml'


task('ssml', () => {
  const ctx = { locals: { a: 'Hello World!'} }

  return src('src/*.sml')
    .pipe(posthtml(ctx))
    .pipe(rename({ ext: '.html' }))
    .pipe(dest('dest'))
})