Sha256: e75ffc71b7e0664e5b36acc4c3e2f555422200b06c9380e13f0e967ac1a32ac4

Contents?: true

Size: 1.93 KB

Versions: 76

Compression:

Stored size: 1.93 KB

Contents

# ------------------------------------------------------------------------------
# ~/_plugins/uglify.rb
# Liquid filter for J1 Template to uglify JS
#
# Product/Info:
# http://jekyll.one
#
# Copyright (C) 2021 Juergen Adams
#
# J1 Template is licensed under the MIT License.
# See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
# ------------------------------------------------------------------------------
# => Uglifier.compile(File.read(input))
# ------------------------------------------------------------------------------
#  NOTE:
#  CustomFilters cannot be used in SAFE mode (e.g not usable for
#  rendering pages with Jekyll on GitHub
#
#  USAGE:
#    {% capture cache_name %}
#
#      liquid code to generate HTML output goes here
#
#    {% endcapture %}
#    {{ cache_name | uglify }}
# ------------------------------------------------------------------------------
# noinspection SpellCheckingInspection
# rubocop:disable Lint/UnneededDisable
# rubocop:disable Style/Documentation
# rubocop:disable Metrics/LineLength
# rubocop:disable Layout/TrailingWhitespace
# rubocop:disable Layout/SpaceAroundOperators
# rubocop:disable Layout/ExtraSpacing
# rubocop:disable Metrics/AbcSize
# ------------------------------------------------------------------------------
# NOTE: To be checked if the gem uglifier can be replaced by the
# JS module "Terser" already used for package 200_template_js
# ------------------------------------------------------------------------------
require 'uglifier'

module Jekyll
  module MinifyJS
    def minifyJS(input)
      # see: https://github.com/mishoo/UglifyJS/issues/495
      # quote_style 3 -- always use the original quotes
      minified = Uglifier.compile(input,
                    harmony: true,
                    :output => {
                        :quote_style => 3
                    }
                 )
      input = minified
    end
  end
end

Liquid::Template.register_filter(Jekyll::MinifyJS)

Version data entries

76 entries across 76 versions & 1 rubygems

Version Path
j1-template-2022.0.18 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.17 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.16 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.15 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.14 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.13 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.12 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.11 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.10 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.9 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.8 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.7 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.6 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.5 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.4 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.3 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.2 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.1 lib/starter_web/_plugins/minifyJS.rb
j1-template-2022.0.0 lib/starter_web/_plugins/minifyJS.rb
j1-template-2021.3.2 lib/starter_web/_plugins/minifyJS.rb